Adding topographic/terrain data to building/site model

Hi, I was able to follow the examples to make buildings and roads for my site model. Is it possible to model the river and the bridges above it as well?

Moreover, I was wondering how I would be able to place the buildings, roads, railways, etc. on the correct terrain like in this example.


Also, my roads often end up with everything but the road being 3D modeled/extruded. Why does that happen? Did I mess up somewhere? How can I fix it?

Here is the script for reference.
create_3dbuildings_trees_streets.gh (217.4 KB)

Hi @clonosis ,

If you would like to position the buildings, roads and trees on a terrain, check this reply.

I am not expert on Ohio geography, but if you would like to position them in Columbus, Ohio, that wouldn’t make much difference, as Columbus itself lies on Till plains.

Gismo does not 3D model bridges, but you can have the 3D road spanning the river, to be a somewhat of a bridge.

As for the 3D roads picture you attached: Some road segment are causing the geometry to fail to create a proper 3D roads. And those roads are parking lot access roads. If you remove them, everything works fine.
Check the attached file: I removed the those parking lot access roads, and now the 3D roads components works fine:
create_3dbuildings_trees_streets_OH_Columbus.gh (242.9 KB)

How can I generate the terrain and the river with Gismo and input it to the ‘groundTerrain_’?

Thank you for removing the parking lot access roads.

@clonosis
I do not think you can find such terrain data, which shows the difference between river and ground level for Columbus. At least I am not familiar with such data.
As Columbus is flat, I wouldn’t even use the terrain. I would apply the same thing that was done for Paris here:
https://storage.ning.com/topology/rest/1.0/file/get/2829809554?profile=original
Create manually the river polysurface from polylines in the OSM 2D shap component, and then move that river polysurface down a bit, so that it is below the ground level. Something like this: