Background
 
 
 

Explains the origin and meanings of some of the basic concepts used in AliasStudio.

Points

A point is a location defined by three spatial coordinates. It has no size.

The most basic visual entity is the point. The point has no size, but it has a location.

To determine the location of points, we first establish an arbitrary point in space as the origin.

We can then say a point’s location is so many units left (or right) of the origin, so many units up (or down) from the origin, and so many units higher (or lower) than the origin.

These three numbers give us the 3D coordinates of the point in space. For example, a point 7 units right, 4 units down, and 3 units above the origin has the 3D coordinates (7,4,3).

To specify points on the opposite side of the origin, we use negative numbers. In the example, a point at (-5, -2, -1) would be 5 units left of the origin, 2 units up, and 1 unit below.

In computer graphics, we don’t really say the point is “left/right”, “up/down”, or “higher/lower”. Instead we call the three dimensions the X axis, the Y axis, and the Z axis.

History of splines

Describes the history of the representations of curves, from shipbuilding to modern computer modeling.

Splines are types of curves, originally developed for ship-building in the days before computer modeling. Naval architects needed a way to draw a smooth curve through a set of points.

The solution was to place metal weights (called knots) at the control points, and bend a thin metal or wooden beam (called a spline) through the weights.

The physics of the bending spline meant that the influence of each weight was greatest at the point of contact, and decreased smoothly further along the spline. To get more control over a certain region of the spline, the draftsman simply added more weights.

This scheme had obvious problems with data exchange! People needed a mathematical way to describe the shape of the curve. Cubic Polynomials Splines are the mathematical equivalent of the draftsman’s wooden beam. Polynomials were extended to B-splines (for Basis splines), which are sums of lower-level polynomial splines.

Then B-splines were extended to create a mathematical representation called NURBS, which are used by AliasStudio.

Mathematical representations of curves

Explains the mathematical basis of the curve representation used by AliasStudio.

Polynomial equations

Starting with the simplest mathematical representation, we all remember from geometry class that we can represent a (two dimensional) line with an equation like y = 2x. For each value of x, we multiply it by 2 to get the value of y, and plot the two values on a graph.

The generalized form of this type of equation is ax + by = c. The expression to the left of the equals sign is called a polynomial (“poly” means many. It refers to the fact that the expression has more than one term).

We can make more complicated expressions where x is multiplied by itself, as y = x * x * x. Instead of writing out all the x’s in a term, we usually just count them and write the count as a superscript. The superscript is called “the exponent”. So the expression above is written as y = x3.

We can write polynomials with exponents, such as: y = ax2 + bx + c (You may recall from math class that this is a quadratic equation). The exponent (the 2) on the first occurrence of x means that the graph of this function is curved rather than straight.

Degree

The degree of a polynomial equation is the largest exponent in the equation. Recall that the largest exponent on the equation for a line was 1. (When a term has no visible exponent, that is the same as an exponent of 1.)

Parametric representations

There are two general ways to write an equation for a curve. The implicit representation combines every variable in one long, non-linear equation, such as: ax3 + by2 + 2cxy + 2dx +2ey +f = 0.

In this representation, to calculate the x and y values to plot them on a graph, we must solve the entire non-linear equation.

The parametric representation rewrites the equation into shorter, easily solved equations that translate one variable into values for the others: x = a + bt + ct2 + dt3 + ... y = g + ht + jt2 + kt3 + ...

Using this representation, the equations for x and y are simple. We just need a value for t, the point along the curve for which we want to calculate x and y.

You can visualize parametric curves as being drawn by a point moving through space. At any time t, we can calculate the x and y values of the moving point.

This is a very important point, because the concept of associating a parameter number with every point on the line is used by many tools. This corresponds to the U dimension of the curve.

Creating complex curves

The lower the degree of a curve equation, the simpler the curve described. What if we want to represent complex curves? The simple answer might be to increase the degree of the curve, but this is not very efficient. The higher the degree of the curve, the more computations are required. Also, curves with degree higher than 7 are subject to wide oscillations in their shape, which makes them impractical for interactive modeling.

The answer is to join relatively low-degree (1 to 7) curve equations together as segments of a larger, more complex composite curve. The points at which the curve segments, or spans, join together is called an edit point.

Degree 5 and degree 7 curves are only available in some products or as purchasable options.

Higher degree curves should not be completely discounted, however. Degree 5 and 7 curves have certain advantages such as smoother curvature and more “tension”. They are often used in automotive design.

Smooth joins

A type of curve developed in the auto industry and familiar to anyone who works with common illustration programs is the Bezier curve. Bezier curves combine cubic curve segments, each with four control points (the start and end points, and two “handles”). The problem with Bezier curves is that the joins between segments are not necessarily smooth.

The solution to this problem, used by NURBS, is to use the last control points of the previous span as the first control points of the current span. This ensures smooth joins between curve segments. (Bezier curves can still be simulated perfectly using NURBS curves with multi-knots).

The degree of the curve determines the smoothness of the joins between spans. Degree 1 (linear) curves give positional continuity at the join. Degree 2 (quadratic) curves give tangent continuity. Degree 3 (cubic) curves give curvature continuity.

NURBS

Describes the meaning of NURBS, the curve and surface representation used for modeling in AliasStudio.

NURBS stands for Non-Uniform Rational B-Splines.

For more information on NURBS objects, see the following:

Curves

Surfaces

Object properties