ANGLEBETWEEN Angle Between: ANGLEBETWEEN( <vector>, <vector>)
Returns the angle between the two vectors in degrees. The two parameters must be expressions that evaluate to a vector type. To get the vector from a feature, for example, you will need to use the feature ID followed by the .IJK extension. See the example below:

Example:

F1 =GENERIC/POINT,DEPENDENT,CARTESIAN,$

NOM/XYZ,<3,3,3>,$

MEAS/XYZ,<3,3,3>,$

NOM/IJK,<1,0,0>,$

MEAS/IJK,<1,0,0>

F2 =GENERIC/POINT,DEPENDENT,CARTESIAN,$

NOM/XYZ,<10,10,10>,$

MEAS/XYZ,<10,10,10>,$

NOM/IJK,<0,0,1>,$

MEAS/IJK,<0,0,1>

ASSIGN/V1=F1.IJK

ASSIGN/V2=F2.IJK

ASSIGN/V3=ANGLEBETWEEN(V1,V2)

COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,

"The angle between " + V1 + " and " + V2 + " is: " + V3

CROSS Cross Product: CROSS(<Point>, <Point>)
Return value is of type point and is the cross product of first and second expressions .

DELTA Vector Offset: DELTA(<Point>, <Point>, <Double>)
The function takes the first expression (point) and calculates a new point in the direction of the second expression (vector) at an offset of the third expression. For example, DELTA(MPOINT(0,0,0), MPOINT(1,0,0), 10) returns the point 10,0,0.

DOT Dot Product: DOT(<Point>, <Point>)
Returns the dot product of the two points (vectors).

UNIT: Unit Vector: UNIT(<Point>)
Returns the point divided by its length. For example, UNIT(MPOINT(0,0,0)) returns the point 0,0,1.

MPOINT Point Coercion: MPOINT(<Expression1>, <Expression2>, <Expression3>)
Coerces the three expressions to a type Point.

Example:
ASSIGN/V1 = MPOINT(2.5,3.6,4)

V1.X has a value of 2.5
V1.Y has a value of 3.6
V1.Z has a value of 4.0

See "Point Coercion".

#### Point Functions

ANGLEBETWEEN

CROSS

DELTA

DOT

UNIT

MPOINT