Any progress in SubD methods?

Preface:
it’s incredible for me that we are discussing this.
What I would expect as response is someone telling me: “yes, subd methods are a mess and our target is to make an overhaul of the whole situation”.

I’m mainly scripting with C# scripts inside GH.
Maybe the SDK via c++ is much better? I don’t know. Never informed myself about it.


Do a honest comparison between Mesh methods and current SubD methods. The difference is insane.
The “average joe” like me can literally play with meshes via rhinocommon/c#… having fun while developing!
With SubD after 5 minutes you want to give up and change job! :smiling_face_with_tear:


… with SubDs we work always with the Control Points2023-09-09 12_10_45-Window
We never use "Edit points"2023-09-09 12_10_53-Window
Editing surface points is not useful for us… even less if it’s 1 by 1!

On rhino, you turn on control points, select a whole set of 100-1000 control points, and move/transform them all simultaneously, in a split second! Those are simple 3D points with an index/ID/whatever.
Iterating with a .First or .Next or by .Find( … is the opposite of a solution, really!

I can’t believe it’s impossible to access simple 3d points locations as an index-accessible list or array.
Same with edges and faces.
With meshes we can create methods that work with indexes of vertices, edges, faces, even in multithread! Topology (where is the topology???), etc etc …

There is absolutely no reason we shouldn’t be able to work with SubD in the same way.
It still feels an incomplete type of geometry.

Rhino 7, release day: best way to work with SubD in c#/rhinocommon is to cast them to Mesh (where creases are unweld edges) , work it as meshes, at the end cast them back to SubD.
Rhino 8 today: exact same situation. :unamused:

If I’m wrong, please tell me why and how!
Provide me a decent example of a deep/heavy SubD manipulation via code.
Show me how using .Find() is any good for any complex script.
It isn’t for me. I tried.
For example, this, is a decent result of Mesh manipulation via rhinocommon methods. I want to do something similar with SubDs!


2023-09-09 12_57_13-Window
WHAT?
Are SubD made with sticks and marshmallows?
Or maybe SubD are indeed made with control points??? (from common user point of view)
This confirms the feeling: your SubD methods are so incomplete that you didn’t even bother TRY to complete gh “Point Deform” component. Anybody would expect this to be working since Rhino 7 release day. I hope you will not try to release 8 without solving this… again!


Absolutely. I agree.
But please do something.
As someone that uses SubD manually on rhino like 4 days/week: we need it.
Again: we need it since Rhino 7 release day. It’s late!

_SetPerFaceColorByFacePack set the colors? Good.
The same way users can see future packing, users should be able to manually sub-select faces and simply change object color. The ToNurbs command, then, should check colors and, if possible, respect the colors while packing. Maybe even with the option to “extract” as Surface/Brep only a portion of the SubD.
Nobody even discussed about this? I have many ideas… I hope you have more!

1 Like