<?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: Paris example: How can I get the front facade on all sides and back of a building? in ArcGIS CityEngine Questions</title>
    <link>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497200#M6749</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Excellent, I will try this. Thank you!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 13 Jun 2017 06:55:36 GMT</pubDate>
    <dc:creator>RebeccaM</dc:creator>
    <dc:date>2017-06-13T06:55:36Z</dc:date>
    <item>
      <title>Paris example: How can I get the front facade on all sides and back of a building?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497198#M6747</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am using the Paris example for an experiment. My blocks have offset subdivision, so there are inner yards (cour interieure) sometimes. The original paris.cga rule creates generic back facades and special facades if sides of buidlings touch each other ("shared wall"):&lt;/P&gt;&lt;P&gt;&lt;IMG __jive_id="356202" class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/356202_pastedImage_1.jpg" style="width: 360px; height: 209px;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need the building's &lt;STRONG&gt;side and back&lt;/STRONG&gt; to be exactly the &lt;STRONG&gt;same as the front&lt;/STRONG&gt; (green circle in nextscreenshot). I am aware that it's not "natural" if the side of a building has "entrance doors" and shops, but it's for the sake of the experiment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the code, I think this is done with the getGenMurAveugleTexture function.&lt;/P&gt;&lt;P&gt;Original code looks like this:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;################&lt;BR /&gt;# Back Facades&lt;BR /&gt;################&lt;P&gt;&lt;/P&gt;BlindFacade --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;30%:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(x){ 'rand(0.2,0.7) : BlindFacadeTextured | ~1: YardFacade }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;5%:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(x){ 'rand(0.1,0.4) : BlindFacadeTextured | ~1: YardFacade | 'rand(0.1,0.4) : BlindFacadeTextured }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;5%:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(x){ 'rand(0.1,0.4) : YardFacade | ~1: BlindFacadeTextured | 'rand(0.1,0.4) : YardFacade }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;YardFacade&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BlindFacadeTextured --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;alignScopeToAxes(y)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;setupProjection(0,scope.xy,16,scope.sy,16)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;projectUV(0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;texture(getGenMurAveugleTexture)&lt;P&gt;&lt;/P&gt;BlindFacadeGF --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;alignScopeToAxes(y)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;setupProjection(0,scope.xy,16,Groundfloor_Height*6,16)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;projectUV(0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;texture("genMurAveugle1.png")&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;BlindFacade.&lt;P&gt;&lt;/P&gt;&lt;BR /&gt;YardFacade --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;FacadeSets(0)&lt;P&gt;&lt;/P&gt;&lt;BR /&gt;floorindex(textureOffset) = &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case textureOffset == 1 : split.index + textureOffset&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else : textureOffset&lt;P&gt;&lt;/P&gt;&lt;BR /&gt;Floor(textureOffset) --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case !LOD_HIGH : Floor. # lores floor &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case comp.sel == "back": Floor. # lores floor on the back &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case textureOffset == 0: GroundFloor. # no hires for groundfloors&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else : &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(y){~Floor_Height : FloorDetails(floorindex(textureOffset))}* # split repeated mid floors again for High LOD&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I changed the getGenMurAveugleTexture to gettexture, like this:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;################&lt;BR /&gt;# Back Facades&lt;BR /&gt;################&lt;BR /&gt;// these are the facades that are on the back side of buildings (inner yards..)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BlindFacade --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;30%:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(x){ 'rand(0.2,0.7) : BlindFacadeTextured | ~1: YardFacade }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;5%:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(x){ 'rand(0.1,0.4) : BlindFacadeTextured | ~1: YardFacade | 'rand(0.1,0.4) : BlindFacadeTextured }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;5%:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(x){ 'rand(0.1,0.4) : YardFacade | ~1: BlindFacadeTextured | 'rand(0.1,0.4) : YardFacade }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;YardFacade&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BlindFacadeTextured --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;alignScopeToAxes(y)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;setupProjection(0,scope.xy,16,scope.sy,16)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;projectUV(0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//texture(getGenMurAveugleTexture)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;texture(&lt;STRONG&gt;gettexture&lt;/STRONG&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BlindFacadeGF --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;alignScopeToAxes(y)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;setupProjection(0,scope.xy,16,Groundfloor_Height*6,16)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;projectUV(0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//texture("genMurAveugle1.png")&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;texture(&lt;STRONG&gt;gettexture&lt;/STRONG&gt;)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;BlindFacade.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;YardFacade --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;FacadeSets(0)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;floorindex(textureOffset) = &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case textureOffset == 1 : split.index + textureOffset&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else : textureOffset&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Floor(textureOffset) --&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case !LOD_HIGH : Floor. # lores floor &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case comp.sel == "back": Floor. # lores floor on the back &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;case textureOffset == 0: GroundFloor. # no hires for groundfloors&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else : &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;split(y){~Floor_Height : FloorDetails(floorindex(textureOffset))}* # split repeated mid floors again for High LOD&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, that has not resulted in what I need yet:&lt;/P&gt;&lt;P&gt;The ground floor is repeated (red circles), so there are doors on the second floor of side parts and back parts. How can I get the same structure / texture on all sides of my building? What am I missing? I did not find the&lt;/P&gt;&lt;P&gt;comp (f){front: ...&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;|back : ...&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;|side : ...&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/P&gt;&lt;P&gt;part anywhere.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG __jive_id="356204" alt="" class="image-2 jive-image" src="https://community.esri.com/legacyfs/online/356204_sameonall.JPG" style="width: 487px; height: 365px;" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Jun 2017 13:45:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497198#M6747</guid>
      <dc:creator>RebeccaM</dc:creator>
      <dc:date>2017-06-08T13:45:16Z</dc:date>
    </item>
    <item>
      <title>Re: Paris example: How can I get the front facade on all sides and back of a building?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497199#M6748</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Tip: &amp;nbsp;Use the Model Hierarchy (Window -&amp;gt; Show Model Hierarchy) to help you figure out what's going on in the rules. &amp;nbsp;You can double click on shapes in the shape tree in the model hierarchy to jump to the corresponding rule in the rule file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First, the mass is split into a ground floor mass and an upper floor mass. &amp;nbsp;Then, the comp happens on each of these masses to get the facades. &amp;nbsp;This is in the rules GroundfloorMass and UpperfloorsMass, and the component splits are on lines 195-196 and 203-204. &amp;nbsp;On line 195, change BlindFacadeGF to FacadeGF so that what happens to the back faces is the same as what happens to the other side faces. &amp;nbsp;Similarly, on line 203, change BlindFacade to MainFacade("upper") so that the back faces match the side faces.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With the model hierarchy open, click on the back face to see how it was generated, and follow the shapes up the tree until you get to a rule that you understand and back down the tree. &amp;nbsp;Try to figure out why the back face is different from the front face. &amp;nbsp;How is the texturing set up?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The Floor rule (line 268) has a case statement which uses comp.sel=="back", so this causes back faces to be treated differently than other faces. &amp;nbsp;Comment this line out (270).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the FacadeSets rule (line 226)&amp;nbsp;the texture file is set on line 227 using gettexture. &amp;nbsp;In the definition of gettexture, there's another case statement that tests&amp;nbsp;if comp.sel=="back". &amp;nbsp;Comment this out (line 130).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Jun 2017 16:14:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497199#M6748</guid>
      <dc:creator>CherylLau</dc:creator>
      <dc:date>2017-06-08T16:14:10Z</dc:date>
    </item>
    <item>
      <title>Re: Paris example: How can I get the front facade on all sides and back of a building?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497200#M6749</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Excellent, I will try this. Thank you!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Jun 2017 06:55:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/paris-example-how-can-i-get-the-front-facade-on/m-p/497200#M6749</guid>
      <dc:creator>RebeccaM</dc:creator>
      <dc:date>2017-06-13T06:55:36Z</dc:date>
    </item>
  </channel>
</rss>

