Class Object2D

二次元の幾何的オブジェクト。位置とサイズ (に加えて傾きや透明度も) を持つ。 ゲーム開発者は E を使えばよく、通常このクラスを意識する必要はない。

Hierarchy

Implements

Constructors

Properties

_matrix: undefined | Matrix

変換行列のキャッシュ。 Object2D は状態に変更があった時、本値の_modifiedをtrueにする必要がある。 初期値は undefined であり、 getMatrix() によって必要な時に生成されるため、 if (this._matrix) this._matrix._modified = true という式で記述する必要がある。

エンジンに組み込まれているSprite等のエンティティ群は、 すでに本処理を組み込んでいるため通常ゲーム開発者はこの値を意識する必要はない。 Object2D を継承したクラスを新たに作る場合には、本フィールドを適切に操作しなければならない。

anchorX: null | number

オブジェクトのアンカーの横位置。アンカーについては以下の通り。

  • アンカーとして設定した箇所がこのオブジェクトの基点 (位置、拡縮・回転の基点) となる。
  • 単位は相対値 (左上端が (0, 0) 中央が (0.5, 0,5) 右下端が (1,1) ) である。 初期値は 0 である。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

NOTE: anchorX または anchorY のどちらを明示的に null に指定した場合、 このオブジェクトのアンカーは前バージョン(v2.x.x 以前)のデフォルトの挙動 (位置 x, y は左上端を基準に、拡大・縮小・回転の基点は中央を基準に決定) と同様になる。 これは前バージョンとの後方互換性のために存在する。

anchorY: null | number

オブジェクトのアンカーの縦位置。アンカーについては以下の通り。

  • アンカーとして設定した箇所がこのオブジェクトの基点 (位置、拡縮・回転の基点) となる。
  • 単位は相対値 (左上端が (0, 0) 中央が (0.5, 0,5) 右下端が (1,1) ) である。 初期値は 0 である。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

NOTE: anchorX または anchorY のどちらを明示的に null に指定した場合、 このオブジェクトのアンカーは前バージョン(v2.x.x 以前)のデフォルトの挙動 (位置 x, y は左上端を基準に、拡大・縮小・回転の基点は中央を基準に決定) と同様になる。 これは前バージョンとの後方互換性のために存在する。

angle: number

オブジェクトの回転。度数 (時計回り) で指定する。 初期値は 0 である。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

compositeOperation: undefined | CompositeOperationString | CompositeOperation

描画時の合成方法を指定する。 初期値は undefined となり、合成方法を指定しないことを意味する。 E においてこの値を変更した場合、 modified() を呼び出す必要がある。

height: number

このオブジェクトの縦幅。 初期値は 0 である。実際の表示領域としてはscaleX, scaleY, angleの値も考慮する必要がある。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

opacity: number

0~1でオブジェクトの不透明度を表す。 初期値は 1 である。本値が0の場合、Rendererは描画処理を省略する。 E においてこの値を変更した場合、 modified() を呼び出す必要がある。

scaleX: number

オブジェクトの横方向の倍率。 初期値は 1 である。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

scaleY: number

オブジェクトの縦方向の倍率。 初期値は 1 である。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

width: number

このオブジェクトの横幅。 初期値は 0 である。実際の表示領域としてはscaleX, scaleY, angleの値も考慮する必要がある。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

x: number

このオブジェクトの横位置。 初期値は 0 である。実際の座標位置はscaleX, scaleY, angle, anchorX, anchorYの値も考慮する必要がある。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

y: number

このオブジェクトの縦位置。 初期値は 0 である。実際の座標位置はscaleX, scaleY, angle, anchorX, anchorYの値も考慮する必要がある。 ECamera2D においてこの値を変更した場合、 modified() を呼び出す必要がある。

Methods

  • Private

    公開のプロパティから内部の変換行列キャッシュを更新する。

    Returns void

  • オブジェクトのアンカーの位置を設定する。 このメソッドは anchorXanchorY を同時に設定するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    • x: number
    • y: number

    Returns void

  • オブジェクトを相対的に移動する。 このメソッドは xy を同時に加算するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    • x: number

      X座標に加算する値

    • y: number

      Y座標に加算する値

    Returns void

  • オブジェクトを移動する。 このメソッドは xy を同時に設定するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    • x: number

      X座標

    • y: number

      Y座標

    Returns void

  • オブジェクトを移動する。 このメソッドは xy を同時に設定するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    Returns void

  • オブジェクトのサイズを相対的に変更する。 このメソッドは widthheight を同時に加算するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    • width: number

      加算する幅

    • height: number

      加算する高さ

    Returns void

  • オブジェクトのサイズを設定する。 このメソッドは widthheight を同時に設定するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    • width: number

    • height: number

      高さ

    Returns void

  • オブジェクトのサイズを設定する。 このメソッドは widthheight を同時に設定するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    Returns void

  • オブジェクトの拡大率を設定する。 このメソッドは scaleXscaleY に同じ値を同時に設定するためのユーティリティメソッドである。 ECamera2D においてこのメソッドを呼び出した場合、 modified() を呼び出す必要がある。

    Parameters

    • scale: number

      拡大率

    Returns void

Generated using TypeDoc