Current curvature analysis tool can't distinguish concave vs convex!

Hi all.
Since some months I’m developing and curing my own SubD curvature analysis tool… and, as it actually works with meshes, I’ve started to using it for polysurfaces too. Why? Because it can distinguish positive from negative mean curvature (“valleys” from “mountains”)!

This is current WIP (on a surface):
Apart from gaussian, Mean/Min/Max simply omit negative values! (green-to-blue colors can’t even exist!). Curvature values for Mean/Min/Max are unsigned, or more precisely, negative are converted to positive!
This is NOT good!

Some reference from code request - Computing Gaussian curvature - Mathematica Stack Exchange on how it should be like:

Some 2016 threads:

that had little or no partecipation from McNeel staff.

Rhino is mainly a surfacing tool, right? :sweat_smile:
It would be a nice… or better… expected for Rhino users to be able to differentiate positive from negative mean curvature!

For example, designing carbon frames it is almost always a very BAD situation when you have a mean negative curvature. You want to avoid it every time. But currently with Rhino tools it’s tricky to find those.



Hi Riccardo,

That’s also what I expected when I wrote the post you’ve quoted.
But of course the unsigned mean curvature also makes sense if you think about it…

These days I’m working entirely based on surface curvature and there are so many advanced ways to use it. To throw all these on the average user may be too much information :wink: The current implementations are the common ways to visualize SurfaceAnalysis. (I think on the Mac even the false color gradient is flipped but nobody complained so far - I’ll check that…)

Fortunately it is not complicated to develop any kind of custom visualizations based on curvature with Rhino :slightly_smiling_face:



I completely agree. SubD does not have any curvature analysis at all, that’s a huge problem already, and then you also cannot see if you have any bumps on surfaces that a concavity/covexity analysis would solve (flips from concavity to convexity where you did not intended/wanted it).


Meanwhile this might be workaround?

… I have folders of folders of custom workarounds (scripts and stuff). (mentioned so at start)

This seems something that shouldn’t be “custom” at all, but a basic need/feature for surfacing.


I agree it should be native. That’s why I said ‘meanwhile’.

I posted for others as this is a public forum, so people entering this thread can have a tool to deal with it.

1 Like