<?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: How to texture the roof of a rotated house with a north-aligned image? in ArcGIS CityEngine Questions</title>
    <link>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473600#M6421</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Forgot to mention: I wanted to avoid offsets/image sampling if possible because they don't work in ArcGIS Pro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The above method works in CE, I just had to shuffle the sizing and offset down to the roof part.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also the&amp;nbsp;reason why I'm using cut out images&amp;nbsp;instead of a&amp;nbsp;single aerial image is&amp;nbsp;because Multipatch export exports the whole image per roof, creating gigantic datasets.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 01 May 2018 15:56:34 GMT</pubDate>
    <dc:creator>LR</dc:creator>
    <dc:date>2018-05-01T15:56:34Z</dc:date>
    <item>
      <title>How to texture the roof of a rotated house with a north-aligned image?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473598#M6419</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have square textures cut from an aerial image that I need to apply to various roofs. For the cutout shape I used the bounding boxes of the footprints, so I have the roof image and whatever's around. I aligned the scope to world and use sx and sz as sizes, so theoretically the roof texture should line up nicely with the roof and the rest of the image would not be visible. Unfortunately the image's skewed no matter how I rotate it. Any way to get this to work?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/403106_pastedImage_1.png" style="width: 620px; height: 388px;" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Apr 2018 12:34:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473598#M6419</guid>
      <dc:creator>LR</dc:creator>
      <dc:date>2018-04-26T12:34:26Z</dc:date>
    </item>
    <item>
      <title>Re: How to texture the roof of a rotated house with a north-aligned image?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473599#M6420</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;A href="https://community.esri.com/migrated-users/73807" target="_blank"&gt;L R&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;Thank you for your question. &lt;/P&gt;&lt;P&gt;You need to setup the projection along the world axis. The section &lt;STRONG&gt;Global Texture Projection&lt;/STRONG&gt; in the help for the CGA &lt;A class="link-titled" href="http://desktop.arcgis.com/en/cityengine/latest/cga/cga-setup-projection.htm" title="http://desktop.arcgis.com/en/cityengine/latest/cga/cga-setup-projection.htm" rel="nofollow noopener noreferrer" target="_blank"&gt;setupProjection operation—Esri CityEngine | ArcGIS Desktop&lt;/A&gt; gives a practical example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;attr buildingheight&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;20&lt;/SPAN&gt;
&amp;nbsp; 
&lt;SPAN class="keyword token"&gt;const&lt;/SPAN&gt; textureWidth &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;586&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;const&lt;/SPAN&gt; textureHeight &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;442&lt;/SPAN&gt;&amp;nbsp; 
&amp;nbsp; 
offsetx &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;convert&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;x&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; scope&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; world&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; pos&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator 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; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;convert&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;x&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; scope&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; world&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; pos&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;%&lt;/SPAN&gt; textureWidth&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

offsetz &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;convert&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;z&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; scope&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; world&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; pos&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator 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; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;convert&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;z&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; scope&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; world&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; pos&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;%&lt;/SPAN&gt; textureHeight&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; 
Lot&lt;SPAN class="operator token"&gt;--&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;set&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;trim&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;vertical&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; false&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;extrude&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;buildingheight&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;comp&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;f&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;top &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&amp;nbsp; Roof &lt;SPAN class="operator token"&gt;|&lt;/SPAN&gt; side &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; Facade&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
 
Roof&lt;SPAN class="operator token"&gt;--&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;setupProjection&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; world&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;xz&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; textureWidth&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; textureHeight&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;offsetx&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; offsetz&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;projectUV&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;scaleUV&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1&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&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="token function"&gt;set&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;material&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;colormap&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"test_0102_ortho.jpg"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&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;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 20:56:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473599#M6420</guid>
      <dc:creator>ThomasFuchs</dc:creator>
      <dc:date>2021-12-11T20:56:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to texture the roof of a rotated house with a north-aligned image?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473600#M6421</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Forgot to mention: I wanted to avoid offsets/image sampling if possible because they don't work in ArcGIS Pro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The above method works in CE, I just had to shuffle the sizing and offset down to the roof part.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also the&amp;nbsp;reason why I'm using cut out images&amp;nbsp;instead of a&amp;nbsp;single aerial image is&amp;nbsp;because Multipatch export exports the whole image per roof, creating gigantic datasets.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 May 2018 15:56:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473600#M6421</guid>
      <dc:creator>LR</dc:creator>
      <dc:date>2018-05-01T15:56:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to texture the roof of a rotated house with a north-aligned image?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473601#M6422</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;From CityEngine 2017.1 on, the multipatch exporter is preventing this overhead:&lt;BR /&gt;&lt;A class="link-titled" href="http://desktop.arcgis.com/en/cityengine/latest/get-started/cityengine-release-notes.htm" title="http://desktop.arcgis.com/en/cityengine/latest/get-started/cityengine-release-notes.htm"&gt;CityEngine 2017.1 release notes—Esri CityEngine | ArcGIS Desktop&lt;/A&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;The File GeoDatabase (FileGDB) exporter has been improved by cropping textures to the actually used regions. This reduces file size and loading time in many cases.&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 May 2018 09:38:01 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473601#M6422</guid>
      <dc:creator>ThomasFuchs</dc:creator>
      <dc:date>2018-05-03T09:38:01Z</dc:date>
    </item>
    <item>
      <title>Re: How to texture the roof of a rotated house with a north-aligned image?</title>
      <link>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473602#M6423</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It looks like the pre-cropped images method blurs the texture less than the global one.&amp;nbsp;See images below..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;a 4000x4000 terrain, with a 4000x4000 texture. Because the cell size is 0.5, this equals a X/Z size of 2000 in the scene&lt;/LI&gt;&lt;LI&gt;a circle textured with the global method. Texture scale and offset equal the terrain's values in the scene (w/h=2000)&lt;/LI&gt;&lt;LI&gt;same circle, textured by clipping the texture to its bounding box first and then applying the clipped image by using the building's scope and x/z position&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG class="image-2 jive-image" src="https://community.esri.com/legacyfs/online/406120_pastedImage_2.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good to know the aerials get cropped now. Many roofs end up pretty funky looking when opened in ArcScene 10.5, though.&amp;nbsp;However, they do look as expected in Pro. FME also displays them correctly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;IMG class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/406119_pastedImage_1.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 May 2018 15:38:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-cityengine-questions/how-to-texture-the-roof-of-a-rotated-house-with-a/m-p/473602#M6423</guid>
      <dc:creator>LR</dc:creator>
      <dc:date>2018-05-09T15:38:49Z</dc:date>
    </item>
  </channel>
</rss>

