# jit.path

## Description

The jit.path object takes a series of N-dimensional points retrieves interpolated values based on an input parameter. It is useful for creating user interfaces for parameter morphing.

## Examples

## Discussion

The jit.path object performs this interpolation using either linear or Hermite spline interpolation. The Hermite splines are automatically calculated using the Catmull-Rom method, which creates a single tangent for each point. The interpolated values are retrieved based on an input parameter. There is also the option of outputting a matrix out the second outlet filled with the interpolated values, with the number of planes equal to the dimension of the path.

Points are added to the path either with messages, or by passing in a 1D matrix of point values. A 2D matrix will be output containing the path points in the first row, and the automatically calculated tangents in the second row.

The length of the path can be calculated by treating the first three dimensions as x/y/z position values. The path can optionally be evaluated based on the length.

## Attributes

### autohandles [int]

Enable the calculation of handle values every time the path is edited (default = 1).

### closed [int]

Indicates the path is closed (first and last points are equal).

### dim [int]

Path dimension and number of planes in point and eval matrices (default = 0).

### duration [float]

Path duration in seconds (default = 0.)

### evalmatrixmode [symbol]

Determines how the eval-matrix is evaluated (default = eval).

Possible values:

'eval'
( Normalized by pointcount )

'evallength'
( Normalized by pathlength )

### evalmatrixname [symbol]

The eval matrix name (default = UID). This is a read-only attribute and is useful in conjunction with the jit.path in javascript.

message when accessing### evalmatrixsize [int]

The size of the eval-matrix (default = 100).

### grain [int]

Time grain used when animating in milliseconds (default = 50).

### interpmode [symbol]

Path interpolation method (default = linear).

Possible values:

'linear'
( Linear interpolation )

'spline'
( Hermite interpolation )

### length [float]

Path length (default = 0.)

### loop [int]

Path animation loop method (default = 1).

Possible values:

0 = 'off'

1 = 'on'

2 = 'palindrome'

### outmatrixname [symbol]

The point output matrix name (default = UID). This is a read-only attribute and is useful in conjunction with the jit.path in javascript.

message when accessing### play [int]

Enable path animation (default = 0).

### pointcount [int]

Number of path points (default = 0).

### rate [float]

Animation rate value (default = 1.)

### thru [int]

Output point matrix receiving input matrix (default = 1).

### time [float]

Current path time value (default = 0.)

### timemode [symbol]

Determine how time values added to the path (default = relative).

Possible values:

'absolute'
( Time value is set to argument )

'relative'
( Time value is set to argument plus previous time value )

### usetime [int]

Determine if first path dim is used as time value (default = 0).

### Common Box Attributes

## Messages

### bang

### append

#### Arguments

### calc_evalmatrix

### calc_outmatrix

### calchandles

### clear

### closepath

### delete

#### Arguments

### edit

#### Arguments

values [list]

### edithandle

#### Arguments

values [list]

### eval

#### Arguments

### evallength

#### Arguments

### evaltime

#### Arguments

### gethandle

#### Arguments

### getpoint

#### Arguments

*point*.

### insert

#### Arguments

values [list]

### next

### outputeval

### prev

### settime

#### Arguments

### sorttime

### start

### stop

## See Also

Name | Description |
---|---|

jit.anim.path | |

jit.gl.path |