This is something I’ve wondered about for a while. If I reparameterize a surface, say with u and v going from 0 to 1, and evaluate that surface at a point beyond those bounds, it follows some well-behaved surface that seems to contain the original. How are these points being calculated?

Calculating the x,y,z coordinates corresponding to u and v values beyound the bounds of the surface is as simple as plugging the u and v values into the same formula used to calculate the surface inside the bounds. The surface beyond the original bounds will have the same continuity as the original surface within a single span.

Yes as far as the formula goes. A surface in Rhino is a set of numbers (knot vectors and control point coordinates) which are used in the standard NURBS equation Rhino calculates the surface coordinates as needed using the stored numbers. What is frightening?

But aside from the fact that there is continuity, as @davidcockey mentioned, there is no predicting what creature the formula might spit out, especially at larger parameter values. This definitely seems a property worth exploring though.

The Rhino command ExtendSrf with Type=Smooth is an easy way to explore the shape of a surface beyond it’s original bounds. Extend almost any non-planar surface far enough and it will take “interersting” shapes.