# クラス fk_Palette

マテリアルパレットを管理するクラス [詳細]

fk_Paletteに対する継承グラフ
[凡例]
fk_Paletteのコラボレーション図
[凡例]

すべてのメンバ一覧

## Public メソッド
| fk_Palette (void)
| コンストラクタ
| ~fk_Palette ()
| デストラクタ
void | clearMaterial (void)
| 初期化関数
void | setObjMaterialID (int ID)
| オブジェクトマテリアル ID 設定関数
void | pushPalette (fk_Material *mat)
| マテリアル追加関数
void | setPalette (fk_Material *mat, int ID)
| マテリアル設定関数
int | getObjMaterialID (void)
| オブジェクトマテリアル ID 取得関数
int | getPaletteSize (void)
| パレット中のマテリアル格納数取得関数
fk_Material * | getMaterial (int id)
| マテリアル取得関数
std::vector< fk_Material > * | getMaterialVector (void)
| マテリアル配列取得関数

## 説明

マテリアルパレットを管理するクラス

このクラスは、マテリアルパレットを制御する機能を提供します。 「マテリアルパレット」とは、複数のマテリアルを管理するデータベースのことです。 水彩や油彩で使う「パレット」のような機能を保持しており、 複数のマテリアルを登録することができます。

参照:
  fk_Material, fk_Color, fk_Shape

## コンストラクタとデストラクタ

fk_Palette::fk_Palette | ( | void |  | ) |

コンストラクタ

fk_Palette::~fk_Palette | ( |  | ) |

デストラクタ

## 関数

void fk_Palette::clearMaterial | ( | void |  | ) |

初期化関数

パレットを初期化します。

void fk_Palette::setObjMaterialID | ( | int | ID | ) |

オブジェクトマテリアル ID 設定関数

オブジェクトマテリアルの ID を設定します。

引数:

  `[in]` | ID | オブジェクトマテリアルの ID。

参照:
  getObjMaterialID()

void fk_Palette::pushPalette | ( | fk_Material * | mat | ) |

マテリアル追加関数

パレットにマテリアルを新たに追加します。 追加するマテリアルの ID は、 この関数を呼ぶ前に getPaletteSize() 関数を呼ぶことで得られます。 以下のコードは、マテリアルを追加しその ID を引数に代入します。

        fk_Palette      pal;
        fk_Material     mat;
        int             id;

        id = pal.getPaletteSize();
        pal.pushPalette(&mat);

引数:

  `[in]` | mat | 追加するマテリアル変数のアドレス

参照:
  setPalette()

void fk_Palette::setPalette | ( | fk_Material * | mat,
|  | int | ID |
| ) |  |  |

マテリアル設定関数

パレットに対し、対応する ID でマテリアルを設定します。 ID の指定により、以下のように挙動が若干変わります。

- もし ID が負であった場合は、パレットは何も変化しません。
- もし ID で指定されているマテリアルが既にパレット中に存在する場合は、 旧マテリアルを破棄して新しいマテリアルで上書きします。
- もし ID が新規のものであった場合、 その ID で新たに登録します。

引数:

  `[in]` | mat | 設定するマテリアル
  `[in]` | ID | マテリアルID

参照:
  pushPalette()

int fk_Palette::getObjMaterialID | ( | void |  | ) |

オブジェクトマテリアル ID 取得関数

現在設定されているオブジェクトマテリアルの ID を取得します。

戻り値:
  オブジェクトマテリアルの ID

参照:
  setObjMaterialID()

int fk_Palette::getPaletteSize | ( | void |  | ) |

パレット中のマテリアル格納数取得関数

現在パレットに格納されているマテリアルの数を返します。

戻り値:
  マテリアル数

参照:
  pushPalette(), setPalette(), getMaterial()

fk_Material* fk_Palette::getMaterial | ( | int | id | ) |

マテリアル取得関数

指定された id に対応するマテリアルのポインタを返します。 id に対応するマテリアルがパレット中にない場合は、 デフォルト状態のマテリアルインスタンスへのポインタを返します。

戻り値:
  マテリアルのポインタ

参照:
  pushPalette(), setPalette(), getPaletteSize()

std::vector<fk_Material>* fk_Palette::getMaterialVector | ( | void |  | ) |

マテリアル配列取得関数

パレットに格納されているマテリアルを、 STL の vector 配列へのポインタとして返します。

戻り値:
  マテリアル配列

参照:
  getMaterial()