Transform2D
Category: Built-In Types
Brief Description
2D Transformation. 3x2 matrix.
Properties
Vector2 | origin |
Vector2 | x |
Vector2 | y |
Methods
Transform2D | Transform2D ( Transform from ) |
Transform2D | Transform2D ( Vector2 x_axis, Vector2 y_axis, Vector2 origin ) |
Transform2D | Transform2D ( float rotation, Vector2 position ) |
Transform2D | affine_inverse ( ) |
Vector2 | basis_xform ( Vector2 v ) |
Vector2 | basis_xform_inv ( Vector2 v ) |
Vector2 | get_origin ( ) |
float | get_rotation ( ) |
Vector2 | get_scale ( ) |
Transform2D | interpolate_with ( Transform2D transform, float weight ) |
Transform2D | inverse ( ) |
Transform2D | orthonormalized ( ) |
Transform2D | rotated ( float phi ) |
Transform2D | scaled ( Vector2 scale ) |
Transform2D | translated ( Vector2 offset ) |
Variant | xform ( Variant v ) |
Variant | xform_inv ( Variant v ) |
Constants
- IDENTITY = Transform2D( 1, 0, 0, 1, 0, 0 ) — Transform2D with no translation, rotation or scaling applied. When applied to other data structures, IDENTITY performs no transformation.
- FLIP_X = Transform2D( -1, 0, 0, 1, 0, 0 ) — Transform2D with mirroring applied parallel to the X axis.
- FLIP_Y = Transform2D( 1, 0, 0, -1, 0, 0 ) — Transform2D with mirroring applied parallel to the Y axis.
Description
Represents one or many transformations in 2D space such as translation, rotation, or scaling. It consists of a two Vector2 x, y and Vector2 “origin”. It is similar to a 3x2 matrix.
Property Descriptions
- Vector2 origin
The transform’s translation offset.
- Vector2 x
The X axis of 2x2 basis matrix containing 2 Vector2s as its columns: X axis and Y axis. These vectors can be interpreted as the basis vectors of local coordinate system traveling with the object.
- Vector2 y
The Y axis of 2x2 basis matrix containing 2 Vector2s as its columns: X axis and Y axis. These vectors can be interpreted as the basis vectors of local coordinate system traveling with the object.
Method Descriptions
- Transform2D Transform2D ( Transform from )
Constructs the transform from a 3D Transform.
- Transform2D Transform2D ( Vector2 x_axis, Vector2 y_axis, Vector2 origin )
Constructs the transform from 3 Vector2s representing x, y, and origin.
- Transform2D Transform2D ( float rotation, Vector2 position )
Constructs the transform from a given angle (in radians) and position.
- Transform2D affine_inverse ( )
Returns the inverse of the matrix.
Transforms the given vector by this transform’s basis (no translation).
Inverse-transforms the given vector by this transform’s basis (no translation).
- Vector2 get_origin ( )
Returns the transform’s origin (translation).
- float get_rotation ( )
Returns the transform’s rotation (in radians).
- Vector2 get_scale ( )
Returns the scale.
- Transform2D interpolate_with ( Transform2D transform, float weight )
Returns a transform interpolated between this transform and another by a given weight (0-1).
- Transform2D 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).
- Transform2D orthonormalized ( )
Returns the transform with the basis orthogonal (90 degrees), and normalized axis vectors.
- Transform2D rotated ( float phi )
Rotates the transform by the given angle (in radians).
- Transform2D scaled ( Vector2 scale )
Scales the transform by the given factor.
- Transform2D translated ( Vector2 offset )
Translates the transform by the given offset.
Transforms the given Vector2 or Rect2 by this transform.
Inverse-transforms the given Vector2 or Rect2 by this transform.