Compatible With ScriptsCompatible With ExpressionsCompatible With The Command Line

 

double AlignQuadAbs (object master_0, object master_1, object master_2, object master_3, object slave, double u, double v, double pos_fader, double rot_fader)

 

Return Value: 1 = success, 0 = failure

 

Arguments:

master_0

first master item

master_1

second master item

master_2

third master item

master_3

fourth master item

slave

item to be positioned and orientated

u

position between master_0 and master_1 ( 0.0 -> 1.0 ) (allows over-interpolation)

v

position between master_2 and master_3 ( 0.0 -> 1.0 ) (allows over-interpolation)

pos_fader

0.0 = full effect on position, 1.0 = no effect on position ( 0.0 -> 1.0 ) (does not allow over-interpolation)

rot_fader

0.0 = full effect on orientation, 1.0 = no effect on orientation ( 0.0 -> 1.0 ) (does not allow over-interpolation)

 

Imagine that master_0 through master_3 are the vertices of a quad polygon. The function then positions slave on that polygon at coordinates u and v. If the rot_fader does not equal 1.0 then the local Y axis of slave will point in the direction of the polygon's surface normal, local X will be aligned to the polygon's u axis and local Z will be aligned to the polygon's v axis.

 

Example:

Exp_1
|_ AlignLinearAbs(Null_1, Null_2, Null_2, Null_4, Null, 0.5, 0.5, 0.0, 0.0 )

 

Positions Null in the middle of the polygon defined by Null_1 -> Null_4 and aligns it's local Y to the surface normal of that polygon.

Note: The surface normal direction is determined by the order of the master items. Clockwise looking in the -Y direction will define a normal pointing in +Y.

Converted from CHM to HTML with chm2web Pro 2.82 (unicode)