W3cubDocs

/Godot 3.1

Transform

Category: Built-In Types

Brief Description

3D Transformation. 3x4 matrix.

Properties

Basis basis
Vector3 origin

Methods

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 )
Variant xform ( Variant v )
Variant xform_inv ( Variant v )

Constants

  • IDENTITY = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )Transform with no translation, rotation or scaling applied. When applied to other data structures, IDENTITY performs no transformation.
  • FLIP_X = Transform( -1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )Transform with mirroring applied perpendicular to the YZ plane.
  • FLIP_Y = Transform( 1, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 0 )Transform with mirroring applied perpendicular to the XZ plane.
  • FLIP_Z = Transform( 1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0 )Transform with mirroring applied perpendicular to the XY plane.

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.

Tutorials

Property Descriptions

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.

Method Descriptions

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).

Constructs the Transform from a Basis and Vector3.

Constructs the Transform from a Transform2D.

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

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.

Variant xform ( Variant v )

Transforms the given Vector3, Plane, or AABB by this transform.

Variant xform_inv ( Variant v )

Inverse-transforms the given Vector3, Plane, or AABB by this transform.

© 2014–2019 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
http://docs.godotengine.org/en/3.1/classes/class_transform.html