RotateAtTarget

MacroModule

authors

Christian Schumann, Christian Rieder

package

FMEstable/ReleaseMeVis

definition

RotateAtTarget.def

keywords

lookAt, upVector

Purpose

Computes orientation for given position, target point and up-vector.

Details

Computes a rotation that rotates a vector (0,0,1) such that it points from In Position to In Target. Since there are unlimited rotations yielding that result, an additional In Up Vector constraints the rotation in order to guide the the orientation of the local y-axis.

Windows

Default Panel

../../../Projects/RotateAtTarget/Modules/mhelp/Images/Screenshots/RotateAtTarget._default.png

Parameter Fields

Field Index

[]: Trigger

Matrix: Matrix

Axis Angle: Vector4

On Input Change Behavior: Enum

Clear: Trigger

Quaternion: Vector4

doNotClearOnFailedUpdate: Bool

Status Code: Enum

Has Valid Output: Bool

Status Message: String

In Position: Vector3

Update: Trigger

In Target: Vector3

In Up Vector: Vector3

Visible Fields

In Position

name: inPosition, type: Vector3, default: 0 0 0, deprecated name: position

Defines the position

In Target

name: inTarget, type: Vector3, default: 0 0 0, deprecated name: target

Defines the target

In Up Vector

name: inUpVector, type: Vector3, default: 0 1 0, deprecated name: upVector

Defines an upVector

Matrix

name: outRotationMatrix, type: Matrix, persistent: no, deprecated name: rotationMatrix

The result orientation (Matrix-Representation)

Axis Angle

name: outAxisAngleRotation, type: Vector4, persistent: no, deprecated name: axisAngleRotation

The result orientation (Axis-Angle-Representation)

Quaternion

name: outQuaternionRotation, type: Vector4, persistent: no, deprecated name: quaternionRotation

The result orientation (Quaternion-Representation)

Update

name: update, type: Trigger

Initiates update of all output field values.

Clear

name: clear, type: Trigger

Clears all output field values to a clean initial state.

On Input Change Behavior

name: onInputChangeBehavior, type: Enum, default: Clear, deprecated name: shouldAutoUpdate,shouldUpdateAutomatically

Declares how the module should react if a value of an input field changes.

Values:

Title

Name

Deprecated Name

​Update

​Update

​TRUE

​Clear

​Clear

​FALSE

[]

name: updateDone, type: Trigger, persistent: no

Notifies that an update was performed (Check status interface fields to identify success or failure).

Has Valid Output

name: hasValidOutput, type: Bool, persistent: no

Indicates validity of output field values (success of computation).

Status Code

name: statusCode, type: Enum, persistent: no

Reflects module’s status (successful or failed computations) as one of some predefined enumeration values.

Values:

Title

Name

​Ok

​Ok

​Invalid input object

​Invalid input object

​Invalid input parameter

​Invalid input parameter

​Internal error

​Internal error

Status Message

name: statusMessage, type: String, persistent: no

Gives additional, detailed information about status code as human-readable message.

Hidden Fields

doNotClearOnFailedUpdate

name: doNotClearOnFailedUpdate, type: Bool, persistent: no

Prevents automated clear after update failed. This does not affect status fields. It enables the developer to analyze module’s state after failure.