Transform2D
2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can represent transformations such as translation, rotation, or scaling. It consists of a three values: x, , and the origin.
For more information, read the “Matrices and transforms” documentation article.
Tutorials
Methods
- FLIP_X = Transform2D( -1, 0, 0, 1, 0, 0 ) —- The
Transform2D
that will flip something along the X axis. - FLIP_Y = Transform2D( 1, 0, 0, -1, 0, 0 ) —- The that will flip something along the Y axis.
Property Descriptions
- origin
The origin vector (column 2, the third column). Equivalent to array index 2
. The origin vector represents translation.
- Vector2 x
The basis matrix’s X vector (column 0). Equivalent to array index 0
.
- y
The basis matrix’s Y vector (column 1). Equivalent to array index 1
.
- Transform2D Transform2D ( from )
Constructs the transform from a 3D Transform.
Constructs the transform from 3 values representing x, , and the origin (the three column vectors).
- Transform2D ( float rotation, position )
Constructs the transform from a given angle (in radians) and position.
- Transform2D affine_inverse ( )
- basis_xform ( Vector2 v )
Returns a vector transformed (multiplied) by the basis matrix.
This method does not account for translation (the origin vector).
- basis_xform_inv ( Vector2 v )
Returns a vector transformed (multiplied) by the inverse basis matrix.
This method does not account for translation (the origin vector).
Returns the transform’s origin (translation).
- get_rotation ( )
Returns the transform’s rotation (in radians).
- Vector2 get_scale ( )
Returns the scale.
- interpolate_with ( Transform2D transform, weight )
Returns a transform interpolated between this transform and another by a given weight (on the range of 0.0 to 1.0).
- Transform2D inverse ( )
- is_equal_approx ( Transform2D transform )
Returns true
if this transform and transform
are approximately equal, by calling is_equal_approx
on each component.
- orthonormalized ( )
Returns the transform with the basis orthogonal (90 degrees), and normalized axis vectors (scale of 1 or -1).
- Transform2D rotated ( phi )
Rotates the transform by the given angle (in radians), using matrix multiplication.
- Transform2D scaled ( scale )
Scales the transform by the given scale factor, using matrix multiplication.
- Transform2D translated ( offset )
Translates the transform by the given offset, relative to the transform’s basis vectors.
Unlike rotated and , this does not use matrix multiplication.
- Variant xform ( v )
Transforms the given Vector2, , or PoolVector2Array by this transform.
- xform_inv ( Variant v )
Inverse-transforms the given , Rect2, or by this transform.