Article published in June 2009 on the Novedge blog.
One of my recurring complaints about surface modeling is the intrinsic complexity of existing modeling systems. Even if the user-friendliness of these systems has improved, every user will eventually need to invest time in understanding how the underlying geometry works and in accepting the limitations inherent in each modeling strategy. T-Splines are certainly one of the most important innovations in this field. Still, most importantly, the technological benefits of the T-Splines geometry make life easier for the user and the modeling activities faster and more enjoyable. The recent release of T-Splines 2.0 for Rhino shows the huge potential of this new technology. On top of this, T-Splines are fully compatible with existing NURBS modeling systems such as Rhino and Maya. Let’s have Matthew Sederberg, the son of the inventor of T-Splines and its CEO, help us better understand what I like to call NURBS 2.0.
The interview
Franco Folini: Hi, Matt! Can you tell us a bit about yourself and your company, T-Splines?
Matt Sederberg: Hi Franco, and thanks for the interview. I started T-Splines, Inc. while still in college at Brigham Young University (Provo, UT) in 2004. The company hatched slowly for the first couple of years as our founding team graduated, but we’ve been growing strong ever since our first commercial industrial design product release in 2007.
T-Splines has received an NSF SBIR grant, a Utah Center of Excellence grant, and funding from the US Navy for its work in innovative surface modeling technologies. The company is based in Provo, Utah, where I also live with my wife. When I’m not working, I enjoy playing tennis with my wife.
T-Splines has received funding from the US Navy for its work in innovative surface modeling technologies.
Matthew Sederberg
Franco Folini: T-Splines is not only a company but also a new way to handle surface geometry. Can you tell us when it was invented, by whom, and how it became a product?
Matt Sederberg: The T-Splines technology was introduced as a SIGGRAPH paper in 2003 by Dr. Tom Sederberg (my dad). Before inventing T-Splines, he had spent his career researching computer graphics, including the invention of free-form deformation and extensive work with NURBS. We were very excited about the potential of T-Splines to significantly improve design processes, and since the CAD industry is usually slow to adopt academic research into commercial products, my dad and I decided to commercialize the T-Splines technology ourselves. For an even more focused commercialization, instead of writing an entire program, we wrote plugins: our first product, a plugin for Maya, was released in 2005, and T-Splines for Rhino was released in 2007. T-Splines 2.0 for Rhino was released in May 2009 and is a very significant enhancement.
The T-Splines technology was introduced in 2003 by Dr. Tom Sederberg, my dad.
Matthew Sederberg
Franco Folini: What are the benefits of using the T-Splines system compared to using a standard NURBS modeling system? Are there any disadvantages?
Matt Sederberg: NURBS are the basis for almost every commercial CAD software on the market today. However, NURBS do have several limitations as compared to T-Splines:
- A non-uniform rational B-spline surface or NURBS surface is defined by a set of control points that lie, topologically, in a rectangular grid. This means that, in practice, a large percentage of NURBS control points are superfluous in that they contain no significant geometric information, but merely are needed to satisfy the topological constraint. In a typical complex surface model, 40-50% of the NURBS control points are superfluous. In contrast, a T-Spline’s control grid is allowed to have partial rows of control points. A partial row of control points terminates in a T-Point, hence the name T-Splines. Minimizing control points makes it easier to create models, improve control surface smoothness, and reduce editing time.
- As a direct result of the ability to create partial rows of control points within a single surface, the user can now create a surface with varying levels of detail only where required. Refinement, the process of adding new control points to a control mesh without changing the surface, is an important basic operation used by designers. A limitation of NURBS is that refinement requires inserting an entire row of control points, increasing the density of the mesh across the entire surface. T-Points enable T-Splines to be locally refineable. Support for local detail in a single surface makes it easier to model complex shapes and create smooth, watertight models.
- With T-Splines, non-rectangular surfaces can be constructed using star points, also called poles or extraordinary points. This overcomes another fundamental NURBS limitation: In NURBS surface modeling, constructing a complex shape with varying detail, curvature, or smoothness requires many individual rectangular patches. Maintaining continuity and smoothness across these patch surfaces is a significant challenge. Star points also enable modeling techniques such as extrusion, face deletion, and surface merging, which greatly increase the user’s design freedom. Star points are used today in subdivision surface modeling, which is popular in animation, but T-Splines introduces them to industrial design for the first time in a NURBS-compatible format.
A large percentage of NURBS control points are superfluous.
Matthew Sederberg
As far as disadvantages for T-Splines, there are definitely some operations (such as exact fillets) where I would recommend NURBS over T-Splines. Also, where your design is primarily a prismatic part with mostly planar or cylindrical surfaces, a standard NURBS modeler is a better option. Today, T-Splines is an excellent choice for organic free-form designs and a great complement to existing NURBS modeling techniques. In the future, we expect to overcome the remaining limitations, and T-Splines will have the potential to completely replace NURBS in modeling applications.
Star points enable modeling techniques […] that greatly increase design freedom for the user.
Matthew Sederberg
Franco Folini: Based on your experience, who are the users who can benefit the most from T-Splines?
Matt Sederberg: Most of our customers today are industrial designers, architects, and jewelry designers. T-Splines is also used in marine design and toy design. The sweet spot for T-Splines is modeling organic designs, where the designer wants to explore shape variations by pushing and pulling on the surface, and where staying compatible with NURBS for downstream applications or manufacturing is required.
our customers are industrial designers, architects, and jewelry designers
Matthew Sederberg
Franco Folini: In my opinion, surface modelers have always suffered from an intrinsic complexity: exposing too much of the underlying data structure and algorithms. How close are we to a truly user-friendly surface modeling system?
Matt Sederberg: Great question. The benefit of surface modelers is that they provide a high level of control over the surface being created, which often conflicts with simplicity. With the just-released T-Splines 2.0 for Rhino, we’ve created a simpler interface that lets users select faces and edges and move them around, SketchUp-style. We also let the user toggle precision tools such as tangency handles on and off, and have introduced a manipulator that can be used to intuitively rotate, scale, and move objects.
We’ve created a simpler interface by allowing users to select faces and edges and move them around.
Matthew Sederberg
Franco Folini: You choose to offer T-Splines as a plug-in for existing modeling systems rather than creating your own standalone application. What convinced you to go for this option?
Matt Sederberg: T-Splines is not the first alternative surface technology; however, it stands out for its compatibility with NURBS. Converting any T-Spline to NURBS surfaces is a push-button operation, as is converting any untrimmed NURBS to T-Splines. Consequently, we decided to lower the barrier for designers to use T-Splines alongside NURBS by integrating T-Splines directly into NURBS modelers. This also allows us to focus our resources on developing unique T-spline functions instead of rewriting NURBS routines.
Converting any T-Spline to NURBS is a push-button operation, as is converting any untrimmed NURBS to T-Splines.
Matthew Sederberg
I would like to thank Matt for taking the time to answer my questions.
