Question

Hi all, I have an elevation GEOTIFF file with 0.5m resolution and a roads shapefile. I want to get my roads in 3D with the heights in the GEOTIFF and in the same 0.5m resolution


Badge +1

I am trying to visualize all speed bumps and elevation changes such that there is a height difference every 0.5m in the 3d model.

What I have tried: Clip the raster using the clipper, followed by RasterStatisticsCalculator (tried maximum, mean, median) followed by Attribute manager to rename 'band0.max' to 'Height' followed by Feature Merger to join the shapefile to the GEOTIFF. Then followed by Extruder transformer using the 'Height' attribute. 

 

I don't get the 3D roads in 0.5m resolution but rather long stretches of road surfaces. How can I change my workflow to get the elevated roads from the GEOTIFF in 0.5m resolution? 

 

Thanks!


6 replies

Userlevel 3
Badge +16

You'll need to use a Densifier to add a new vertex to the road lines at every 0.5 metres (possibly even something like 0.35m because of how angles work). Chopper into individual vertices, PointOnRasterValueExtractor, so each vertex gets an attribute of its elevation. 3DForcer to set it to that, then LineBuilder to rebuild the new road lines.

The Chopper will cause this to be slow (because it's a lot of vertices), maybe someone knows a way to do it with lines.

Badge +1

You'll need to use a Densifier to add a new vertex to the road lines at every 0.5 metres (possibly even something like 0.35m because of how angles work). Chopper into individual vertices, PointOnRasterValueExtractor, so each vertex gets an attribute of its elevation. 3DForcer to set it to that, then LineBuilder to rebuild the new road lines.

The Chopper will cause this to be slow (because it's a lot of vertices), maybe someone knows a way to do it with lines.

Thanks @ctredinnick​ ​ , my roads shapefile are polygon features. I tried it and the translation log gives an error that only geometries with point supported. I'm hoping to get all my roads in a 3D surface of 0.5m resolution.

Badge +3

pc clipp and consume4 Here elevation is added to the centerline of the roads.

 

Something like tis?

I think this i posted it here somewhere..2016 (if i remember correctly)

Badge +20

You should try SurfaceDraper with Drape Method set to MODEL.

GeoTIFF goes into Points/Lines port, Roads shapefile goes into DrapeFeatures port.

Good luck!

Userlevel 3
Badge +13

Hello, I grabbed some data online to mimic the scenario. I had luck using the TINGenerator (tolerance set 0.5). Followed by a Bufferer, to buffer to the road width. Then FME's New 2022.0 Clipper transformer can be used to clip the TIN with the road area to isolate just the road surfaces.

 

Note: if you notice your roads are overlapping after the bufferer, use a dissolver (theres an option to 'Group By' too).

Badge +7

This speed bump location problem recently landed on our campus... I was able to discern a speed bump in a known location from lidar data. However, identifying a process to find speed bumps in the lidar data campus wide has eluded me.

Current workflow looks like this...

  1. Clip Lidar point cloud ground classification to public ROW
  2. Drape street centerlines over ROW lidar points
  3. Intersect street centerlines with sidewalk crossing locations
  4. Buffer intersecting locations by appropriate amount to include likely speed bump locations
  5. Create profiles of street centerlines within buffer of sidewalk crossing locations…
  6. Compare profiles of buffered areas to isolate speed bump signatures...
  7. ?

Any thoughts on next steps or improved methods are appreciated...

 

Reply