kinugasa.object
クラス Sprite

java.lang.Object
  上位を拡張 kinugasa.object.Sprite
すべての実装されたインタフェース:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<Sprite>, Drawable, Shapeable
直系の既知のサブクラス:
BasicSprite, CompositeSprite

public abstract class Sprite
extends java.lang.Object
implements Drawable, Shapeable, java.lang.Cloneable, java.lang.Comparable<Sprite>, java.io.Serializable

Kinugasa : Sprite : ゲームに表示される自機やキャラクタの基底クラスです.

バージョン:
3.0 : 12/01/20_18:30-
, 4.0 : 12/02/06_21:00-
, 5.0 : 12/02/18_18:55-21:45
, 6.0.0 - 2012/06/02_16:46:58.
, 6.14.0 - 2012/06/12_20:17.
, 6.18.0 - 2012/06/16_02:26.
, 6.20.0 - 2012/06/18_21:53.
, 6.23.0 - 2012/07/01_00:48.
, 6.28.0 - 2012/07/07_00:37.
, 6.40.0 - 2012/07/07_17:24.
, 6.40.2 - 2012/07/07_22:45.
, 7.0.0 - 2012/07/14_16:41:11.
, 7.0.1 - 2012/07/21_23:42.
, 7.1.1 - 2012/09/23_01:58.
, 7.1.3 - 2012/11/12_00:54.
, 7.5.0 - 2012/11/21_11:39.
, 8.0.0 - 2013/01/14_16:52:02
, 8.3.0 - 2013/02/10_02:42
, 8.4.0 - 2013/04/28_21:54
作成者:
Dra0211
関連項目:
直列化された形式

フィールドの概要
private  java.awt.geom.Rectangle2D.Float bounds
          領域.
private  java.awt.geom.Point2D.Float center
          中心座標のキャッシュ.
private  boolean exist
          生存状態.
private  java.awt.geom.Point2D.Float personalCenter
          相対中心座標.
private static long serialVersionUID
           
private  Status status
          このスプライトの汎用ステータスです.
private  boolean visible
          可視状態.
private  float z
          Z軸深度.
 
コンストラクタの概要
  Sprite()
          新しいスプライトを作成します.
  Sprite(float x, float y, float w, float h)
          位置およびサイズを指定してスプライトを作成します.
  Sprite(float x, float y, float w, float h, float z)
          位置およびサイズを指定してスプライトを作成します.
private Sprite(java.awt.geom.Rectangle2D.Float bounds)
          新しいスプライトを作成します.
 
メソッドの概要
 Sprite clone()
          このスプライトの複製を作成します.
 int compareTo(Sprite spr)
          スプライトの深度を比較し、z軸座標の昇順に並び替える機能を提供します.
 boolean contains(java.awt.geom.Point2D point)
           
abstract  void draw(java.awt.Graphics2D g)
          スプライトを描画します.
 java.awt.geom.Rectangle2D.Float getBounds()
          このスプライトの領域を取得します.
 java.awt.geom.Point2D.Float getCenter()
          スプライトの中心の座標を取得します.
 float getCenterX()
          スプライトの中心のX座標を取得します.
 float getCenterY()
          スプライトの中心のY座標を取得します.
 float getHeight()
          このスプライトの高さを取得します.
 java.awt.geom.Rectangle2D.Float getHitBounds()
          このスプライトの”当たり判定”の領域を返します.
 java.awt.geom.Point2D.Float getLocation()
          スプライトの左上の位置を取得します.
 java.awt.geom.Point2D.Float getPersonalCenter()
          スプライトの中心の相対座標を取得します.
 float getPersonalCenterX()
          スプライトの中心の相対的なX座標を取得します.
 float getPersonalCenterY()
          スプライトの中心の相対的なY座標を取得します.
 java.awt.Dimension getSize()
          スプライトのサイズを取得します.
 Status getStatus()
          このスプライトのステータスを取得します.
 float getWidth()
          このスプライトの幅を取得します.
 float getX()
          このスプライトの左上のX座標を取得します.
 float getY()
          このスプライトの左上のY座標を取得します.
 float getZ()
          このスプライトのZ深度を取得します.
 boolean isExist()
          スプライトの生存状態を取得します.
 boolean isVisible()
          スプライトの可視状態を取得します.
 void setBounds(float x, float y, float width, float height)
          このスプライトの領域を設定します.
 void setBounds(java.awt.geom.Point2D.Float location, float width, float height)
          このスプライトの領域を設定します.
 void setBounds(java.awt.geom.Rectangle2D.Float bounds)
          このスプライトの領域を設定します.
