## クラスの使用
kinugasa.object.Model

- Modelを使用しているパッケージ
  パッケージ | 説明
  --- | ---
  kinugasa.contents.graphics | 画像の編集やIOなどグラフィックに関する機能が含まれます.
  kinugasa.inputDevice | 入力デバイスによる入力状態の検査機能が含まれます.
  kinugasa.object | ゲームに登場するオブジェクトと基本的なロジックが含まれています.
  kinugasa.object.movingModel | MovingModelの実装が含まれています.
  kinugasa.rpgui | マップチップ方式によるフィールドマップの構築と描画に関する機能およびそれに関連するGUI機能を提供します.
  kinugasa.ui | メッセージウインドウやテキストラベルなど、プレイヤーと対話的にやり取りする仕組みを提供します.
  kinugasa.util | 各種カウンタ、文字列、数学、グラフィック、デバッグなどのユーティリティです.

- - ### kinugasa.contents.graphicsでのModelの使用

    kinugasa.contents.graphicsでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `ColorChanger` ARGB各要素のColorTransitionModelをまとめるクラスです.
    `class` | `ColorTransitionModel` 色のARGBの各要素の遷移アルゴリズムを定義します.
    `class` | `FadeCounter` 色要素をフェードイン／フェードアウトするためのColorCounterの実装です.
    `class` | `SpriteSheetCutter` スプライトシートの切り出しアルゴリズムをカプセル化します.

  - ### kinugasa.inputDeviceでのModelの使用

    kinugasa.inputDeviceでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `InputDeviceState` 入力デバイスの状態を格納するモデルのスーパークラスです.
    `class` | `InputState` 入力デバイスの状態を格納します.
    `class` | `KeyState` キー入力の状態を格納します.
    `class` | `MouseState` マウスによる入力状態を格納します.

  - ### kinugasa.objectでのModelの使用

    kinugasa.objectでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `ImagePainter` 画像を描画する方法をカプセル化します.
    `class` | `MovingModel` ベーシックスプライトの移動アルゴリズムをカプセル化します.

    Model型の型パラメータを持つkinugasa.objectのメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `static <T extends Model> T` | Model.`clone(T obj)` あるモデルobjのクローンを返します.これはobj.clone()と同じ動作です.

    Modelを返すkinugasa.objectのメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `Model` | Model.`clone()` このモデルのクローンを返します.

  - ### kinugasa.object.movingModelでのModelの使用

    kinugasa.object.movingModelでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `AngleChange` .
    `class` | `BasicMoving` スプライトに設定されているベクトルを使用して直線的に移動する基本の移動パターンです.
    `class` | `CheckArea` .
    `class` | `CheckHit` .
    `class` | `CheckTime` .
    `class` | `MovingEvent` 複数のMovingModelを実行できるMovingModelの拡張です.
    `class` | `SpeedChange` .
    `class` | `Track` 単純追尾アルゴリズムです.

  - ### kinugasa.rpguiでのModelの使用

    kinugasa.rpguiでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `FontModel` .
    `class` | `MessageWindowModel` このモデルは、メッセージウインドウに設定されたパラメタにしたがって、ウインドウの枠やテキストを描画します.
    `class` | `NodeAccepter` ノードが有効であるかを判定するクラスです.
    `class` | `SimpleMessageWindowModel` シンプルなメッセージウインドウの実装です.

  - ### kinugasa.uiでのModelの使用

    kinugasa.uiでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `Action` .
    `class` | `SimpleTextLabelModel` .
    `class` | `TextLabelModel` このモデルは、テキストラベルのフォントや表示位置を決定します.

  - ### kinugasa.utilでのModelの使用

    kinugasa.utilでのModelのサブクラス
    修飾子とタイプ | クラスと説明
    --- | ---
    `class` | `ArrayIndexModel` 配列のインデックスの遷移順序を定義します.
    `class` | `FrameTimeCounter` 複数の、呼び出し回数ベースの待機時間を順番に評価するTimeCounterの実装です.
    `class` | `OnlyFirstTimeCounter` 最初の検査だけ指定された値を返し、それ以降は 最初の検査とは逆の値を返すタイムカウンタの実装です.
    `class` | `SelectableIndex` インデックスの値を選択できるインデックスのカウンタです.
    `class` | `SimpleIndex` 配列の要素に、順番にアクセスする基本的なインデックスのカウンタです.
    `class` | `SystemTimeCounter` システム時計の経過時間によって待機時間を評価するTimeCounterの実装です.
    `class` | `TimeCounter` 経過時間を計測し、条件判定をするための機能を定義します.