Skip to main content

Hello,

I have a vector in 3D ( building edges), vector is stored as a line.

I would like to create polygons around every line (10 cm buffer for every line).

Polygons should get the same height as the line.

I don't want to create a cylinder, I just want a 2D buffer on a proper height.

Thank you

Kate

Hi @kbachmatiuk,

Please use an ElevationExtractor on the lines before buffering to store the original elevation, then use a 3DForcer on the buffer polygons to force them to the original height.


@daveatsafe thank you for your help. I tried it but it doesn't work as I would like to. ElevationExtractor saves only one height value from the line. My lines represent the edge of the bottom of the roof, and every vertex has its height. If I use 3D forcer I can only assign one elevation per buffer. I need to find a tool which can create a 2D buffer along the 3D line it means 2D polygon with various height.


Have a look at the 3DPolylineExpander from the holiday hackathon https://knowledge.safe.com/questions/103955/holiday-hackathon-2019.html

 


Hi @kbachmatiuk,

Please use an ElevationExtractor on the lines before buffering to store the original elevation, then use a 3DForcer on the buffer polygons to force them to the original height.

I apologize for the intrusion, but I'd like to point out that this works if the features (lines) are horizontal (which in the building case is probably true). In the case of a continuous 3D line (e.g. a road) this would require Snipper/Chopper, which brings further issues. What would the suggested procedure be if the vertex of the 3D line are at different heights? Is there a simple way to transform such a line into a 3D polygon of a given width?

I am just curious because until now I have had a workaround with SurfaceDraper, but it is not the cleanest, hence I keep my eyes open for possible improvements...

Thank you in advance,

Natan


Hi @kbachmatiuk,

That is a bit more complicated, but I think I have a solution for you. Please try the attached workspace.

Buffer_2.5d.fmw

 


Reply