algorithmic modeling for Rhino

I know that there has been discussions regarding this issue but I wasn't able to use any of the solutions that were suggested (ex. Using T-Spline to convert the mesh into a BRep). I tried to use a definition that someone provided online but the definition wasn't able to read my mesh as a mesh; it rejected the input.

I'll leave the .ghx file of the definition I got online as well as the mesh that I created in a .gh file. Is anyone able to figure out what's going on?

Thank you to anyone who can help me with this problem.

Views: 24429


Replies to This Discussion

Well... (ghx def) for a start the mapper attempts to get tomatoes and extract sardines. On the other hand the definition attempts to handle the issue with quads and triangles ... whilst there's a lot of GH add-ons that do that in the first place for you.

Anyway with some rework (and weaver bird components) the definition "works as intended" (it's not ready yet) but the big issue here is what you could do with a brep that is smooth/hard as nails (compare with the RhinoResurf output).

On the other hand if your goal is to extract a proper nurbs out of a the RhinoResurf command SingleSurfFromMesh (very slow when tolerances are reasonably low, mind) does....

... the definition requires some total rework (patch from extracted points does very weird things).

more in a while, best, Peter

Apologize: I had plans to use WB in order to greatly simplify the whole ghx thing ... but other things happened and the rework must be postponed for a while.

In the mean time, get a slightly reworked version (all data are internalized) - NOTE: logic is redirected towards the patch component, but you can change it (it's a bit tricky: see orange circles) in order to use the original logic with (a) the sphere and (b) an added another test case of mine.

Anyway get the Rhino file (with the RhinoResurf result on the test mesh as well).

NOTE: a nurbs and  a "brep" (as attempted in the original definition) are NOT the same thing.

NOTE: Patch "attempts" to trim the nurbs ... but intentions and results differ.

best, Peter


Thank you for the help! Still getting used to using Grasshopper and getting acquainted with the tools. I really appreciate that you gave me your definition to look at and to study.

Er...hmm...this was the definition that you provided.

This  is mine. Deals with the classic issue: you've got a terrain as a mesh (DTM) and you need a nurbs to work in a proper engineering way (solid ops for excavations etc etc).

Patch works but omits the trim - see the solution. You can rebuild (or not) the nurbs because large datasets and high accuracy are rather CPU taxing

Data are not internalized (load the Rhino file first, then the GH).

All levels related with the test data are turned off.

BTW: This is a real terrain :

Used for some parametric pedestal bridge (not made with GH - lot's of very complex classic solid operations required, like the concrete pathways etc etc).

best, Peter


Thanks for the definition and screenshots! :)

I'll be experimenting a lot with other plugins to see if I can come up with a neater definition if possible.

Added some ways to get a better input for that Patch component (all inactive). WeaverBird, Kangaroo, MeshEdit used - but the best ways to relax/manipulate a mesh can be found in the Evolute Tools Pro and/or Geometry Gym.

Added the GH SplitSurface component instead the weird VBA thing.

If neater means less complex you can use clustering for creating a neat looking component and then store it (i.e. create an user object named, say,  "nemesis"). If neater means more clever ... hmm ... can I have the next question please? he he.

BTW: here's a more challenging terrain(mesh) > terrain(nurbs) puzzle (also real one). Choose one surface with no rectangular footprint, do a mesh out of it and pretend/assume that someone provided you with mesh in order to work (say for designing some hotel properly "fused" into the landscape - meaning a lot of excavations and a certain dose of cost "fitness").


Thanks for the terrain! It will be a useful exercise for sure.

And I was thinking more in terms of a simpler definition? I'm not sure if that's necessarily a smart one though hahahaha XD I'm not a genius so I won't be able to make one that fast.

I really thank you a lot for your help! :)

I do hope that nobody else reads this ... but..well... I'm a certified idiot (according ISO 9000) thus don't even mention the genius thing to me, he he.

Get the slightly reworked thing - proof that success is 99% failure (Soichiro Honda). Components (and the whole logic) used for the solid option (plan B) ... hmm... see ISO 9000.


for 99% read 99.99% (use it with xxxterrainB.3dm)


Thank you again for your help!

And that quote about success being 99% failure is really inspiring. Thank you for that as well! :)

Dear Peter Fotiadis, Could you please post a screen shot if you still have this definition? looks like the kangaroo definition verion, which you said is classic, is not out versioned.

Hmm ... this def is  prehistoric (nowadays is replaced by C# code > no native component of any kind around). It's a miracle that I've found it.

Anyway ... I've spend 2 minutes on that one by replacing the Kangaroo K1 thingy with C# code (the thing in the black circular group).

PS: Use as test the 253_UAE_.... 3dm file provided above

PS: Patch is tricky (one of the many reasons for using solely code to control what's happening).







  • Add Photos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service