kinugasa.contents.graphics

## クラス Animation

- java.lang.Object
- - kinugasa.contents.graphics.Animation

- すべての実装されたインタフェース:
    java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<SerializableImage>

      public class Animation
      extends java.lang.Object
      implements java.lang.Iterable<SerializableImage>, java.lang.Cloneable, java.io.Serializable

  画像配列をアニメーションとして再生するための画像とインデックスを保持します.
  アニメーション用画像はnullを許可します。それぞれのメソッドでは、アニメーションの要素となる 画像が1つもない場合（つまりnullの場合）にnullを返します。
  関連項目:
    直列化された形式

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

    コンストラクタ
    コンストラクタと説明
    `Animation(TimeCounter visibleTime, ArrayIndexModel index, java.awt.image.BufferedImage... images)` 新しいアニメーションを構築します.
    `Animation(TimeCounter visibleTime, ArrayIndexModel index, SerializableImage... images)` 新しいアニメーションを構築します.
    `Animation(TimeCounter visibleTime, java.awt.image.BufferedImage... images)` 新しいアニメーションを構築します.
    `Animation(TimeCounter visibleTime, SerializableImage... images)` 新しいアニメーションを構築します.

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

    All Methods Instance Methods Concrete Methods
    修飾子とタイプ | メソッドと説明
    --- | ---
    `Animation` | `clone()`
    `java.awt.image.BufferedImage` | `getCurrentBImage()` このアニメーションで、現在表示すべき画像を返します.
    `SerializableImage` | `getCurrentImage()` このアニメーションで、現在表示すべき画像を返します.
    `SerializableImage` | `getImage(int index)` 指定したインデックス位置のアニメーション要素を取得します.
    `SerializableImage[]` | `getImages()` このアニメーションに設定されている画像を取得します.
    `ArrayIndexModel` | `getIndex()` このアニメーションに設定されている配列のインデックスを取得します.
    `TimeCounter` | `getVisibleTime()` このアニメーションに設定されている表示時間カウンタを取得します.
    `java.util.Iterator<SerializableImage>` | `iterator()`
    `int` | `length()` 画像配列の要素数を返します.
    `void` | `setImage(int index, java.awt.image.BufferedImage image)` このアニメーションの画像を変更します.
    `void` | `setImage(int index, SerializableImage image)` このアニメーションの画像を変更します.
    `void` | `setImages(java.awt.image.BufferedImage... images)` このアニメーションの画像を変更します.
    `void` | `setImages(SerializableImage... images)` このアニメーションの画像を変更します.
    `void` | `setIndex(ArrayIndexModel index)` アニメーションの遷移順序を変更します.
    `void` | `setVisibleTime(TimeCounter visibleTime)` アニメーションの1つの要素の再生時間を指定するためのタイムカウンタを設定します.
    `java.lang.String` | `toString()`
    `void` | `update()` 表示時間の判定を行います.

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

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

    - ### インタフェースから継承されたメソッド java.lang.Iterable

      `forEach, spliterator`

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

    - #### Animation

          public Animation(TimeCounter visibleTime,
                           java.awt.image.BufferedImage... images)

      新しいアニメーションを構築します. このコンストラクタでは、配列インデックスは＋方向へループするシーケンシャルなモデルになります。
      パラメータ:
        `visibleTime` - アニメーションの1枚の画像の表示時間を定義するタイムカウンタです。
        `images` - 表示する画像を1つ以上送信します。

    - #### Animation

          public Animation(TimeCounter visibleTime,
                           SerializableImage... images)

      新しいアニメーションを構築します. このコンストラクタでは、配列インデックスは＋方向へループするシーケンシャルなモデルになります。
      パラメータ:
        `visibleTime` - アニメーションの1枚の画像の表示時間を定義するタイムカウンタです。
        `images` - 表示する画像を1つ以上送信します。

    - #### Animation

          public Animation(TimeCounter visibleTime,
                           ArrayIndexModel index,
                           java.awt.image.BufferedImage... images)

      新しいアニメーションを構築します.
      パラメータ:
        `visibleTime` - アニメーションの1枚の画像の表示時間を定義するタイムカウンタです。
        `index` - アニメーションの遷移順序を定義する配列のインデックスです。
        `images` - 表示する画像を1つ以上送信します。

    - #### Animation

          public Animation(TimeCounter visibleTime,
                           ArrayIndexModel index,
                           SerializableImage... images)

      新しいアニメーションを構築します.
      パラメータ:
        `visibleTime` - アニメーションの1枚の画像の表示時間を定義するタイムカウンタです。
        `index` - アニメーションの遷移順序を定義する配列のインデックスです。
        `images` - 表示する画像を1つ以上送信します。

  - ### メソッドの詳細

    - #### getImages

          public SerializableImage[] getImages()

      このアニメーションに設定されている画像を取得します.
      戻り値:
        このアニメーションの画像全てを取得します。この配列は防御的コピーされません。 画像が設定されていない場合nullを返します。

    - #### getImage

          public SerializableImage getImage(int index)
                                     throws java.lang.ArrayIndexOutOfBoundsException

      指定したインデックス位置のアニメーション要素を取得します.
      パラメータ:
        `index` - インデックスを指定します。
      戻り値:
        指定したインデックス位置のアニメーション要素となる画像を返します。 画像が設定されていない場合nullを返します。
      例外:
        `java.lang.ArrayIndexOutOfBoundsException` - 不正なインデックスを送信した場合に投げられます。

    - #### setImages

          public void setImages(SerializableImage... images)

      このアニメーションの画像を変更します.
      パラメータ:
        `images` - 新しい画像配列を送信します。

    - #### setImages

          public void setImages(java.awt.image.BufferedImage... images)

      このアニメーションの画像を変更します.
      パラメータ:
        `images` - 新しい画像配列を送信します。

    - #### setImage

          public void setImage(int index,
                               java.awt.image.BufferedImage image)
                        throws java.lang.ArrayIndexOutOfBoundsException

      このアニメーションの画像を変更します.
      パラメータ:
        `index` - アニメーション要素を置き換える位置のインデックスを指定します。
        `image` - 新しい画像を送信します。
      例外:
        `java.lang.ArrayIndexOutOfBoundsException` - 不正なインデックスを送信した場合に投げられます。

    - #### setImage

          public void setImage(int index,
                               SerializableImage image)

      このアニメーションの画像を変更します.
      パラメータ:
        `index` - アニメーション要素を置き換える位置のインデックスを指定します。
        `image` - 新しい画像を送信します。
      例外:
        `java.lang.ArrayIndexOutOfBoundsException` - 不正なインデックスを送信した場合に投げられます。

    - #### setIndex

          public void setIndex(ArrayIndexModel index)

      アニメーションの遷移順序を変更します.
      パラメータ:
        `index` - 新しい遷移アルゴリズムを送信します。

    - #### getIndex

          public ArrayIndexModel getIndex()

      このアニメーションに設定されている配列のインデックスを取得します. このメソッドは、設定されているインデックスモデルをArrayIndexModelとして返します。
      このメソッドを頻繁に使う場合は、キャストしたインデックスを返せるよう サブクラスを作成することができます。
      戻り値:
        このアニメーションに設定されているインデックスモデルを返します。

    - #### setVisibleTime

          public void setVisibleTime(TimeCounter visibleTime)

      アニメーションの1つの要素の再生時間を指定するためのタイムカウンタを設定します.
      パラメータ:
        `visibleTime` - 新しいタイムカウンタを送信します。

    - #### getVisibleTime

          public TimeCounter getVisibleTime()

      このアニメーションに設定されている表示時間カウンタを取得します. このメソッドは、設定されているタイムカウンタをTimeCounterとして返します。
      このメソッドを頻繁に使う場合は、キャストしたカウンタを返せるよう サブクラスを作成することができます。
      戻り値:
        このアニメーションに設定されているタイムカウンタを返します。

    - #### update

          public void update()

      表示時間の判定を行います. 現在表示中の要素の表示時間が経過した場合には、 インデックスを更新し、描画すべき画像を変更します。

    - #### getCurrentImage

          public SerializableImage getCurrentImage()

      このアニメーションで、現在表示すべき画像を返します.
      戻り値:
        このアニメーションで現在表示される要素を返します。

    - #### getCurrentBImage

          public java.awt.image.BufferedImage getCurrentBImage()

      このアニメーションで、現在表示すべき画像を返します.
      戻り値:
        このアニメーションで現在表示される要素を返します。

    - #### length

          public int length()

      画像配列の要素数を返します.
      戻り値:
        アニメーションとして再生される要素の数を返します。

    - #### iterator

          public java.util.Iterator<SerializableImage> iterator()

      定義:
        `iterator` インタフェース内 `java.lang.Iterable<SerializableImage>`

    - #### clone

          public Animation clone()

      オーバーライド:
        `clone` クラス内 `java.lang.Object`

    - #### toString

          public java.lang.String toString()

      オーバーライド:
        `toString` クラス内 `java.lang.Object`