private  void setCenter()
          中心座標のキャッシュを作成します.
 void setExist(boolean exist)
          スプライトの生存状態を設定します.
 void setHeight(float height)
          このスプライトの高さを設定します.
 void setLocation(float x, float y)
          スプライトの左上の位置を設定します.
 void setLocation(java.awt.geom.Point2D.Float location)
          スプライトの左上の位置を設定します.
 void setSize(java.awt.Dimension size)
          スプライトのサイズを取得します.
 void setSize(float w, float h)
          スプライトのサイズを取得します.
 void setStatus(Status status)
          このスプライトにステータスを関連付けます.
 void setVisible(boolean visible)
          スプライトの可視状態を設定します.
 void setWidth(float width)
          このスプライトの幅を設定します.
 void setX(float x)
          このスプライトの左上のX座標を設定します.
 void setY(float y)
          このスプライトの左上のY座標を設定します.
 void setZ(float z)
          このスプライトのZ深度を設定します.
 java.lang.String toString()
           
 void update()
          スプライトの様々なプロパティを更新します.
protected  void updateCenter()
          中心座標のキャッシュを更新します.
protected  void updatePersonalCenter()
          中心座標のキャッシュを更新します.
 
クラス java.lang.Object から継承されたメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

serialVersionUID

private static final long serialVersionUID
関連項目:
定数フィールド値

bounds

private java.awt.geom.Rectangle2D.Float bounds
領域.


center

private java.awt.geom.Point2D.Float center
中心座標のキャッシュ.


personalCenter

private java.awt.geom.Point2D.Float personalCenter
相対中心座標.


z

private float z
Z軸深度.


visible

private boolean visible
可視状態.


exist

private boolean exist
生存状態.


status

private Status status
このスプライトの汎用ステータスです.

コンストラクタの詳細

Sprite

public Sprite()
新しいスプライトを作成します. 全てのフィールドが初期化されます.


Sprite

private Sprite(java.awt.geom.Rectangle2D.Float bounds)
新しいスプライトを作成します. このコンストラクタでは、ディープコピーに近い、参照を利用したインスタンスの作成を行うことができます.

パラメータ:
bounds - このスプライトの領域.

Sprite

public Sprite(float x,
              float y,
              float w,
              float h)
位置およびサイズを指定してスプライトを作成します.

パラメータ:
x - X座標.
y - Y座標.
w - 幅.
h - 高さ.

Sprite

public Sprite(float x,
              float y,
              float w,
              float h,
              float z)
位置およびサイズを指定してスプライトを作成します.

パラメータ:
x - X座標.
y - Y座標.
w - 幅.
h - 高さ.
z -
メソッドの詳細

setCenter

private void setCenter()
中心座標のキャッシュを作成します.


updateCenter

protected final void updateCenter()
中心座標のキャッシュを更新します.


updatePersonalCenter

protected final void updatePersonalCenter()
中心座標のキャッシュを更新します.


draw

public abstract void draw(java.awt.Graphics2D g)
スプライトを描画します. visibleまたはexistがfalseのとき、描画してはなりません.

定義:
インタフェース Drawable 内の draw
パラメータ:
g - グラフィックスコンテキスト.

update

public void update()
スプライトの様々なプロパティを更新します. このメソッドは、オーバーライドしない限り、何も行いません。
移動とは別に、状態を更新する必要がある場合、オーバーライドすることで 処理を定義できます。


getBounds

public java.awt.geom.Rectangle2D.Float getBounds()
このスプライトの領域を取得します. このメソッドではクローンが返されます.

戻り値:
スプライトの領域.

getHitBounds

public java.awt.geom.Rectangle2D.Float getHitBounds()
このスプライトの”当たり判定”の領域を返します. このメソッドはスプライトが他のスプライトを衝突しているか検査する場合に スプライトを包含する矩形と論理的な衝突状態を区別するために設けられています。
このメソッドはデフォルトでは、getBounds()と同じ値を返します。
このメソッドを使用する場合は適切にオーバーライドしてください。

戻り値:
スプライトの”当たり判定”の領域を返します。オーバーライドしない場合はgetBounds()を返します。

setBounds

public void setBounds(java.awt.geom.Rectangle2D.Float bounds)
このスプライトの領域を設定します.

パラメータ:
bounds - スプライトの領域.

setBounds

public void setBounds(java.awt.geom.Point2D.Float location,
                      float width,
                      float height)
このスプライトの領域を設定します.

パラメータ:
location - 位置を指定します。
width - 幅です。
height - 高さです。

setBounds

public void setBounds(float x,
                      float y,
                      float width,
                      float height)
このスプライトの領域を設定します.

パラメータ:
x - X位置です。
y - Y位置です。
width - 幅です。
height - 高さです。

contains

public boolean contains(java.awt.geom.Point2D point)
定義:
インタフェース Shapeable 内の contains

getLocation

public java.awt.geom.Point2D.Float getLocation()
スプライトの左上の位置を取得します. このメソッドは新しいインスタンスを返します.

