Srf Morph - bake

Can you help me with this structure? I can’t make the bake with the srfmorph block

grasshopper - (14.6 KB)

First let me say that’s a nice looking shape you created. I’ve 3d printed quite a few bowl-type shapes and your’s would be a good candidate for that if it could be printed. But as you said, that’s not possible because it can’t be baked.

I spent some time trying to fix it, but I was not successful. The problem happens at the very beginning - the RevolveSrf function does not make a “nice” surface, even though it looks OK. One of the reasons for this is you are using the entire ellipse to do the 360 degree revolution, which means the resulting surface has 2 coincident layers. This is not good. The results of this look like this:

The strange dark spot at the point of rotation is a clue that something is wrong.

Reducing the rotation to just pi does not help; the results of the rotation look the same, but your final result looks like this:

The fact that there is just a half of the desired result is interesting for sure - I have no explanation for this. But notice the strange look at the front corner - this is not good. The resulting geometry is an “Invalid Brep” which means, among other things, that it can’t be baked, can’t be merged with a mirror image, and who know what else it can’t do.

I’m guessing the problem has to do with the results of using an ellipse to make the surface of revolution. Perhaps someone who knows more about how GH actually works will be able to explain what’s going on, or come up with an alternative. Or maybe I’ll be able to figure out some tweak that will get it to work - I’d like to be able to print something using your technique.

We worked on this same issue last January:

1 Like

Thanks Joseph - your memory is clearly far better than mine. But look what happens when your method is introduced into the OP’s file:

Is that weird or what? I tried to generate just half of the ellipse but couldn’t find a way to do that. I feel like it’s time to invoke the old Ralph Cramden line: “What a revolting development this is.” (18.8 KB)


I can’t see the whole model but it looks like you took a convoluted path to get the RevSrf.

I would do it this way: (12.4 KB)

Ah yes - Shatter. I should have thought of that. Thanks (again.)

I put your method into the original file and got this result:
I am not making this up! It is also an invalid BRep so it won’t do anything useful like Flip or Rotate or anything else.

However, using your method I was able to make a nice looking solid bowl shape:
but the best I could do in achieving the original desired result was this strange looking thing:
Needless to say I have no idea what’s going on under the covers, or what to do about it.

PS: I added the Lunchbox thing a long time ago specifically for the Hexagon Cells function. I’ve used it successfully several times - but of course I have no idea why it works. (28.6 KB)

I found a solution in this post by @Joseph_Oster Invalid brep with surface morph - #2 by Joseph_Oster

This is the only change I made to the original file posted by @giorgiapro

You can see the effect in the resulting brep, but as Joseph wrote in the post above you can use smaller values to reduce the effect (or you could model further to remove this).

Edit: Here’s the modified file:
grasshopper - (11.1 KB)



Wowee - that’s a great discovery. Congratulations. But…

  1. How did you discover the solution? Or was it just a wild guess?
  2. Is there an explanation for why it works?
  3. Where does the little semi-circular groove come from?

Thank you, thank youuuu
I tried to change the project I don’t know how many times, but I couldn’t find a solution even with the previous comments.

In general the values are of the domain, to create only a hemisphere (I put 0.5 - 1), while z is for the thickness of the structure. I believe that putting a value less than 1 does not create a complete hemisphere and creates that ‘void’ at the origin of the plane for x and y. (I think this, but i’m not sure)

Read the thread that @kev.r referred to, it’s very short:

This version uses Sporph, I think it’s a bit faster, expecially because it lets you see the changes to the pattern in real time without recomputing its thickness (I have placed a data dam for the thickness…)

grasshopper - (19.9 KB)

[lol don’t know why my pointer becomes a blue ball in the recording…]

1 Like