kinugasa.object

## クラス BasicSprite

- java.lang.Object
- - kinugasa.object.Sprite
  - - kinugasa.object.BasicSprite

- すべての実装されたインタフェース:
    java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<Sprite>, Nameable, Controllable, Drawable, Shapeable
  直系の既知のサブクラス:
    CompositeSprite, FieldMap, FieldMapLayer, ImageSprite, MessageWindowSprite, ScreenEffect, TextLabelSprite

      public abstract class BasicSprite
      extends Sprite
      implements Controllable

  基本的な移動機能を実装した、Spriteの拡張です.
  関連項目:
    直列化された形式

- - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `BasicSprite()`
    `BasicSprite(float x, float y, float w, float h)`
    `BasicSprite(float x, float y, float w, float h, VectorF vector)`
    `BasicSprite(float x, float y, float w, float h, VectorF vector, MovingModel model)`
    `BasicSprite(float w, float h, VectorF vector, MovingModel model)`

  - ### メソッドのサマリー

    All Methods Instance Methods Abstract Methods Concrete Methods
    修飾子とタイプ | メソッドと説明
    --- | ---
    `BasicSprite` | `clone()` このスプライトの複製を作成します.
    `abstract void` | `draw(java.awt.Graphics2D g)` スプライトを描画します.
    `float` | `getAngle()`
    `MovingModel` | `getMovingModel()` 移動モデルを取得します.
    `MovingModel` | `getMovingModel(java.lang.Class<? extends MovingModel> model)` このスプライトの移動イベントのうち、指定したクラスのイベントを返します.
    `java.awt.geom.Point2D.Float` | `getNextCenter()` このスプライトが現在の設定で次に移動した時の中心の座標を返します.
    `java.awt.geom.Point2D.Float` | `getNextLocation()` このスプライトが現在の設定で次に移動した時の左上の座標を返します.
    `float` | `getSpeed()`
    `VectorF` | `getVector()`
    `void` | `move()` オブジェクトに設定されているパラメータおよびアルゴリズムを使用して移動します.
    `boolean` | `move(float xValue, float yValue, java.awt.Shape s)` 入力デバイスからの値によって、オブジェクトを移動します.
    `void` | `move(MovingModel m)` 指定のアルゴリズムを使用して移動します.
    `boolean` | `move(java.awt.geom.Point2D.Float p, java.awt.Shape s)` 入力デバイスからの値によって、オブジェクトを移動します.
    `void` | `setAngle(float angle)`
    `void` | `setMovingModel(MovingModel movingModel)` 移動モデルを設定します.
    `void` | `setSpeed(float speed)`
    `void` | `setVector(VectorF vector)`
    `java.lang.String` | `toString()` スプライトの文字列表記を取得します.

    - ### クラスから継承されたメソッド kinugasa.object.Sprite

      `compareTo, contains, getBounds, getCenter, getCenterX, getCenterY, getHeight, getHitBounds, getLocation, getName, getPersonalCenter, getPersonalCenterX, getPersonalCenterY, getSize, getWidth, getX, getY, getZ, isExist, isVisible, setBounds, setBounds, setBounds, setExist, setHeight, setLocation, setLocation, setName, setSize, setSize, setVisible, setWidth, setX, setY, setZ, update, updateCenter, updatePersonalCenter`

    - ### クラスから継承されたメソッド java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### コンストラクタの詳細

    - #### BasicSprite

          public BasicSprite()

    - #### BasicSprite

          public BasicSprite(float x,
                             float y,
                             float w,
                             float h)

    - #### BasicSprite

          public BasicSprite(float x,
                             float y,
                             float w,
                             float h,
                             VectorF vector)

    - #### BasicSprite

          public BasicSprite(float x,
                             float y,
                             float w,
                             float h,
                             VectorF vector,
                             MovingModel model)

    - #### BasicSprite

          public BasicSprite(float w,
                             float h,
                             VectorF vector,
                             MovingModel model)

  - ### メソッドの詳細

    - #### getAngle

          public float getAngle()

    - #### setAngle

          public void setAngle(float angle)

    - #### getSpeed

          public float getSpeed()

    - #### setSpeed

          public void setSpeed(float speed)

    - #### move

          public void move()

      オブジェクトに設定されているパラメータおよびアルゴリズムを使用して移動します.

    - #### move

          public void move(MovingModel m)

      指定のアルゴリズムを使用して移動します.
      パラメータ:
        `m` - 移動方法.

    - #### move

          public boolean move(float xValue,
                              float yValue,
                              java.awt.Shape s)

      インタフェースからコピーされた説明: `Controllable`
      入力デバイスからの値によって、オブジェクトを移動します.
      定義:
        `move` インタフェース内 `Controllable`
      パラメータ:
        `xValue` - -1.0~1.0の間の入力値.キー操作では-1.0または1.0、ゲームパッドを使用すると可変の値が送信される.
        `yValue` - -1.0~1.0の間の入力値.キー操作では-1.0または1.0、ゲームパッドを使用すると可変の値が送信される.
        `s` - このオブジェクトが移動可能な領域.nullでない場合はこの領域から出てはならない.
      戻り値:
        移動後のオブジェクトがs内に存在する場合はtrueを、sから出る(contains()がfalse)ため、移動できなかった場合はfalseを返す.

    - #### move

          public boolean move(java.awt.geom.Point2D.Float p,
                              java.awt.Shape s)

      インタフェースからコピーされた説明: `Controllable`
      入力デバイスからの値によって、オブジェクトを移動します.
      定義:
        `move` インタフェース内 `Controllable`
      パラメータ:
        `p` - -1.0~1.0の間のXおよびY軸の入力値.キー操作では-1.0または1.0、ゲームパッドを使用すると可変の値が送信される.
        `s` - このオブジェクトが移動可能な領域.nullでない場合はこの領域から出てはならない.
      戻り値:
        移動後のオブジェクトがs内に存在する場合はtrueを、sから出る(contains()がfalse)ため、移動できなかった場合はfalseを返す.

    - #### draw

          public abstract void draw(java.awt.Graphics2D g)

      スプライトを描画します. visibleまたはexistがfalseのとき、描画してはなりません.
      定義:
        `draw` インタフェース内 `Drawable`
      定義:
        `draw` クラス内 `Sprite`
      パラメータ:
        `g` - グラフィックスコンテキスト.

    - #### getNextCenter

          public java.awt.geom.Point2D.Float getNextCenter()

      このスプライトが現在の設定で次に移動した時の中心の座標を返します.
      このメソッドは、移動モデルによる移動手段を考慮しません。
      戻り値:
        次の中心座標.

    - #### getNextLocation

          public java.awt.geom.Point2D.Float getNextLocation()

      このスプライトが現在の設定で次に移動した時の左上の座標を返します.
      このメソッドは、移動モデルによる移動手段を考慮しません。
      戻り値:
        次の座標.

    - #### getVector

          public VectorF getVector()

    - #### setVector

          public void setVector(VectorF vector)

    - #### getMovingModel

          public MovingModel getMovingModel()

      移動モデルを取得します.
      戻り値:
        移動モデル.

    - #### getMovingModel

          public MovingModel getMovingModel(java.lang.Class<? extends MovingModel> model)

      このスプライトの移動イベントのうち、指定したクラスのイベントを返します. このメソッドでは、このスプライトの移動イベントがMovingEventである場合には その内部を検索して移動イベントの実装を返します。
      MovingEventを取得するには、 引数にMovingEventのクラスを指定します。
      パラメータ:
        `model` - 検索するモデルのクラス。
      戻り値:
        指定したクラスのイベントが含まれている場合にそのインスタンスを返す。存在しない場合はnullを返す。

    - #### setMovingModel

          public void setMovingModel(MovingModel movingModel)

      移動モデルを設定します.
      パラメータ:
        `movingModel` - 移動モデル.

    - #### clone

          public BasicSprite clone()

      このスプライトの複製を作成します. このメソッドでは、全てのフィールドをクローニングします.
      このメソッドはサブクラスで適切にオーバーライドしてください.
      オーバーライド:
        `clone` クラス内 `Sprite`
      戻り値:
        このスプライトと同じ設定の新しいインスタンス.

    - #### toString

          public java.lang.String toString()

      スプライトの文字列表記を取得します. 文字列にはスプライトのフィールド情報が含まれています.これらの値はすべてアクセサを通して取得可能です.
      オーバーライド:
        `toString` クラス内 `Sprite`
      戻り値:
        スプライトの情報.