T-spline

Last updated

In computer graphics, a T-spline is a mathematical model for defining freeform surfaces. [1] A T-spline surface is a type of surface defined by a network of control points where a row of control points is allowed to terminate without traversing the entire surface. The control net at a terminated row resembles the letter "T".

Modeling surfaces with T-splines can reduce the number of control points in comparison to NURBS surfaces and make pieces easier to merge, but increases the book-keeping effort to keep track of the irregular connectivity. T-splines can be converted into NURBS surfaces, by knot insertion, and NURBS can be represented as T-splines without T's or by removing knots. [2] T-splines can therefore, in theory, do everything that NURBS can do. In practice, an enormous amount of programming was required to make NURBS work as well as they do, and creating the equivalent T-spline functionality would require similar effort. To smoothly join at points where more than three surface pieces meet, T-splines have been combined with geometrically continuous constructions of degree 3 by 3 (bi-cubic) [3] and, more recently, of degree 4 by 4 (bi-quartic). [4] [5] [6]

Subdivision surfaces, NURBS surfaces, and polygon meshes are alternative technologies. Subdivision surfaces, as well as T-spline and NURBS surfaces with the addition of geometrically continuous constructions, can represent everywhere-smooth surfaces of any connectivity and topology, such as holes, branches, and handles. However, none of T-splines, subdivision surfaces, or NURBS surfaces can always accurately represent the (exact, algebraic) intersection of two surfaces within the same surface representation. Polygon meshes can represent exact intersections but lack the shape quality required in industrial design. Subdivision surfaces are widely adopted in the animation industry. Pixar's variant of the subdivision surfaces has the advantage of edge weights. T-splines do not yet have edge weights.

T-splines were initially defined in 2003. [7] In 2007 the U.S. patent office granted patent number 7,274,364 for technologies related to T-Splines. T-Splines, Inc. was founded in 2004 to commercialize the technologies and acquired by Autodesk, Inc. in 2011. [8]

Related Research Articles

<span class="mw-page-title-main">Point cloud</span> Set of data points in three-dimensional space

A point cloud is a discrete set of data points in space. The points may represent a 3D shape or object. Each point position has its set of Cartesian coordinates. Point clouds are generally produced by 3D scanners or by photogrammetry software, which measure many points on the external surfaces of objects around them. As the output of 3D scanning processes, point clouds are used for many purposes, including to create 3D computer-aided design (CAD) models for manufactured parts, for metrology and quality inspection, and for a multitude of visualizing, animating, rendering, and mass customization applications.

<span class="mw-page-title-main">Geometric primitive</span> Basic shapes represented in vector graphics

In vector computer graphics, CAD systems, and geographic information systems, geometric primitive is the simplest geometric shape that the system can handle. Sometimes the subroutines that draw the corresponding objects are called "geometric primitives" as well. The most "primitive" primitives are point and straight line segment, which were all that early vector graphics systems had.

Bézier surfaces are a species of mathematical spline used in computer graphics, computer-aided design, and finite element modeling. As with Bézier curves, a Bézier surface is defined by a set of control points. Similar to interpolation in many respects, a key difference is that the surface does not, in general, pass through the central control points; rather, it is "stretched" toward them as though each were an attractive force. They are visually intuitive, and for many applications, mathematically convenient.

<span class="mw-page-title-main">Non-uniform rational B-spline</span> Method of representing curves and surfaces in computer graphics

Non-uniform rational basis spline (NURBS) is a mathematical model using basis splines (B-splines) that is commonly used in computer graphics for representing curves and surfaces. It offers great flexibility and precision for handling both analytic and modeled shapes. It is a type of curve modeling, as opposed to polygonal modeling or digital sculpting. NURBS curves are commonly used in computer-aided design (CAD), manufacturing (CAM), and engineering (CAE). They are part of numerous industry-wide standards, such as IGES, STEP, ACIS, and PHIGS. Tools for creating and editing NURBS surfaces are found in various 3D graphics and animation software packages.

