struct Godot::Transform2D

Overview

A 2x3 matrix (2 column vectors + origin) used for 2D affine transformations with 32-bit floating point precision.

Defined in:

libgodot/types/transform2d.cr

Constant Summary

FLIP_X = Transform2D.new(Vector2.new(-1.0_f32, 0.0_f32), Vector2.new(0.0_f32, 1.0_f32), Vector2.new(0.0_f32, 0.0_f32))
FLIP_Y = Transform2D.new(Vector2.new(1.0_f32, 0.0_f32), Vector2.new(0.0_f32, -1.0_f32), Vector2.new(0.0_f32, 0.0_f32))
IDENTITY = Transform2D.new

Constructors

Instance Method Summary

Constructor Detail

def self.new(x : Vector2 = Vector2.new(1.0_f32, 0.0_f32), y : Vector2 = Vector2.new(0.0_f32, 1.0_f32), origin : Vector2 = Vector2.new(0.0_f32, 0.0_f32)) #

def self.new(rot_radians : Number, pos : Vector2) #

def self.new(pointer : Pointer(Void)) #

Instance Method Detail

def !=(other : Transform2D) : Bool #

def *(vec : Vector2) : Vector2 #

def *(other : Transform2D) : Transform2D #

def ==(other : Transform2D) : Bool #

def affine_inverse : Transform2D #

def determinant : Float32 #

def get_origin : Vector2 #

def get_rotation : Float32 #

def get_scale : Vector2 #

def interpolate_with(other : Transform2D, weight : Number) : Transform2D #

def inverse : Transform2D #

def is_equal_approx(other : Transform2D) : Bool #

def origin : Vector2 #

def origin=(origin : Vector2) #

def orthonormalized : Transform2D #

def rotated(angle : Number) : Transform2D #

def scaled(scale : Vector2) : Transform2D #

def to_s(io : IO) : Void #
Description copied from struct Struct

Same as #inspect(io).


def translated(offset : Vector2) : Transform2D #

def x : Vector2 #

def x=(x : Vector2) #

def y : Vector2 #

def y=(y : Vector2) #