<?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 Re: Select - Select Objects By Map Layer in Python? in ArcGIS CityEngine Questions</title>
    <link>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213327#M2822</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks, yes, that was helpful information!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I ended up using a somewhat different implementation but you helped get me going&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;on the right track:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;def SelectAllBlocksInObstacleMap():&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' turn off blocks if vertices are in obstacle map defined areas '''&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Obstacle = ce.getObjectsFrom(ce.scene, ce.isLayer, ce.withName("'Obstacle'"))[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; allBlocks = ce.getObjectsFrom(ce.scene, ce.isBlock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for o in allBlocks:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; verts = ce.getVertices(o)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if verts:&lt;/SPAN&gt;&lt;BR /&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; x = verts[0]&lt;/SPAN&gt;&lt;BR /&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; z = verts[2]&lt;/SPAN&gt;&lt;BR /&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; sampleSpot = ce.sampleBooleanLayerAttribute(Obstacle, "obstacle", x, z)&lt;/SPAN&gt;&lt;BR /&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; &lt;/SPAN&gt;&lt;BR /&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; if sampleSpot:&lt;/SPAN&gt;&lt;BR /&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ce.setAttribute(o, '/ce/block/shapeCreation', False) &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;as you can see, what I was missing was knowing to use the sampleBooleanLayerAttribute command,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;so once I figured that out, I was able to proceed- although your implementation seems a bit cleaner, so I might&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;give that a try as well. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 04 Jan 2013 19:25:30 GMT</pubDate>
    <dc:creator>RobHoward</dc:creator>
    <dc:date>2013-01-04T19:25:30Z</dc:date>
    <item>
      <title>Select - Select Objects By Map Layer in Python?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213324#M2819</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'd like to automate the following process in the GUI:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Select -&amp;gt; Select Objects By Map Layer -&amp;gt; Obstacle:obstacle &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In my scene I have lots that are being generated over a river, despite the obstacle map being correctly applied (because certain roads that are going across the river, in the imported OSM data I'm using, cause CE to think that these are valid spots for lot creation). It's pretty easy in the GUI to select these lots and then set their shapeCreation attribute to off, but I'm trying to automate this process. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Seems like there should be a "setSelectionByMapLayer()" command &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any advice?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 02 Jan 2013 16:32:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213324#M2819</guid>
      <dc:creator>RobHoward</dc:creator>
      <dc:date>2013-01-02T16:32:18Z</dc:date>
    </item>
    <item>
      <title>Re: Select - Select Objects By Map Layer in Python?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213325#M2820</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi !&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You could try the following :&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;0] make an empty list for the stuff to select later on&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1] Get all shapes in the layer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2] loop over all shapes&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3] for each shape :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;4] get the attribute value you have set up to select the shape via the GUI ( the boolean )&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;5] if attr == True : selectionList.append(shape)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;6] after loop : select your list content.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Makes sense ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Let me know ..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Matt&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Jan 2013 11:07:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213325#M2820</guid>
      <dc:creator>MatthiasBuehler1</dc:creator>
      <dc:date>2013-01-03T11:07:53Z</dc:date>
    </item>
    <item>
      <title>Re: Select - Select Objects By Map Layer in Python?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213326#M2821</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Here's a similar script to check out ..&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Jan 2013 11:10:22 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213326#M2821</guid>
      <dc:creator>MatthiasBuehler1</dc:creator>
      <dc:date>2013-01-03T11:10:22Z</dc:date>
    </item>
    <item>
      <title>Re: Select - Select Objects By Map Layer in Python?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213327#M2822</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks, yes, that was helpful information!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I ended up using a somewhat different implementation but you helped get me going&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;on the right track:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;def SelectAllBlocksInObstacleMap():&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' turn off blocks if vertices are in obstacle map defined areas '''&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Obstacle = ce.getObjectsFrom(ce.scene, ce.isLayer, ce.withName("'Obstacle'"))[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; allBlocks = ce.getObjectsFrom(ce.scene, ce.isBlock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for o in allBlocks:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; verts = ce.getVertices(o)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if verts:&lt;/SPAN&gt;&lt;BR /&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; x = verts[0]&lt;/SPAN&gt;&lt;BR /&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; z = verts[2]&lt;/SPAN&gt;&lt;BR /&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; sampleSpot = ce.sampleBooleanLayerAttribute(Obstacle, "obstacle", x, z)&lt;/SPAN&gt;&lt;BR /&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; &lt;/SPAN&gt;&lt;BR /&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; if sampleSpot:&lt;/SPAN&gt;&lt;BR /&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ce.setAttribute(o, '/ce/block/shapeCreation', False) &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;as you can see, what I was missing was knowing to use the sampleBooleanLayerAttribute command,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;so once I figured that out, I was able to proceed- although your implementation seems a bit cleaner, so I might&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;give that a try as well. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Jan 2013 19:25:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213327#M2822</guid>
      <dc:creator>RobHoward</dc:creator>
      <dc:date>2013-01-04T19:25:30Z</dc:date>
    </item>
    <item>
      <title>Re: Select - Select Objects By Map Layer in Python?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213328#M2823</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Glad you found a way.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There's usually multiple ways to do things .. &lt;span class="lia-unicode-emoji" title=":face_with_open_mouth:"&gt;😮&lt;/span&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Jan 2013 00:15:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/select-select-objects-by-map-layer-in-python/m-p/213328#M2823</guid>
      <dc:creator>MatthiasBuehler1</dc:creator>
      <dc:date>2013-01-08T00:15:33Z</dc:date>
    </item>
  </channel>
</rss>