Autodesk 3ds Max, formerly 3D Studio and 3D Studio Max, is a professional 3D computer graphics program for making 3D animations, models, games and images. It is developed and produced by Autodesk Media and Entertainment. It has modeling capabilities and a flexible plugin architecture and must be used on the Microsoft Windows platform. It is frequently used by video game developers, many TV commercial studios, and architectural visualization studios. It is also used for movie effects and movie pre-visualization. 3ds Max features shaders, dynamic simulation, particle systems, radiosity, normal map creation and rendering, global illumination, a customizable user interface, and its own scripting language.

<span class="mw-page-title-main">Autodesk Alias</span> Industrial design software

Autodesk Alias is a family of computer-aided industrial design (CAID) software predominantly used in automotive design and industrial design for generating class A surfaces using Bézier surface and non-uniform rational B-spline (NURBS) modeling method.

<span class="mw-page-title-main">Polygon mesh</span> Set of polygons to define a 3D model

In 3D computer graphics and solid modeling, a polygon mesh is a collection of vertices, edges and faces that defines the shape of a polyhedral object. The faces usually consist of triangles, quadrilaterals (quads), or other simple convex polygons (n-gons), since this simplifies rendering, but may also be more generally composed of concave polygons, or even polygons with holes.

In the field of 3D computer graphics, a subdivision surface is a curved surface represented by the specification of a coarser polygon mesh and produced by a recursive algorithmic method. The curved surface, the underlying inner mesh, can be calculated from the coarse mesh, known as the control cage or outer mesh, as the functional limit of an iterative process of subdividing each polygonal face into smaller faces that better approximate the final underlying curved surface. Less commonly, a simple algorithm is used to add geometry to a mesh by subdividing the faces into smaller ones without changing the overall shape or volume.

<span class="mw-page-title-main">Catmull–Clark subdivision surface</span> Technique in 3D computer graphics

The Catmull–Clark algorithm is a technique used in 3D computer graphics to create curved surfaces by using subdivision surface modeling. It was devised by Edwin Catmull and Jim Clark in 1978 as a generalization of bi-cubic uniform B-spline surfaces to arbitrary topology.

In 3D computer graphics, polygonal modeling is an approach for modeling objects by representing or approximating their surfaces using polygon meshes. Polygonal modeling is well suited to scanline rendering and is therefore the method of choice for real-time computer graphics. Alternate methods of representing 3D objects include NURBS surfaces, subdivision surfaces, and equation-based representations used in ray tracers.

<span class="mw-page-title-main">Freeform surface modelling</span> Techniques for creating complex surfaces in 3D graphics software

Freeform surface modelling is a technique for engineering freeform surfaces with a CAD or CAID system.

<span class="mw-page-title-main">Mesh generation</span> Subdivision of space into cells

Mesh generation is the practice of creating a mesh, a subdivision of a continuous geometric space into discrete geometric and topological cells. Often these cells form a simplicial complex. Usually the cells partition the geometric input domain. Mesh cells are used as discrete local approximations of the larger domain. Meshes are created by computer algorithms, often with human guidance through a GUI, depending on the complexity of the domain and the type of mesh desired. A typical goal is to create a mesh that accurately captures the input domain geometry, with high-quality (well-shaped) cells, and without so many cells as to make subsequent calculations intractable. The mesh should also be fine in areas that are important for the subsequent calculations.

In statistics and image processing, to smooth a data set is to create an approximating function that attempts to capture important patterns in the data, while leaving out noise or other fine-scale structures/rapid phenomena. In smoothing, the data points of a signal are modified so individual points higher than the adjacent points are reduced, and points that are lower than the adjacent points are increased leading to a smoother signal. Smoothing may be used in two important ways that can aid in data analysis (1) by being able to extract more information from the data as long as the assumption of smoothing is reasonable and (2) by being able to provide analyses that are both flexible and robust. Many different algorithms are used in smoothing.

