## 5.2 LINES/CURVES

• Lines and curves are typically fit to data points.

• Typical distinctions are,

Two points define,

- line (straight)

Three points define,

- a circle/arc

- a complex curve that fits at the ends

Four or more points define,

- a complex curve (spline) fit exactly to all points

- a complex curve (spline) fit exactly at the ends only

• A spline based curve is typically represented with a polynomial.

### 5.2.1 Lines

• Lines are typically represented in a parametric form. As we vary a parameter we move along the line. (Note: typical parameter variables are s,t,u,v)

• Note: lines can also be represented in explicit form, although this is not as useful for mathematical modeling.

### 5.2.2 Splines

• A spline curve can interpolate or approximate a curve,

• A bumpy curve will require a more complicated function (a polynomial with more degrees of freedom).

#### 5.2.2.1 - Cubic

• A cubic spline typically gives the best data fit. The example below is a parametric fit to four data points.

• Try the example below

• As we deal with different splines, the coefficient matrix changes,

• some of the different spline types are,

- coombs

- bezier

- B-spline

-

#### 5.2.2.2 - Bezier Curves

• A bezier curve is approximated. The two endpoints are clearly defined, but the two inside points determine the internal shape by setting slopes at the ends,

• the basic relationships are,

• Consider the shape of these curves are fixed to go through the endpoints, but are only guided by the two internal points

• Instead of the matrix form for representing splines, we can also use blending functions (the results are the same for a 4 point set). And, this allows us to generalize to a larger number of degrees of freedom.

• When using blending functions we can easily use more than three points (n=3) to define the spline.

• Bezier curves are distinctive in that changing an endpoint or control point will change the shape of the entire curve.

#### 5.2.2.3 - Ferguson/Hermite Curves

• These curves are defined by endpoints and slopes at the endpoints. Note - here we need to specify derivatives.

• the basic relationships are,

• These curves are of the greatest use when the endpoints of the line, and the slopes at those points are of more interest than the internal shape of the curve.

#### 5.2.2.4 - Catmull-Rom Curves

• These curves go through every point, but we have a tightness variable ‘c’.

• As the value of ‘c’ goes to zero, the connecting lines become straight.

• The basic form of the matrix is,

#### 5.2.2.5 - B-Splines

***************** REVISE TO CLARIFY **************************

• B-Splines are typically defined using blending functions, and they will often have more than four points in their definition.

• The basic form for the nonuniform B-Spline is shown below in the Cox-deBoor recursive function.

• If the intervals are all equal we call this uniform. When the intervals are different lengths we call this nonuniform. A nonuniform curve can take on much more complicated shapes.

• We can also weight the points to increase their effects on the final curve shape. This creates a rational spline.

• Non-Rational Uniform B-Spline (NURBS) curves are popular in CAD systems as they are the most general form of the spline curves. They combine both the rational weighting of points, and non-uniform knot spacing.

• Find a point at 140 degrees for NURB curve that models a sine wave from 0 to 180 degrees.

• We can sometimes double up (or more) points to increase the effect of a weighting. This is more valuable when the function is not rational. If we do this in the middle of a curve it tends to pull the curve tight. When done at the ends it makes the ends more regular.

• Quite often we will attach two spline segments in series. The connection between the segments will be said to have continuity. A zero order continuity means they touch, 1st order means they are smooth, etc. It is easier to ensure continuity with splines such as the Ferguson.

• A closed spline curve fully connects back to itself. (i.e., forms a loop)