Interface Matrix

変換行列を表すインターフェース。 通常ゲーム開発者が本インターフェースを直接利用する事はない。

interface Matrix {
    clone(): Matrix;
    multiply(matrix: Matrix): void;
    multiplyInverseForPoint(point: CommonOffset): CommonOffset;
    multiplyLeft(matrix: Matrix): void;
    multiplyNew(matrix: Matrix): Matrix;
    multiplyPoint(point: CommonOffset): CommonOffset;
    reset(x?: number, y?: number): void;
    scale(x: number, y: number): void;
    update(
        width: number,
        height: number,
        scaleX: number,
        scaleY: number,
        angle: number,
        x: number,
        y: number,
        anchorX: null | number,
        anchorY: null | number,
    ): void;
    updateByInverse(
        width: number,
        height: number,
        scaleX: number,
        scaleY: number,
        angle: number,
        x: number,
        y: number,
        anchorX: null | number,
        anchorY: null | number,
    ): void;
}

Methods

  • この変換行列に別の変換行列を右側から掛け合わせる。

    Parameters

    • matrix: Matrix

      掛け合わせる変換行列

    Returns void

  • この変換行列を逆行列に変換した結果を引数の座標系に適用した座標値を返す。 この変換行列の値自体や、引数の値は変更されない。

    Parameters

    Returns CommonOffset

  • この変換行列に別の変換行列を左側から掛け合わせる。

    Parameters

    • matrix: Matrix

      掛け合わせる変換行列

    Returns void

  • この変換行列に別の変換行列を掛け合わせた新しい変換行列を返す。

    Parameters

    • matrix: Matrix

      掛け合わせる変換行列

    Returns Matrix

  • 値を単位行列にリセットする。x/yの座標情報を初期値に反映させることも出来る。

    Parameters

    • Optionalx: number

      x座標。省略時は0として処理される

    • Optionaly: number

      y座標。省略時は0として処理される

    Returns void

  • 拡縮を変換行列に反映させる。

    Parameters

    • x: number

      X方向の拡縮律

    • y: number

      y方向の拡縮律

    Returns void

  • 2D object利用の一般的な値を基に変換行列の値を再計算する。

    Parameters

    • width: number

      対象の横幅

    • height: number

      対象の縦幅

    • scaleX: number

      対象の横方向への拡大率

    • scaleY: number

      対象の縦方向への拡大率

    • angle: number

      角度。単位は degree であり radian ではない

    • x: number

      x座標

    • y: number

      y座標

    • anchorX: null | number

      アンカーの横位置。単位は相対値(左端が 0、中央が 0.5、右端が 1.0)である。

    • anchorY: null | number

      アンカーの縦位置。単位は相対値(上端が 0、中央が 0.5、下端が 1.0)である。

    Returns void

  • update() によって得られる行列の逆変換になるよう変換行列の値を再計算する。

    Parameters

    • width: number

      対象の横幅

    • height: number

      対象の縦幅

    • scaleX: number

      対象の横方向への拡大率

    • scaleY: number

      対象の縦方向への拡大率

    • angle: number

      角度。単位は degree であり radian ではない

    • x: number

      x座標

    • y: number

      y座標

    • anchorX: null | number

      アンカーの横位置。単位は相対値(左端が 0、中央が 0.5、右端が 1.0)である。

    • anchorY: null | number

      アンカーの縦位置。単位は相対値(上端が 0、中央が 0.5、下端が 1.0)である。

    Returns void