When i create City with CityEngine for Aachen City, how can i apply STYLE of Aachen?
Has anyone Tips or Tutorial please?
Thanks alot.
The easiest way (and maybe not the cleanest way or best way) is to copy the Building_From_OpenStreetMap.cga rule from ESRI.lib into your own project and rename it (right click -> Rename). Then, you can add your own style for Aachen at the bottom.
For example, you can customize the following attributes (but you don't have to, and you can delete the line from the style to use the default setting). This will set the values for buildings that do not have OSM data. For example, if a building does not have OSM data for number of levels or building height, then the attribute value for estimatedLevels is used instead. Note: In the code below, the attributes are set to fake values. You'll have to insert your own appropriate values for your city. You can use expressions like rint(rand(2,10)) to randomly pick the number of levels to be in the range [2,10].
style Aachen attr estimatedLevels = 10 attr estimatedRoofForm = "flat" // options: "flat", "shed", "gable", "half-hip", "hip", "pyramid", "gambrel", "mansard", "dome", "onion", "round", "saltbox" attr estimatedNonFlatRoofForm = "gable" attr estimatedFloorHeight = 3 attr estimatedNonFlatRoofHeight = 3 attr estimatedBuildingForm = "extrusion" // options: "extrusion", "setback top", "setback facade", "setback base", "setback everywhere" attr estimatedBuildingColor = "#cccc66" attr estimatedRoofColor = "#9999aa" attr estimatedRepresentation = "solid color" // options: "realistic with facade textures", "schematic facades", "solid color" <SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
Another way to create your own city's style is to create your own rule which imports the Building_From_OpenStreetMap.cga rule. Both options are not ideal. The difficult part about this is that you have to copy the hidden attributes from the Building_From_OpenStreetMap.cga rule to your new rule (so that object attributes will link correctly). Then, you can add however many styles you want to the end of your new rule. Then, you choose your style from the Inspector for your new rule (not for the OSM rule). For example, here's what the new rule could look like.
import OSM:"/ESRI.lib/rules/Buildings/Building_From_OpenStreetMap.cga" // ------------------------------ // Hidden Attributes // ------------------------------ @Group("From Object Attributes", 2) // from object attributes @Hidden attr height = -1 @Hidden attr building__levels = -1 @Hidden attr roof__height = -1 @Hidden attr roof__shape = "" @Hidden attr building__colour = "" @Hidden attr roof__colour = "" @Group("Estimated Attributes (can be set by styles)", 3) // Note: These attributes can be overriden by styles. // estimated attributes based on default values or overriden by styles @Hidden attr estimatedLevels = OSM.defaultLevels @Hidden attr estimatedRoofForm = OSM.defaultRoofForm // when no obj attr roof__height @Hidden attr estimatedNonFlatRoofForm = OSM.defaultNonFlatRoofForm // when obj attr roof__height>0 @Hidden attr estimatedFloorHeight = OSM.defaultFloorHeight @Hidden attr estimatedNonFlatRoofHeight = OSM.defaultNonFlatRoofHeight @Hidden attr estimatedBuildingForm = OSM.defaultBuildingForm @Hidden attr estimatedBuildingColor = OSM.defaultBuildingColor @Hidden attr estimatedRoofColor = OSM.defaultRoofColor @Hidden attr estimatedRepresentation = OSM.defaultRepresentation // ------------------------------ // Start Rule // ------------------------------ Lot --> OSM.Generate // ------------------------------ // Styles // ------------------------------ style Aachen attr estimatedLevels = 10 attr estimatedRoofForm = "flat" attr estimatedNonFlatRoofForm = "gable" attr estimatedFloorHeight = 3 attr estimatedNonFlatRoofHeight = 3 attr estimatedBuildingForm = "extrusion" attr estimatedBuildingColor = "#cccc66" attr estimatedRoofColor = "#9999aa" attr estimatedRepresentation = "solid color" <SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
Signed in members can post, follow updates, and more. New here? Register a free account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.