# PRINCIPLEEXTENSION OF EXPRESSIONEXTENSION OF A SURFACEEXTENSION OF A TRAJECTORY

## PRINCIPLE

Given a 3D polygonal line (x1, y1, z1, x2, y2, z2, ..., xn, yn, zn) of n vertices, an algorithm constructs a curve extension line polygonal 3D, approximating a curve passing through all vertices of the first.
A first extension parameter gives the number of points added to each segment of the polygonal line.
A second parameter controls the curvature.
A third parameter allows you to regulary distribute the points on the curve.
If e is the first paramater, the generated polygonal line contains:
(n - 1) * (e + 1) + n vertices.
See also
adjust.

## EXTENSION OF EXPRESSION

`ext(e,c,f,x1,y1,z1,x2,y2,z2,...,xn,yn,zn)` Returns a 3D polygonal line approximating a curve passing through the vertices (x1,y1,z1), (x2,y2,z2), ...,(xn,yn,zn)
e = number of points added on each segment.
c = curvature coefficient: (0: flat, 2: very curved), a good value is 1.
f = 1: regulary distribute the points on the curve.

## EXTENSION OF A SURFACE

### Extension on a volume

Generalized to a 3D grid space, this algorithm provides a finer grid approximating a curved surface passing through all the vertices of the first.
Syntax: `ext vol n=e,c,f;`
e = extension: the grid has [(n-1)*(e+1)+n]*[(n-1)*(e+1)+n] vertices.
c = curvature coefficien: Between 0(flat) to 2(very curved), 1 is a good value.
If f = 1 regulary distribute the points on thesurface.
Note:
By default, the curvature coefficient is the same on the entire volume. Command coe vertex (s) vol(id)=c assigns coefficient c especially at vertex s of volume id.
Use:
To create a fold on a surface (upper edge of a lip for example) it is sufficient to assign a zero coefficient to all the vertices of the line.

### Extension on a facet

`ext fac(num) vol(id)=e,c,f;`
Assigns to facet num of volume id the extension (e,c,f));
Notes:
1) Two adjacent faces provided with extensions of different coefficients will present a geometric discontinuity at their junction.
2) The extension is calculated dynamically display the volume, however, the command generate ext can actually generate all the vertices and facets of the extension curve..
3) A volume with expansion and another property (like motif) will be applied to the extension.

## EXTENSION OF A TRAJECTORY

An extension assigned to a trajectory, or more generally, to any law change, performs smoothing on the geometric object corresponding.
Example:
`traj anc number 1;` /* Builds a trajectory */
```poi 0;poi 200,-200;poi 200,0;          end;          ext traj 1=20,1;``` /* geometric smoothing */