<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Looking to convert all single valence node crossings into roundabouts in ArcGIS CityEngine Questions</title>
    <link>https://community.esri.com/t5/arcgis-cityengine-questions/looking-to-convert-all-single-valence-node/m-p/710206#M9333</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm not sure what the best way to go about this would be. I'm thinking it should be a simple conditional rule that converts the shape's type to roundabout if its corresponding node has a valence of one, but I just started getting into CityEngine a few days ago and am still grappling with CGA. Is there a way to control shapes based on their underlying graph properties?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for any help in advance!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 30 Jan 2018 18:21:33 GMT</pubDate>
    <dc:creator>NateSkeen</dc:creator>
    <dc:date>2018-01-30T18:21:33Z</dc:date>
    <item>
      <title>Looking to convert all single valence node crossings into roundabouts</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/looking-to-convert-all-single-valence-node/m-p/710206#M9333</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm not sure what the best way to go about this would be. I'm thinking it should be a simple conditional rule that converts the shape's type to roundabout if its corresponding node has a valence of one, but I just started getting into CityEngine a few days ago and am still grappling with CGA. Is there a way to control shapes based on their underlying graph properties?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for any help in advance!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 30 Jan 2018 18:21:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/looking-to-convert-all-single-valence-node/m-p/710206#M9333</guid>
      <dc:creator>NateSkeen</dc:creator>
      <dc:date>2018-01-30T18:21:33Z</dc:date>
    </item>
    <item>
      <title>Re: Looking to convert all single valence node crossings into roundabouts</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/looking-to-convert-all-single-valence-node/m-p/710207#M9334</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Nate,&lt;/P&gt;&lt;P&gt;Thank you for this question.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;The CGA street rules work on CityEngine dynamic shapes and their attributes.&lt;/P&gt;&lt;P&gt;By changing the underlying graph properties, the shapes are automatically regenerated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is a Python script to accomplish this task:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="string token"&gt;'''
Created on Apr 23, 2018

@author: ESRI R&amp;amp;D Center Zurich 
'''&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; scripting &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# get a CityEngine instance&lt;/SPAN&gt;
ce &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; CE&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;def&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;findDeadEnds&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;nodes&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; deadEnds &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; node &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; nodes&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; ce&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;getAttribute&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;node&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'valency'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1.0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; deadEnds&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;append&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;node&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; deadEnds&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 

&lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; __name__ &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'__main__'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# get selected nodes&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; nodes &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ce&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;getObjectsFrom&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ce&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;selection&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; ce&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isGraphNode&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# get all dead end nodes&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; deadEnds &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; findDeadEnds&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;nodes&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;# set all dead ends to 'Roundabout'&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ce&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;setAttribute&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;deadEnds&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'/ce/crossing/type'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'Roundabout'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ce&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;setAttributeSource&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;deadEnds&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'/ce/crossing/type'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'USER'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;pass&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 06:26:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/looking-to-convert-all-single-valence-node/m-p/710207#M9334</guid>
      <dc:creator>ThomasFuchs</dc:creator>
      <dc:date>2021-12-12T06:26:44Z</dc:date>
    </item>
  </channel>
</rss>