戻り値:
左上の位置.

setLocation

public void setLocation(java.awt.geom.Point2D.Float location)
スプライトの左上の位置を設定します.

パラメータ:
location - 左上の位置.

setLocation

public void setLocation(float x,
                        float y)
スプライトの左上の位置を設定します.

パラメータ:
x - X座標.
y - Y座標.

getCenter

public java.awt.geom.Point2D.Float getCenter()
スプライトの中心の座標を取得します. このメソッドではクローンが返されます.

戻り値:
スプライトの中心の座標.ウインドウ上での絶対座標.

getCenterX

public float getCenterX()
スプライトの中心のX座標を取得します.

戻り値:
スプライトの中心のX座標。ウインドウ上での座標を返します。

getCenterY

public float getCenterY()
スプライトの中心のY座標を取得します.

戻り値:
スプライトの中心のY座標。ウインドウ上での座標を返します。

getPersonalCenterX

public float getPersonalCenterX()
スプライトの中心の相対的なX座標を取得します.

戻り値:
スプライトの中心のX座標。スプライトのサイズに対する中心の座標を返します。

getPersonalCenterY

public float getPersonalCenterY()
スプライトの中心の相対的なY座標を取得します.

戻り値:
スプライトの中心のY座標。スプライトのサイズに対する中心の座標を返します。

getPersonalCenter

public java.awt.geom.Point2D.Float getPersonalCenter()
スプライトの中心の相対座標を取得します. 相対中心座標とはスプライトの領域の左上からの中心までの距離です.
このメソッドではクローンが返されます.

戻り値:
中心の相対座標.

getSize

public java.awt.Dimension getSize()
スプライトのサイズを取得します. サイズはint精度に丸められます.
このメソッドは新しいインスタンスを返します.

戻り値:
スプライトのサイズ.

setSize

public void setSize(java.awt.Dimension size)
スプライトのサイズを取得します. サイズはint精度に丸められます.

パラメータ:
size - スプライトのサイズ.

setSize

public void setSize(float w,
                    float h)
スプライトのサイズを取得します.

パラメータ:
w - スプライトの幅.
h - スプライトの高さ.

isExist

public boolean isExist()
スプライトの生存状態を取得します.

戻り値:
生存中の場合はtrueを返す.

setExist

public void setExist(boolean exist)
スプライトの生存状態を設定します.

パラメータ:
exist - 生存状態.

isVisible

public boolean isVisible()
スプライトの可視状態を取得します.

戻り値:
スプライトの可視状態.

setVisible

public void setVisible(boolean visible)
スプライトの可視状態を設定します.

パラメータ:
visible - スプライトの可視状態.

getX

public float getX()
このスプライトの左上のX座標を取得します.

戻り値:
X座標.

setX

public void setX(float x)
このスプライトの左上のX座標を設定します.

パラメータ:
x - X座標.

getY

public float getY()
このスプライトの左上のY座標を取得します.

戻り値:
Y座標.

setY

public void setY(float y)
このスプライトの左上のY座標を設定します.

パラメータ:
y - Y座標.

getWidth

public float getWidth()
このスプライトの幅を取得します.

戻り値:
幅.

setWidth

public void setWidth(float width)
このスプライトの幅を設定します.

パラメータ:
width - 幅.

getHeight

public float getHeight()
このスプライトの高さを取得します.

戻り値:
高さ.

setHeight

public void setHeight(float height)
このスプライトの高さを設定します.

パラメータ:
height - 高さ.

getZ

public float getZ()
このスプライトのZ深度を取得します.

戻り値:
深度.

setZ

public void setZ(float z)
このスプライトのZ深度を設定します.

パラメータ:
z - 深度.

getStatus

public Status getStatus()
このスプライトのステータスを取得します. このメソッドは、ステータスが設定されていない場合はnullを返します。

戻り値:
このスプライトに設定されたステータスを返します。

setStatus

public void setStatus(Status status)
このスプライトにステータスを関連付けます.

パラメータ:
status - このスプライトのステータスを指定します。

clone

public Sprite clone()
このスプライトの複製を作成します. このメソッドでは、全てのフィールドをクローニングします.
このメソッドはサブクラスで適切にオーバーライドしてください.

オーバーライド:
クラス java.lang.Object 内の clone
戻り値:
このスプライトと同じ設定の新しいインスタンス.

compareTo

public final int compareTo(Sprite spr)
スプライトの深度を比較し、z軸座標の昇順に並び替える機能を提供します.

定義:
インタフェース java.lang.Comparable<Sprite> 内の compareTo
パラメータ:
spr - 比較するスプライト.
戻り値:
Comparableの実装に基づく値.

toString

public java.lang.String toString()
オーバーライド:
クラス java.lang.Object 内の toString