TransformSignal

The TransformSignal class monitors a scene transform.

Properties

PropertyDescription
position
(get) position: PointSignal
(set) (Not Available)


Represents the offset in the local coordinate system.
rotationX
(get) rotationX: ScalarSignal
(set) (Not Available)


Represents rotation about the X-axis of the local coordinate system, in radians. The signal value is in the range [-PI, PI].

Note: The order of operations (rotations in particular) is the same as in Transform. The rotations are applied to the object in Z-Y-X order. The X rotation is applied first to the object, therefore it is always performed in the object's local coordinate system.
rotationY
(get) rotationY: ScalarSignal
(set) (Not Available)


Represents rotation about the Y-axis of the rotated local coordinate system, in radians. The signal value is in the range [-PI/2, PI/2].

Note: The order of operations (rotations in particular) is the same as in Transform. The rotations are applied to the object in Z-Y-X order. The Y rotation is applied second to the object, therefore if the rotationX is not zero, then rotationY is applied not in the object's local coordinate system but in the rotated one.
rotationZ
(get) rotationZ: ScalarSignal
(set) (Not Available)


Represents rotation about the Z-axis of the rotated local coordinate system, in radians. The signal value is in the range [-PI, PI].

Note: The order of operations (rotations in particular) is the same as in Transform. The rotations are applied to the object in Z-Y-X order. The Z rotation is applied last to the object, therefore if the rotationX or rotationY is not zero, then rotationZ is applied not in the object's local coordinate system but in the rotated one.
scale
(get) scale: PointSignal
(set) (Not Available)


Represents scale in the local coordinate system.
scaleX
(get) scaleX: ScalarSignal
(set) (Not Available)


Represents scale along the X-axis of the local coordinate system.
scaleY
(get) scaleY: ScalarSignal
(set) (Not Available)


Represents scale along the Y-axis of the local coordinate system.
scaleZ
(get) scaleZ: ScalarSignal
(set) (Not Available)


Represents scale along the Z-axis of the local coordinate system.
x
(get) x: ScalarSignal
(set) (Not Available)


Represents the offset along the X-axis of the local coordinate system.
y
(get) y: ScalarSignal
(set) (Not Available)


Represents the offset along the Y-axis of the local coordinate system.
z
(get) z: ScalarSignal
(set) (Not Available)


Represents the offset along the Z-axis of the local coordinate system.

Methods

MethodDescription
applyTo
applyTo(transform: TransformSignal): TransformSignal


Returns a signal with the value that is equal to the value of the provided transformation with the transformation of the current TransformSignal applied to it.
applyToPoint
applyToPoint(signal: PointSignal): PointSignal


Returns a signal with the value that is equal to the value of the provided point with the transformation applied to it.
This performs a matrix multiplication of the provided point (with an implicit 1 in the 4th dimension) and the receiver transform, and divides by perspective.
applyToVector
applyToVector(signal: VectorSignal): VectorSignal


Returns a signal with the value that is equal to the value of the provided vector with the transformation applied to it.
This performs a matrix multiplication of the provided vector (with an implicit 0 in the 4th dimension) and the receiver transform, without change of position.
delayBy
delayBy(timeSpan: {milliseconds: number}): this

Delays a signal. The argument is an object with a "milliseconds" property specifying the delay duration in milliseconds.
expSmooth
expSmooth(dampFactor: number): TransformSignal


Smoothes a variable signal using exponential averaging over time. The argument specifies the dampening time constant in milliseconds.

Note: The smoothed transformation for a signal that specifies a rigid body transformation is guaranteed to be a rigid body transformation. The rotation component is smoothed in spherical coordinates using Slerp (spherical linear interpolation).

Note: See also ReactiveModule.expSmooth.
history
history(framesCount: number): TransformSignalHistory


Returns an object used to access signal values from past frames. The amount of frames tracked is customizable via framesCount parameter.
Historical signal values are going to be initialized with signal value at call time or using initialValues if provided.
inverse
inverse(): TransformSignal


Returns a signal with the value that is equal to the inverted transformation value of the given signal at any point of time.
lookAt
lookAt(targetPosition: PointSignal): TransformSignal
lookAt(targetPosition: PointSignal, selfUp: VectorSignal): TransformSignal

Default selfUp is ReactiveModule.vector(0, 1, 0).

Creates a scene object transform with rotation in direction of target.
Note: self needs to be pointing the scene object alongside the X axis.