Shaping topography using polylines and a surface

I have polylines representing roads, walks and walls - all at 0 z value. I created a topography, including various z values, by converting countour lines and using the patch command.

I want to project the polylines to the surface, so that I can adjust the topography. When I project the polylines, such as a road, to the topography surface and then edit the z values of the road using control points, the road decouples from the surface. I want the z value of the road and surface to move together.

For example, if the road is on a cross slope I want to raise the downhill side of the road poly - and bring the surface along with it - to flatten that section of road across the slope.

Is there a way to project the polys to the surface and lock the two together to simultaneously reshape both using control points?

Do you have a better approach?

Thanks and I really appreciate any help.


Have you tried projecting your curves with History toggled on?

No. How do I toggle history and what does that do?

I projected the polyline to the surface with history on. When I use pointson to change the z value of the polyline the surface does not move with the points. So, history is not doing what I need.

It looks like history would be helpful if I wanted to change the elevations of contour lines and have the surface adapt to the new contour line elevations.

History works by having the child update when the parent is changed.
When you project a curve on a surface with history, the original curve is the parent and the projected curve (lying on the surface) is the children.
If you want to have the surface updating by changing the curve, you have to use the curve to create the surface. Maybe with Patch?

The topography is a child of the points derived from contour lines. Yes, I could use history to change the contour lines to build the road bed and then project the road to the road bed. In that case, Rhino is not helping me to visualize the road and topography in real time.

I was hoping to shape the road visually in real time by adjusting the z values of both road and topography together.

Unfortunately, relational “history” in Rhino is not bidirectional… --Mitch

I think you can get what you want if you extrude the road curves so that they intersect the surface and then use the Intersect command with history.
You can then hide the extrusions (or put them on a layer that is off) and then when you edit the surface the projected curves will update.
You could also make the extrusion with history and then you can edit either the curves or surface and have the curves projected onto the surface update.

1 Like

True, excellent idea, I forgot that was possible! --Mitch