Mesh a Complex Terrain

Hi experts.

I am asking you to help me find a precise way to mesh a complex Group of contour lines. I tried some stuff from the internet (using forums, YouTube,etc) so please keep in mind that i am still learning.

Neither grasshopper codes (that i know about) or “patching” gives me what i want: a NICE and CONTROLLED MESH.

If anybody can help, please do. I will upload the file ASAP. (To whoom it may concern the file is quite large.)

Thank you.

Hello - it is not really possible to help much without a file to look at. But, MeshPatch may be helpful here.
@afigueiroa1 - meshPatch is probably the way to go - you will probably want to do it mulitple times, with logical subsets of the curves.


I cant upload it… +/- 50MB.

wetransfer link:

Thank you. Good luck.

@pascal I dont know if you checked the file or not but if i “meshpatch” all the contour lines the result is not even close to acceptable. I see that it is possible to patch subsets of curves (i didnt try it yet but i will) but i have doubts about their tangency. In other words, if the curves that separate these “subsets” are going to “merge” properly? Or if i have to modulate them manually?

Thank you.

Maybe Lands Design can help you:
It has a command _laTerrain that let you do that. It is going to put the resulting mesh in a block for further edit, but you can explode it to get the mesh.

MeshPatch creates a mesh. There is no tangency associated with a mesh - they’re just collections of facets. If you’re looking for a way to create a smooth surfaces through that set of curves - don’t bother, you can’t. Those curves are far too chaotic to be able to create a smooth surface, on top of that, the natural terrain curves have been cut with what are probably roads, walls and the like, creating vertical or near-vertical areas. Vertical walls wreak havoc with any Delaunay-based meshing algorithm.

You may be able to get somewhere with using MeshPatch on subsets of the curves as Pascal said, the whole thing in one go will not likely succeed - but I don’t think the results will be very nice. Maybe some other program might do better - not sure though, these types of terrain models are hard to do. In most cases I try to get the “natural” terrain without wall or building details, then adapt the terrain to the details.

@Helvetosaur I understood that “MeshPatch” creates a mesh and that it doesnt have any tangencies since its an unique and solo object. Although if i divide all these contours (like @pascal said) in ”subsets” of curves (divided in parts or divisions) i could use the command “meshpatch” 4 to 5 times so it results in 4 to 5 objects or meshes. This is where the word “tangency” comes along. Will it be possible to combine these “divided” objects (or meshes) into one clean design without noticable interruptions between these divisions. Roads and buildings are the easy part. They are not yet imported to the file because i thought it was still too early to work on them and since i knew it was going to take a while until i finished the terrain mesh according to my intentions and so i opted to import them later on when the terrain design is complete.

@albert I do not know about the command _laTerrain. I have read a bit about it. If this command helps “join” the resulting meshes, good and thank you but if it tries to mesh all of these contours in 1 go it wont work for what i want to achieve (like @Helvetosaur mentioned and i agree from experience, its “chaotic” and results in a poor design imo). I will continue to try this for a couple weeks. I wont give up on this.

Thank you all. Expecting to hear more from you guys.

You are welcome to try this as well:

Hi @Holo. I did find some links in the thread you posted but i dont know which one is updated and if it is working in both Rhino V5 and/or V6?

Can you please send the updated link to this thread and answer the question above?

One more thing: Have you checked the file this thread is about?

Thank you.

It’s v6 only and if you scroll to post 51 you’ll the the link :slight_smile: (I can’t check your file tonight though)

Sorry my ignorance but in order to execute this plugin do i have to give axis “Z” to every contour line or i just need them to be 2D/Top View? Just because your thread content (based on what i saw of the printscreens which btw the results are very interesting especially the connection reading between the roads and the contours) looks very interesting. With nothing else to add, if you do check the file, when are you planning to do so?

1 minute calculation on my old workstation:

But there are some issues with the curves though.
I only used the curves on the IN-BOX layer, and it uses Z as up (It uses the cores from MeshPatch)



True. The curves do have some errors but yet in some areas the plugin misreads (because of the cores from MeshPatch?). I tried to be very diligent with this and today when programming something in GrassHopper (based on this video[one of many]: ) an error came up when executing it (“One point is null.”) so I analised all the countour lines, (+400) and I edited some which I thought it could help these plugins run better.


  1. Can a good “workstation” easily edit that object/mesh in the picture you sent? Since its very close to a 10/10 result.
  2. Can your plugin read these roads and also extrude them?
  3. How? (Optional answer) [amazed]
  4. [If “Yes” to question 2] Do you need to separate the contours from the roads by layers? Does it read buildings?

I am also sorry for the questionary. I am just trying to be sure that myself and others don’t miss nothing when running it.

it looks awesome and impressive for the amount of time you did it.

Thank you for your attention @Holo and for these images. I will for sure try your plugin.


(Unfortunately I don’t have more time today so this is todays last post from me)

The (this) plugin is just a “patch” maker. It doesn’t take breaklines or holes into account, but I am working on another tool that does that (But that tool can’t handle massive amounts of curves that are overlapping and bad, but this tool can :slight_smile: )

Here is the mesh in v5 format if you want to take a look at it.


Have a nice weekend @Holo.

After two months of editing the mesh that @Holo 's command (“TerrainMesh”) did for me, the result is finally here.
I attached a printscreen and the respective download link to the file so you guys can see it and if you can, make it better with some of your tips and/or adjustments.

when you open the file, there is a layer called “ROADS” which contains the lines representing the roads. As you can probably guess, I want to project them to the mesh itself and extrude them (as I wish). Still trying to figure it out how… but if you can help in this matter I would be extremely thankful. Either way I am creating a new post for this matter which I will post the link here later.


  • T
1 Like

I am interest to know more about this. I am an architect and need to use “stamp” roads on terrains.
Keep waiting and looking.