Transform2D

Transformada 2D (matriz 2×3).

Descripción

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 three Vector2 values: x, y, and the origin.

For more information, read the "Matrices and transforms" documentation article.

Tutoriales

Propiedades

Vector2

origin

Vector2( 0, 0 )

Vector2

x

Vector2( 1, 0 )

Vector2

y

Vector2( 0, 1 )

Métodos

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

bool

is_equal_approx ( Transform2D transform )

Transform2D

orthonormalized ( )

Transform2D

rotated ( float phi )

Transform2D

scaled ( Vector2 scale )

Transform2D

translated ( Vector2 offset )

Variant

xform ( Variant v )

Variant

xform_inv ( Variant v )

Constantes

  • IDENTITY = Transform2D( 1, 0, 0, 1, 0, 0 ) --- La identidad Transform2D sin traducción, rotación o escalamiento aplicado. Cuando se aplica a otras estructuras de datos, IDENTITY no realiza ninguna transformación.

  • FLIP_X = Transform2D( -1, 0, 0, 1, 0, 0 ) --- El Transform2D que volteará algo a lo largo del eje X.

  • FLIP_Y = Transform2D( 1, 0, 0, -1, 0, 0 ) --- El Transform2D que volteará algo a lo largo del eje Y.

Descripciones de Propiedades

Default

Vector2( 0, 0 )

El vector de origen (columna 2, la tercera columna). Equivalente al índice del indice 2. El vector de origen representa la traslación.


Default

Vector2( 1, 0 )

El vector X de la matriz base (columna 0). Equivalente al índice de la matriz 0.


Default

Vector2( 0, 1 )

El vector Y de la matriz base (columna 1). Equivalente al índice de la matriz 1.

Descripciones de Métodos

Construye la transformada a partir de una 3D Transform.


Construye la transformación a partir de 3 valores de Vector2 que representan x, y, y el origin (los tres vectores de la columna).


Construye la transformada a partir de un ángulo (en radianes) y posición dados.


Devuelve el inverso de la transformada, bajo el supuesto de que la transformación se compone de rotación, escalado y traslación.


Devuelve un vector transformado (multiplicado) por la matriz base.

Este método no tiene en cuenta la translación (el vector de origen.


Devuelve un vector transformado (multiplicado) por la matriz de base inversa.

Este método no tiene en cuenta la traducción (el vector de origen).


Devuelve el origen de la transformada (translación).


Devuelve la rotación de la transformada (en radianes).


Devuelve la escala.


Returns a transform interpolated between this transform and another by a given weight (on the range of 0.0 to 1.0).


Devuelve el inverso de la transformada, bajo el supuesto de que la transformación se compone de rotación y traslación (sin escalamiento, utilice affine_inverse para las transformadas con escalamiento).


Devuelve true si esta transformada y transform son aproximadamente iguales, llamando a is_equal_approx en cada componente.


Devuelve la transformada con la base ortogonal (90 grados), y los vectores del eje normalizado (escala de 1 o -1).


Gira la transformación por el ángulo dado (en radianes), usando la multiplicación de la matriz.


Escala la transformación por el factor de escala dado, usando la multiplicación de la matriz.


Traduce la transformación por el desplazamiento dado, relativo a los vectores base de la transformación.

A diferencia de rotated y scaled, éste no utiliza la multiplicación de la matriz.


Transforms the given Vector2, Rect2, or PoolVector2Array by this transform.


Inverse-transforms the given Vector2, Rect2, or PoolVector2Array by this transform, under the assumption that the transformation is composed of rotation and translation (no scaling). Equivalent to calling inverse().xform(v) on this transform. For affine transformations (e.g. with scaling) see affine_inverse method.