/Godot 3.0

Transform

Category: Built-In Types

Brief Description

3D Transformation. 3x4 matrix.

Member Functions

 Transform Transform ( Vector3 x_axis, Vector3 y_axis, Vector3 z_axis, Vector3 origin ) Transform Transform ( Basis basis, Vector3 origin ) Transform Transform ( Transform2D from ) Transform Transform ( Quat from ) Transform Transform ( Basis from ) Transform affine_inverse ( ) Transform interpolate_with ( Transform transform, float weight ) Transform inverse ( ) Transform looking_at ( Vector3 target, Vector3 up ) Transform orthonormalized ( ) Transform rotated ( Vector3 axis, float phi ) Transform scaled ( Vector3 scale ) Transform translated ( Vector3 ofs ) var xform ( var v ) var xform_inv ( var v )

Member Variables

• Basis basis - The basis is a matrix containing 3 Vector3 as its columns: X axis, Y axis, and Z axis. These vectors can be interpreted as the basis vectors of local coordinate system traveling with the object.
• Vector3 origin - The translation offset of the transform.

Description

Represents one or many transformations in 3D space such as translation, rotation, or scaling. It consists of a Basis “basis” and an Vector3 “origin”. It is similar to a 3x4 matrix.

Member Function Description

Transform Transform ( Vector3 x_axis, Vector3 y_axis, Vector3 z_axis, Vector3 origin )

Constructs the Transform from four Vector3. Each axis corresponds to local basis vectors (some of which may be scaled).

Transform Transform ( Basis basis, Vector3 origin )

Constructs the Transform from a Basis and Vector3.

Transform Transform ( Transform2D from )

Constructs the Transform from a Transform2D.

Transform Transform ( Quat from )

Constructs the Transform from a Quat. The origin will be Vector3(0, 0, 0).

Transform Transform ( Basis from )

Constructs the Transform from a Basis. The origin will be Vector3(0, 0, 0).

Transform affine_inverse ( )

Returns the inverse of the transform, under the assumption that the transformation is composed of rotation, scaling and translation.

Transform interpolate_with ( Transform transform, float weight )

Interpolates the transform to other Transform by weight amount (0-1).

Transform inverse ( )

Returns the inverse of the transform, under the assumption that the transformation is composed of rotation and translation (no scaling, use affine_inverse for transforms with scaling).

Transform looking_at ( Vector3 target, Vector3 up )

Returns a copy of the transform rotated such that its -Z axis points towards the target position.

The transform will first be rotated around the given up vector, and then fully aligned to the target by a further rotation around an axis perpendicular to both the target and up vectors.

Operations take place in global space.

Transform orthonormalized ( )

Returns the transform with the basis orthogonal (90 degrees), and normalized axis vectors.

Transform rotated ( Vector3 axis, float phi )

Rotates the transform around given axis by phi. The axis must be a normalized vector.

Transform scaled ( Vector3 scale )

Scales the transform by the specified 3D scaling factors.

Transform translated ( Vector3 ofs )

Translates the transform by the specified offset.

var xform ( var v )

Transforms the given vector “v” by this transform.

var xform_inv ( var v )

Inverse-transforms the given vector “v” by this transform.

© 2014–2018 Juan Linietsky, Ariel Manzur, Godot Engine contributors