public void SetTransform(Vector2 position, Angle rotation, Vector2 scale) { CheckDisposed(); var transform = Godot.Transform2D.Identity.Rotated((float)rotation.Theta).Scaled(scale.Convert()); SetTransform2DRotationAndScale(ref transform, rotation.Theta, scale); transform.o = position.Convert(); VS.CanvasItemAddSetTransform(Item, transform); }
public void SetTransform(Matrix3 matrix) { CheckDisposed(); if (_renderHandle != null) { _renderHandle.SetModelTransform(ref matrix, _handleId); } else if (Item != null) { VS.CanvasItemAddSetTransform(Item, matrix.Convert()); } }
public void SetTransform(Vector2 position, Angle rotation, Vector2 scale) { CheckDisposed(); if (_renderHandle != null) { var matrix = Matrix3.Identity; (matrix.R0C0, matrix.R1C1) = scale; matrix.Rotate(rotation); matrix.R0C2 += position.X; matrix.R1C2 += position.Y; _renderHandle.SetModelTransform(matrix, _handleId); } else if (Item != null) { var transform = Godot.Transform2D.Identity.Rotated((float)rotation.Theta).Scaled(scale.Convert()); SetTransform2DRotationAndScale(ref transform, rotation.Theta, scale); transform.origin = position.Convert(); VS.CanvasItemAddSetTransform(Item, transform); } }
public void SetTransform(Matrix3 matrix) { CheckDisposed(); VS.CanvasItemAddSetTransform(Item, matrix.Convert()); }