Table of Contents

Class GcAffine

Namespace
GameCanvas
Assembly
GameCanvas.dll

2次元アフィン変換

public static class GcAffine
Inheritance
GcAffine
Inherited Members

Fields

Identity

単位行列(なにも移動・回転・拡縮を行わない場合の変換行列)

public static readonly float2x3 Identity

Field Value

float2x3

Methods

CalcRotate(in float2x3)

変換行列から回転成分を取り出します

public static float CalcRotate(this in float2x3 mtx)

Parameters

mtx float2x3

変換行列

Returns

float

回転量(弧度法)

CalcScale(in float2x3)

変換行列から拡縮成分を取り出します

public static float2 CalcScale(this in float2x3 mtx)

Parameters

mtx float2x3

変換行列

Returns

float2

拡縮率

CalcTRS(in float2x3, out float2, out float, out float2)

変換行列から移動・回転・拡縮成分を取り出します

public static void CalcTRS(this in float2x3 mtx, out float2 translate, out float rotate, out float2 scale)

Parameters

mtx float2x3

変換行列

translate float2

移動量

rotate float

回転量(弧度法)

scale float2

拡縮率

FromRotate(in float)

回転成分から変換行列を作ります

public static float2x3 FromRotate(in float radian)

Parameters

radian float

回転量(弧度法)

Returns

float2x3

変換行列

FromRotate(in float2, in float)

ahchorを中心とした回転成分から変換行列を作ります

public static float2x3 FromRotate(in float2 ahchor, in float radian)

Parameters

ahchor float2

回転中心

radian float

回転量(弧度法)

Returns

float2x3

変換行列

FromScale(in float)

拡縮成分から変換行列を作ります

public static float2x3 FromScale(in float scale)

Parameters

scale float

拡縮率

Returns

float2x3

変換行列

FromScale(in float2)

拡縮成分から変換行列を作ります

public static float2x3 FromScale(in float2 scale)

Parameters

scale float2

拡縮率

Returns

float2x3

変換行列

FromShear(in float2)

せん断成分から変換行列を作ります

public static float2x3 FromShear(in float2 shear)

Parameters

shear float2

せん断係数

Returns

float2x3

変換行列

FromTRS(in float2, in float, in float2)

移動・回転・拡縮成分から変換行列を作ります

public static float2x3 FromTRS(in float2 translate, in float rotate, in float2 scale)

Parameters

translate float2

移動量

rotate float

回転量(弧度法)

scale float2

拡縮率

Returns

float2x3

変換行列

FromTS(in float2, in float2)

移動・拡縮成分から変換行列を作ります

public static float2x3 FromTS(in float2 translate, in float2 scale)

Parameters

translate float2

移動量

scale float2

拡縮率

Returns

float2x3

変換行列

FromTranslate(in float2)

移動成分から変換行列を作ります

public static float2x3 FromTranslate(in float2 translate)

Parameters

translate float2

移動量

Returns

float2x3

変換行列

GetShear(in float2x3)

変換行列からせん断成分を取り出します

public static float2 GetShear(this in float2x3 mtx)

Parameters

mtx float2x3

変換行列

Returns

float2

せん断係数

GetTranslate(in float2x3)

変換行列から移動成分を取り出します

public static float2 GetTranslate(this in float2x3 mtx)

Parameters

mtx float2x3

変換行列

Returns

float2

移動量

Mul(in float2x3, in float2)

行列とベクトルの積を求めます

public static float2 Mul(this in float2x3 mtx, in float2 vec)

Parameters

mtx float2x3

変換前の行列

vec float2

ベクトル

Returns

float2

行列とベクトルの積

Mul(in float2x3, in float2x3)

行列同士の積を求めます

public static float2x3 Mul(this in float2x3 lhs, in float2x3 rhs)

Parameters

lhs float2x3

左辺

rhs float2x3

右辺

Returns

float2x3

行列同士の積

Rotate(in float2, in float)

ベクトルを回転させます

public static float2 Rotate(this in float2 vec, in float radian)

Parameters

vec float2

回転前のベクトル

radian float

回転量(弧度法)

Returns

float2

回転後のベクトル

ToFloat4x4(in float2x3)

2次元変換行列を3次元変換行列に変換します

public static float4x4 ToFloat4x4(this in float2x3 mtx)

Parameters

mtx float2x3

2次元変換行列

Returns

float4x4

3次元変換行列