Rhino uses NURBS geometry that is constructed from a set of control points, weights, and NURBS basis functions.
I’d like to know if its possible for me to create my own spline definition and use in Rhino that are defined through my own custom basis functions and grips (control points). If so, what would this take? And where can I begin learning how to go about implementing something like this?
Let me rephrase my question…
Lets say I have a special type of spline geometry in mind. I’d imagine when I build this definition, I would inherit from opennurbs_geometry virtual class.
This geometry has its own special routines to evaluate points, and has its own special grips / control points for manipulation.
How do I actually display the geometry as Rhino does for a NURBS surface?
I’m confused on how Rhino takes a geometry class and then draws it. What all is involved so that I can customize how this is done.
Take the NURBS surface for example. This inherits from the opennurbs geometry base class and provides all kinds of functions having to do with a NURBS surface. Where is the code that tells Rhino how to actually draw and display this in the viewport?
How does Rhino handle drawing / displaying in general? Are objects first added to the doc, then is something ilke draw() called for each object? Where is draw() implemented for a geometry class?