Mathematical representations of curves
 
 
 

Polynomial equations are the mathematical basis of the curve representation used by Alias.

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 previous 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 - 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.

Do not completely discount higher degree curves, 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.