Mesh to Surface

as long as you can name it you can consider integrating it.


ah? wow, smartass.

the seriousness of an exact conversion is not obligatory to every case. this one method which would be fast and can help for further steps e.g extracting more curves for further adaptation was not even mentioned at all. if you dont do it somebody else might start from there.

@sharethebeat17 so did you manage to get something going or would you need step by step? as @TomTom mentioned it is obviously not the most exact option (but more spans will also follow the initial mesh closer) . so if precision is what you are after you might have to try the previous mentioned methods from @Michael_Pryor

I don’t know, I think this is very unrealistic. I couldn’t do this although you consider me being a smartass :man_shrugging: But I could remodel this in about 1-3 hours… So thats why I would do it like this.

The user requested for a mesh to surface conversion. And he is not the first one. This is actually a very common request in this forum. And in all these years Rhino/Grasshopper exists, nobody made it work ( at least as most people would expect a usable conversion.)

The reason is simple. It is difficult! How should some average joe do this? And even if someone can do this how long should it take? 3 years?

It is a big problem to solve, and I never negated that there is software doing this sort of conversions. But still even the best and most expensive software is not doing it good enough for most professional applications.
Creating patches with 50 to 70 spans? This is exactly my point when I’m talking about brute force. A surface with this specs is so bad that it makes any conversion almost useless. If you work with this heavy data, you could stay with meshes and even get a better outcome in terms further development. The patch command (at least from my experience) is used to fill small gaps, for instance in the back of a model to quickly close surface model for instance or at places where a good surface representation is obligatory.

The reason why most people want this is actually another: Often people can better model with a polygon modelling software or they using fancy GH scripts creating awesome mesh geometry in 5 minutes. But then they notice, oh wait, how do I make it a surface representation which for some reason is required for further processing? Now they hope there is some magic algorithm. And no, there is no such thing. The truth is the opposite, everything related to CAD is difficult , time consuming and has a step learning curve…

i dont disagree. but again it all depends what you need it for. but lets not blow this bubble up, bloating it with boring repetitive ping pong.

for a fast result and yes ok it also works with 40 spans if that soothes your need for simplicity :wink: it might work with even less, but whatever its for. here i gumball scaled in z direction with factor of 0.2 as mentioned before, patch does not hit the mesh since its too high why ever.

results in this

then dup the boarder (for later) and use patch with the mesh as input. you may have to set the stiffness to 0.8 whats what i did probably it will work with 1 did not test.

then trim with the dupped boarder from before

and the bottom once more and the hole with a straight line to ensure that the result is straight.
you could also trim the bottom with a straight line first and then trim with the boarder.

then scale z by factor 5 to regain the initial height.


Yes, I was able to get that. and again thank you very much for all your help.

but how come when I bring it into grasshopper this happens? I tried to rebuild the surface, but that doesn’t help in this case. It’s like it is still reading the original patch surface

Hi Mikey,

If you don’t mind me asking how were you able to clean up the mesh so much?

you can also create a loft


i am not fully sure what the options are in grasshopper, i merely keep my knowledge in a luke warm state not to lose it completely. but i believe rebuilding the surface may also mean that you have to tick an option to retrim which might be in grasshopper just the same as in rhino.

I tried both options of have it checked the retrim and then not to retrim and trimmed it myself and I have the same issue. I will keep playing with it, but honestly thank you so much for everything I can’t thank you enough! I would not of gotten this far without you!

I use Patch command to adjust an initial surface to better fit the mesh. My typical approach to creating a surface model of a boat hull from a point cloud is to first look at the shape and think about the best approach to model such a shape using the fewest surfaces and spans possible. That is the most important step and is where experience with modeling similar shape is very beneficial.

Next step is to create a set of boundary curves for the surface(s) which match the mesh where feasible. I may also add a few curves to further define the initial starting surface. Then I use Patch with the initial starting surface and the mesh to adjust the surface to match the mesh as closely as possible. Frequently I iterate by adding or removing knots refine the number and distribution of control points and then using Patch to adust the surface. It is not uncommon to go back and manually modify the intial curves and sometimes the basic modeling approach based on the results. The final step is fine adjustment to the surface by moving control points as needed.

Again experience with the modeling similar shapes is very helpful at a minimum. The way to get experience is by doing.

1 Like

if this result is already okay… :neutral_face: Both solutions are not really convincing. I would rather go for the second proposal of @vikthor . I mean you can see a lot of deviation in both approaches. Not in numbers but also in the shape. But the second one at least has a slightly better highlight. This is because of the radial approach. I’m not not sure about the usecase for the patch command as described. I mean in the example of @encephalon you clearly see visual irregularities which is because of plumbing a rectangular surface into the outline. It is impossible to get rid of them if the isocurves do not follow the the right way. I mean you cannot even create this out of one single surface correctly. But also the second approach is too simplistic to represent the shape. But yes, if everyone is happy, I’m sorry for annyoing you guys…


Hey Tom Tom,

I’m still have problems with it when I bring it into grasshopper and you can really see the distortion.

What do you suggest I’m just trying anything that works I am open to any suggestion and any help. everyone here know a lot more than me in both rhino and grasshopper and I am trying to learn.

I would play around with this layout. It is one proposal, but this is something you find out while doing:

Please note, that I made this is in paint, so the edges are not curved correctly. I would split it in 4 sections when seen from top. All surface can potentially match with g2 here.

1 Like

Hey Tom Tom,

I’ll try that I’m not to sure if I’m going to figure out how to do that, but I will play around with it though. I very much appreciate everyone’s time!

hm i was actually not aware of any irragulations, the patch looked pretty good to me no unfair areas. i can see something odd in the screenshots though but the surface was rather good no idea what causes the shading artefacts. but if so, local massaging with smooth might help to iron it out pretty fast.

i actually really love the patch tool, it helps with quick surfaces or to understand how the end result should look like. i wished it would have a bit more power, something in the direction of xnurbs.

It’s simple - Zbrush remesher (the last edition) plus few tweaks in Modo such as pushing loose geometry back to your initial mesh constraints. Sorry I haven’t much time this week, if you need more accurate interpretation of the mesh let me know and I’ll see what can I do.

Hi Mikey,

No That’s alright, that’s way above my head right now I have never used those programs, but I will definitely add them to the list.

Hey Vikthor,

How did u get the line at the top of the structure did u trace everything?

Vikthor respond pls, I also need to understand for my project

I already answered this, I don’t know where he went :frowning:

Look for a type of visualization that shows the upper outline, then you draw the curve following that shadow, then project it.