From Contour lines to 3D terrain - Patch

Hello friends.
This is my first post, and in need of some help. I hope I am posting in the right section and not asking for too much. Here it goes:

Basically me and my friend are trying to create a solid 3D model of a terrain so we can cut it in foam on a CNC machine (Ouplan 2015). For a University project.
I use Autocad and he uses Rhino, he’s not a pro thou.

I prepared all the contour lines in Autocad, in a simple file (<1mb), and my friend imported it on Rhino so he could use the patch tool, by selecting the points of the curves and creating a surface. But here are the problems:

I need a solid terrain, not a surface floating in the air. And also the resolution of the terrain to be high, I mean the terrain be true to the contour line and not super smooth like it’s being generated by my friend, His PC doesn’t handle a Surface UV Span of 100 and Stiffness over 150.

Also, at the end, we needed to subtract from the supposed solid terrain, the roads. We followed a tutorial but it ended a disaster because there micro gaps were created, not making it “water-tight”. I don’t think we followed the right tutorial but I can’t find another one. We want to pull down the roads into the terrain about 0,40m.

So the three problems is getting it Solid, making it true to the curves, and creating decent roads.

Can somebody help us out here please?
I hope I’m not asking for too much, but I’m not finding another solution, it’s been 4 days of trial. If your PC handles it, please do me this favour.
Attached is the dwg file to turn (Layers to Patch A-CURVES 1, B-CURVES 2, B-CURVES 3. The roads are in D-ROADS, and other layers should be hidden, but present in the final file).
TERRENO FINAL para MAQUETE 3D (2004).dwg (852.0 KB)
TERRENO FINAL para MAQUETE 3D (2004).dxf (3.1 MB)

Please also explain here how to make the terrain solid and create roads on terrain, so I can learn it and other users when finding this post may also learn something (or post some good tutorials).

Thank you so much! :slightly_smiling_face::slightly_smiling_face:

Terrain with road from far looks ok; When zooming in, there’s a few missing triangles enough to render the model useless for CNC cutting :((; Terrain too smooth, not true to curves.

1 Like

Hi Luis - if a mesh is good enough, you can try first extracting all the points from the curves (ExtractPt) then MeshPatch on these points.- it’s not smooth, it’s a mesh but possibly OK.

TerrainMesh_PG.3dm (4.0 MB)


Thank you for the prompt reply Pascal. I opened the file and it looks nicer than before. :grinning:
I just downloaded Rhino and trying to import the .DWG files I created but it gives me an error every time, no matter which version I save as…

2 questions.

  1. How did you opened the DWG I uploaded? can you send me the original file in .3dm so I can open it myself?
  2. I feel like you have a solution there but I’m fresh to Rhino, and I’m not with my friend now. Could you further explain what you just told?

Luis :slightly_smiling_face:

Hi Luis - I opened the dwg in Rhino for mac - that worked fine here - did it not open for you? In any case, the process is, select all of the contour curves and ExtractPt. Then select these points (SelPt) and start MeshPatch. Just accept the defaults…TERRENO FINAL para MAQUETE 3D (2004).3dm (5.4 MB)


No, it doesn’t import any dwg at all. Not even a clean dwg with just a square…

Ok, I’m trying to do that just now.

Btw, what Patch Surface values did you use for that terrain? I can’t seem to replicate it.

I would suggest Rebuilding the Curves before ExtractPt and so on.
You might get a bit of a deviation on these curves, but it won’t matter much on that scale.
You will have a much better distribution of points this way.

1 Like

I’m sorry for the trouble.
Could you tell me step by step how did you create that first surface terrain?
I want to replicate what you did using my original file.

And then, after having the mesh, convert it to a solid. My mac is faster than my friends PC so it’s handling well the model so with guidance I think I can do what I want.

Thanks for the help Pascal.

What do you mean rebuilding the curves? redrawing them one by one? wow that seems impossible for me, I’ve done that once and it took me forever, can’t afford to lose that time again. Or is there a shorter way?

That is not part of the process so far - you can make a closed ‘solid’ mesh, for example for 3d printing but if you need a ‘true’ solid to export to a solid modeler, a mesh is not good enough.

To get what I made:

  1. Select the contour curves
  2. Run the command ExtractPt
  3. Click in space to unselect everything or use SelNone
  4. Run the command SelPt
  5. With the points selected, start the command MeshPatch.
  6. Accept the default settings throughout (“Enter”)

Once the mesh is made, one way to make a printatable object is to OffsetMesh with the Solid option checked. Note you cannot offset too far or the mesh will have self intersections.


It does nothing after MeshPatch
Maybe the defaults from my version are different from yours.

Hello - at this point, as shown in your images, run SelPt to select the point objects and then .


Nice! I made it :star_struck:

Now deselecting all the points, is there a way? this questions sounds so noob.

Just started today with Rhino, but to be honest, I think I’ll keep using it and learning, so much more unlimited compared to Sketchup and Autocad 3D, i’m tired of being limited with these softwares I used. And interface feels very easy.


Blockquote : What do you mean rebuilding the curves?

hehe. No I’m not that sadistic! There is command called RebuildCrv… :slight_smile:

Nice, can you please tell me how to nicely rebuildthem? What values should I input?

No RebuildCrv command. There is Rebuild which rebuilds with uniform knot spacing, and RebuildCrvNonUniform which rebuilds with knots closer in areas with larger curvature. Both of these commands work with the user specifying the number of control points. There is allso FitCrv which tries to rebuild within a specified tolerance.

1 Like

@davidcockey True that.
@lois “Nice, can you please tell me how to nicely rebuildthem? What values should I input?”
what he said! :slight_smile: