# How would you extract the top edge of a cliff model?

Hi everyone,

This is more a geometrical modelling question rather than a technical question with the software. I hope its alright to post it here.

Haven said that, this is the issue: suppose I have a topographical model of a cliff, which varies in z, I have contours, the surface, the solid (patch surface capped at the bottom). I cant find a method to extract the “top edge” (red in picture) of the cliff. Anyone that can give me a hand thinking this through?

cliff contours.3dm (4.7 MB)

Thank you very much.

Any ideas? The problem basically is that if I use contour lines, these do not connect across the z axis, so a manual connection needs to be done, which does not produce the best of results:

And if I work with the surface or mesh it seems like a step backwards in the direction that I want. Because extracting the “edge” seems a very abstract concept when talking of a surface like this.

Defining what is the “edge” is tricky. Is it a change in slope? Perhaps some vertical sections might help with this problem.

Indeed, its tricky. Yes there is a change in slope in the edge, thats why the contours dont really help that much do they?

I was thinking something like finding the closest point between each successive contour line, splittiing the curves on those points and then divide the curve to create points. So I could interpolate the division points + the closets points to create and edge… in theory.

if you have the complete surface, does it help using _Silhouette from the top view?

You might need to get scripting.

Start with the mesh rather than the contours. (Unless that mesh is built from the contours, try to find a more detailed terrain mesh model)
Create vertical “contours”
Move along the domain of each vertical contour and measuring change in slope, mark all positions above a threshold value.
Cull the false positives (points that seem out of place and aren’t really useful, ledges for example)
Connect the dots

What is the ultimate purpose?