|
POST
|
I see! So for the same building you want to change the texture by face. So the reason why most foot print rules don't immediately do this is because they are likely to not know how they are oriented (what is the first edge? how long is it? etc). For example, some of the buildings in scene have multiple small edges that each have to be textured separately. It might be possible to use the comp operation to create different texture choices by face orientation, but to get results that are oriented by the street you will need to check the first edge settings and how you work within them. Others might have more advice. Do you need to have complete matching detail for your scene?
... View more
11-19-2015
07:25 PM
|
1
|
2
|
2435
|
|
POST
|
This is actually really interesting, I have never done this before. Can you share what the raw JSON looks like?
... View more
11-19-2015
04:40 PM
|
0
|
0
|
931
|
|
POST
|
Hey Valerio, The textures on the walls look different from one another. Can you clarify which textures you are choosing and replacing? Are you trying to match textures to specific buildings? There are other foot print rules to try for sure, but what is the goal I guess? David
... View more
11-19-2015
03:51 PM
|
0
|
4
|
2435
|
|
POST
|
Hey Majdi, I actually have not gotten back to this post in a while (had other projects come up). I actually did manage to do this or something like this to resize the box but encountered the problem of it not wrapping. Does this particular change to the CSS all make it wrap inside the text box of the pop up? David
... View more
11-19-2015
07:29 AM
|
0
|
9
|
2606
|
|
DOC
|
That is the workflow I envision too! These tool's applications can be very general!
... View more
11-17-2015
08:18 AM
|
1
|
0
|
5041
|
|
DOC
|
Summary: This document discusses a series of scripting tools that were created to enable data-driven design to support large-scale scenario planning projects. These tools are intended to integrate GIS and CityEngine to enable the creation of large amounts of 3D content to support urban planning/geodesign projects. The content created can be used to create images as part of cut sheets (to be used with data-driven pages), or linked to web content in web maps (by providing content for pop-ups or web scenes to link to). The focus of the workflow proposed here is streets, but the scripts also support projects related to buildings/lots/zoning visualization. Still building page, more edits to come. Intent: The intent of these scripting tools is to enable data-driven design on a massive scale by leveraging GIS and CityEngine in conjunction. There are great examples of how GIS data can be leveraged to create great 3D content to support transit oriented development, scenario planning efforts, or even an aviation facility's operations. However, preparing this data often involves gathering and processing aerial imagery, high-resolution terrain data, georeferenced footprints/planimetric buildings, and so on to create a complete urban model. My point is that building context for a 3D urban model takes time: so much time that it is hard to justify in a project-oriented setting without a long-term interest in a certain area. However, the idea behind these tools is to make context be provided by associating content to an individual entity either being displayed within a web map or as part of cut sheets associated with the entity. So the context is provided by your application, and the selected records (streets/lots/buildings) are enabled to show pop ups or hyperlinks that go to their associated content. In some contexts, this leads to massive time savings, and enables a larger scale to work with. The reasons why this might be preferable include 1) web maps allow you to efficiently share large sets of data by compartmentalizing 3D content to only be shared when it is inspected in the web map (similar in concept to tiling GIS data) and 2) there is not as much time dedicated to preparing and gathering information that supports sharing 3D urban scenes thus enabling more time to focus on analysis or the story your application is trying to tell. Generally, the main idea is using CityEngine for what it is really good at: creating content, unimaginable quantities of content. As an example, ~200 images of street cross sections are provided within the "BatchExportImages.zip" that demonstrate how these tools and concepts can be leveraged. The cross sections were essentially made randomly, but it was completely database driven, I never touched the attributes of these street segments once. Imagine developing street design/policy proposals for entire counties, each demonstrated with its own 3D model to communicate key concepts. Tool Breakdown: The 6 python scripts within the CityEngine Tool Kit are broken down by software to be used with: ArcGIS PrepareCEStreetAssociations.py: This tool is designed to create a standard geometry to be imported by CityEngine and then used to drive rules as part of a geodesign methodology to create data driven street models. PrepareCELotAssociations.py: This tool is similar to the previous one (it creates standard geometry for CityEngine to import), except it is used with polygons instead of lines. This tool is designed to take in polygon lot files that will be simplified into squares of a desired area, or area set by a field. PrepareCEBlockAssociations.py: Similar PrepareCEStreetAssocations, but creates several lines in a templated featureclass rather than one line. This tool enables the exploration of transportation and land use scenarios simultaneously at very large scales. PopulateStreetParameters.py: This tool takes a feature class and adds street parameters and core complete street rule attributes to enable a feature class to drive CityEngine street rules. SplitFeaturebyAttribute.py: This script is designed to take a field and use its unique values to explode a feature class into multiple feature classes within a selected workspace. (Useful for applications outside of this one, inspired by the USGS script here). CityEngine CEBatchWebSceneExport.py: Batch export of web scenes of individual CityEngine Layers to create consumable content. Example at this link. CEBatchLayerImageExport.py: Batch export of snapshots of individual CityEngine Layers to create consumable content. All of the cross section examples from this script are in the "BatchExportImages.zip" attached. CESelectLayerByAttribute.py: Select layers in CE Scene based on an attribute within the data. For batch layer editing and control. For more information about the tools read the help documents within the "Help" directory. Limitations: Cross sectional data for street centerline files is very rare, and generally the databases to support this do not really exist. However, it is expected that as time progresses, more and more transportation asset information will be digitized. Creating this many models in batch using procedural methods will likely require some amount of QAQC, and how much would depend on the complexity of the task. These tools are still in development, and some of the bugs encountered were dealt with in ways that were not elegant (but they worked). Suggestions and thoughts are appreciated. CityEngine Side: Once you map a streetWidth parameter to a street rule, to change the street width or sidewalk width you will need to change both the shape parameter AND the object attribute. Contact me for clarification on this point. Others that I will happily mention as they are pointed out to me. Applications: Create 3D models of proposed zoning/design scenarios by parcels or footprints and batch create web scenes or images of the individual lots that are linked to a web map or used as part of cut sheets of a location. Create 3D models of 3D Cross Sections of streets as part of a multimodal street plan. Ideally, down the line these tools can be used in conjunction with custom goal-based methodologies to optimize street design for entire regions. Enable the batch export and sharing of large amounts of content created in CityEngine with the designs dictated by the structure of arbitrary CGA rules and database set up. PrepareCEStreetAssociations PrepareCEBlockAssociations Other Pages: CityEngine 3D Python GIS Complete Street Rule Update Complete Street Rule Documentation & User Guide.pdf Esri Complete Street Rule Discussion-Feedback? GitHub Repository- d-wasserman/CityEngineToolKit-GeodesignToolkit Pursuing Projects: If you are interested about pursuing projects that is related to this work or provide feedback feel free to email D.Wasserman@fehrandpeers.com.
... View more
11-08-2015
06:35 PM
|
4
|
5
|
11151
|
|
POST
|
Thanks Chris. Will let you know how it goes later tonight. Hopefully now I will have 200 cross sections webscenes, and 200 snap shots XD.
... View more
11-06-2015
11:14 AM
|
0
|
0
|
2009
|
|
POST
|
I have run into the same problem. I have been able to get the layer list into a web scene (see image below), but I am having the same problem. I am continuing to research it, but I bet it hinges on filtering out each layer with a new 3DView or some other class. How they interact is still some I am playing with. We will figure this out.
... View more
11-06-2015
08:24 AM
|
0
|
0
|
2009
|
|
POST
|
Along with the methods suggested by Chris, I have found color flagging to be surprisingly very helpful for debugging and getting relative location. I usually define rules named red, white and blue is most rules I write to determine where I am spatially in each model. Essentially it help to define rules that create visual representations of potential problems, but all the conventional debugging methods Chris mentioned are also critical (inspect model is the easiest way to determine shape scope/alignment etc). #Debugging Rules #White--> #envelope(world.up, .1016, .05, 50, .05, 50,.05,60) #alignScopeToAxes(y) #t(0,1,0) #color(1,1,1) #Red--> # alignScopeToAxes(y) # t(0,1,0) # color(1,0,0) #Blue--> #alignScopeToAxes(y) #t(0,1,0) #color(0,0,1)
... View more
11-02-2015
12:51 PM
|
0
|
0
|
901
|
|
DOC
|
I can take a look, but I think when I scoped it out the first time it was much harder than I thought. I have been really focused on GIS integration as of late.
... View more
11-01-2015
11:45 AM
|
0
|
0
|
42894
|
|
DOC
|
Hey Valerio, There are a lot of parameters for the rule at the moment, and adding this feature would add at least 2-6 depending on the complexity desired. The rule already suffers from parameter overload. I might create a separate version of the rule that supports this in the same folder, but there is a long list of other things I need to work on before I get to it. =/ I also do a lot of the things with this rule set in my own time, so it is hard to balance actual work-life and projects I update and pursue at home. I will let you know if I add this to the rules folder. David
... View more
11-01-2015
11:30 AM
|
0
|
0
|
42894
|
|
DOC
|
It was actually a lot of fun, and much easier to implement than I thought it would be. 😃 No problem. Let me know if you find anything weird.
... View more
11-01-2015
11:25 AM
|
0
|
0
|
42894
|
|
POST
|
This recently happened to me as well. This thread was a help. Thank you.
... View more
10-22-2015
05:33 PM
|
0
|
0
|
4804
|
|
POST
|
Hey Tess, File search might be a python function, and in retrospect seems a little silly to recommend. I really just wanted to make sure CE knew where your asset was relative to the project folder. It might be the object, and as far as the textures not coming with the object, remember that obj files are simple containers of coordinates that relate to MTL files. If you have textures make sure the MTL files are in the same relative location as when they were exported. David
... View more
10-21-2015
04:25 PM
|
0
|
0
|
1649
|
|
POST
|
Tess, If you are having trouble, it might be worth playing around with some of asset search functions to get an idea of what the directory you are sourcing from is looking like. See file search here: http://cehelp.esri.com/help/index.jsp?topic=/com.procedural.cityengine.help/html/cgareference/func_fileSearch.html
... View more
10-20-2015
03:47 PM
|
0
|
3
|
1649
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 06-07-2024 02:16 PM | |
| 1 | 05-15-2022 12:21 PM | |
| 1 | 08-27-2016 11:03 AM | |
| 1 | 12-19-2021 01:10 PM | |
| 1 | 06-12-2020 03:29 PM |