<span class="mw-page-title-main">Jos Stam</span>

Jos Stam is a researcher in the field of computer graphics, focusing on the simulation of natural physical phenomena for 3D-computer animation. He achieved technical breakthroughs with the simulation of fluids and gases, new rendering algorithms and subdivision surfaces, which are a mix between two previously incompatible worlds of Nurbs- and polygon-modeling in 3D.

<span class="mw-page-title-main">Doo–Sabin subdivision surface</span> Type of polygon mesh in computer graphics

In 3D computer graphics, a Doo–Sabin subdivision surface is a type of subdivision surface based on a generalization of bi-quadratic uniform B-splines, whereas Catmull-Clark was based on generalized bi-cubic uniform B-splines. The subdivision refinement algorithm was developed in 1978 by Daniel Doo and Malcolm Sabin.

<span class="mw-page-title-main">Digital sculpting</span> Use of software to manipulate a digital object

Digital sculpting, also known as sculpt modeling or 3D sculpting, is the use of software that offers tools to push, pull, smooth, grab, pinch or otherwise manipulate a digital object as if it were made of a real-life substance such as clay.

<span class="mw-page-title-main">Loop subdivision surface</span> Subdivision surface derived from a triangular mesh

In computer graphics, the Loop method for subdivision surfaces is an approximating subdivision scheme developed by Charles Loop in 1987 for triangular meshes. Prior methods, namely Catmull-Clark and Doo-Sabin (1978), focused on quad meshes.

<span class="mw-page-title-main">3D modeling</span> Form of computer-aided engineering

In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object in three dimensions via specialized software by manipulating edges, vertices, and polygons in a simulated 3D space.

Solid Modeling Solutions is a company who has an implementation of a mathematical representation of many NURBS, 3D geometry, and Solid modeling technology which emerged in the 1980s and 1990s into a commercial implementation known as SMLib. This article will provide the background and history of this implementation into a commercial product line from Solid Modeling Solutions (SMS). SMS is an independent supplier of source code for a powerful suite of 3D geometry kernels. SMS provides advanced NURBS-based geometry libraries, SMLib, TSNLib, GSNLib, NLib, SDLib, VSLib, and PolyMLib, that encompass extensive definition and manipulation of NURBS curves and surfaces with the latest fully functional non-manifold topology.

Thomas W. Sederberg is the associate dean of the college of physical and mathematical sciences and professor of Computer Science at Brigham Young University in Provo, Utah. His research involves computer graphics and computer aided design. He helped invent free-form deformation and T-splines.

References

  1. Reconsideration of T-spline data models and their exchanges using STEP
  2. Thomas W. Sederberg, Jianmin Zheng, Tom Lyche, David Cardon, G. Thomas Finnigan, Nicholas North: T-Splines Simplification and Local Refinment, from ACM Trans. Graph. (SIGGraph 2004)
  3. J. Fan, J Peters, On Smooth Bicubic Surfaces from Quad Meshes, ISVC 2008, see also: Computer Aided Design 2011, 43(2): 180-187
  4. J Peters,Biquartic C^1 spline surfaces over irregular meshes, Computer Aided Design 1995 27 (12) p 895--903
  5. M.A. Scott and R.N. Simpson and J.A. Evans and S. Lipton and S.P.A. Bordas and T.J.R. Hughes and T.W. Sederberg, Isogeometric boundary element analysis using unstructured T-splines, Computer Methods in Applied Mechanics and Engineering, 2013 254. p 197-221
  6. G. Westgaard, H Nowacki, Construction of fair surfaces over irregular meshes, Symposium on Solid Modeling and Applications 2001: 88-98
  7. Thomas W. Sederberg, Jianmin Zheng, Almaz Bakenov, Ahmad Nasri: T-Splines and T-NURCCS, from ACM Trans. Graph. (SIGGRAPH 2003)
  8. "Autodesk Acquires T-Splines Modeling Technology Assets". 22 December 2011.