矩形テクスチャを生成、管理するクラス [詳細]
fk_RectTextureに対する継承グラフ
fk_RectTextureのコラボレーション図Public メソッド | |
| fk_RectTexture (fk_Image *image=(fk_Image *) NULL) | |
| コンストラクタ [詳細] | |
| virtual | ~fk_RectTexture () |
| デストラクタ [詳細] | |
| void | init (void) |
| 初期化関数 [詳細] | |
| bool | setTextureSize (double w, double h) |
| テクスチャサイズ設定関数 [詳細] | |
| fk_TexCoord | getTextureSize (void) |
| テクスチャサイズ参照関数 [詳細] | |
| void | setRepeatMode (bool mode) |
| リピートモード設定関数 [詳細] | |
| bool | getRepeatMode (void) |
| リピートモード参照関数 [詳細] | |
| void | setRepeatParam (double wNum, double hNum) |
| リピートモード枚数設定関数 [詳細] | |
| fk_TexCoord | getRepeatParam (void) |
| リピートモード枚数参照関数 [詳細] | |
| void | setTextureCoord (double sX, double sY, double eX, double eY) |
| 部分抽出設定関数1 [詳細] | |
| void | setTextureCoord (const fk_TexCoord &S, const fk_TexCoord &E) |
| 部分抽出設定関数2 [詳細] | |
| fk_TexCoord | getTextureCoord (int ID) |
| 部分抽出参照関数 [詳細] | |
Public メソッド inherited from fk_Texture | |
| void | setImage (fk_Image *image) |
| 画像データ設定関数 [詳細] | |
| fk_Image * | getImage (void) |
| 画像データ取得関数 [詳細] | |
| bool | readBMP (std::string fileName) |
| BMP ファイル入力関数 [詳細] | |
| bool | readBMPData (fk_ImType *buf) |
| BMP バッファ入力関数 [詳細] | |
| bool | readPNG (std::string fileName) |
| PNG ファイル入力関数 [詳細] | |
| bool | readPNGData (fk_ImType *buf) |
| PNG バッファ入力関数 [詳細] | |
| bool | readJPG (std::string fileName) |
| JPEG ファイル入力関数 [詳細] | |
| const fk_Dimension * | getImageSize (void) |
| 画像サイズ取得関数 [詳細] | |
| const fk_Dimension * | getBufferSize (void) |
| 画像バッファサイズ取得関数 [詳細] | |
| void | setTextureMode (fk_TexMode mode) |
| テクスチャモード設定関数 [詳細] | |
| fk_TexMode | getTextureMode (void) |
| テクスチャモード取得関数 [詳細] | |
| void | setTexRendMode (fk_TexRendMode mode) |
| テクスチャ描画品質設定関数 [詳細] | |
| fk_TexRendMode | getTexRendMode (void) |
| テクスチャ描画品質取得関数 [詳細] | |
| void | fillColor (const fk_Color &color) |
| 一様色初期化関数1 [詳細] | |
| void | fillColor (int r, int g, int b, int a=0) |
| 一様色初期化関数2 [詳細] | |
| const fk_ImType * | getImageBuf (void) |
| 画像データ配列先頭アドレス取得関数 [詳細] | |
Public メソッド inherited from fk_Shape | |
| fk_Shape (fk_ObjectType=FK_SHAPE) | |
| コンストラクタ [詳細] | |
| virtual | ~fk_Shape () |
| デストラクタ [詳細] | |
| fk_Palette * | getPaletteData (void) |
| パレット取得関数 [詳細] | |
| void | clearMaterial (void) |
| パレット初期化関数 [詳細] | |
| void | setObjMaterialID (int ID) |
| オブジェクトマテリアル ID 設定関数 [詳細] | |
| void | pushPalette (fk_Material &mat) |
| マテリアル追加関数 [詳細] | |
| void | setPalette (fk_Material &mat, int ID) |
| マテリアル設定関数 [詳細] | |
| void | setMaterialMode (fk_MaterialMode mode) |
| マテリアルモード設定関数 [詳細] | |
| fk_MaterialMode | getMaterialMode (void) |
| マテリアルモード取得関数 [詳細] | |
| int | getObjMaterialID (void) |
| オブジェクトマテリアル ID 取得関数 [詳細] | |
| int | getPaletteSize (void) |
| パレット中のマテリアル格納数取得関数 [詳細] | |
| fk_Material * | getMaterial (int id) |
| マテリアル取得関数 [詳細] | |
| std::vector< fk_Material > * | getMaterialVector (void) |
| マテリアル配列取得関数 [詳細] | |
Public メソッド inherited from fk_Attribute | |
| fk_Attribute (void) | |
| コンストラクタ [詳細] | |
| virtual | ~fk_Attribute () |
| デストラクタ [詳細] | |
| bool | setAttrII (const int key, const int value) |
| キーが int 型、値が int 型である属性設定関数 [詳細] | |
| bool | setAttrID (const int key, const double value) |
| キーが int 型、値が double 型である属性設定関数 [詳細] | |
| bool | setAttrIS (const int key, const std::string value) |
| キーが int 型、値が string 型である属性設定関数 [詳細] | |
| bool | setAttrSI (const std::string key, const int value) |
| キーが string 型、値が int 型である属性設定関数 [詳細] | |
| bool | setAttrSD (const std::string key, const double value) |
| キーが string 型、値が double 型である属性設定関数 [詳細] | |
| bool | setAttrSS (const std::string key, const std::string value) |
| キーが string 型、値が string 型である属性設定関数 [詳細] | |
| int | getAttrII (const int key) const |
| キーが int 型、値が int 型である属性参照関数 [詳細] | |
| double | getAttrID (const int key) const |
| キーが int 型、値が double 型である属性参照関数 [詳細] | |
| std::string | getAttrIS (const int key) const |
| キーが int 型、値が string 型である属性参照関数 [詳細] | |
| int | getAttrSI (const std::string key) const |
| キーが string 型、値が int 型である属性参照関数 [詳細] | |
| double | getAttrSD (const std::string key) const |
| キーが string 型、値が double 型である属性参照関数 [詳細] | |
| std::string | getAttrSS (const std::string key) const |
| キーが string 型、値が string 型である属性参照関数 [詳細] | |
| bool | existAttrII (const int key) const |
| キーが int 型、値が int 型である属性存在参照関数 [詳細] | |
| bool | existAttrID (const int key) const |
| キーが int 型、値が double 型である属性存在参照関数 [詳細] | |
| bool | existAttrIS (const int key) const |
| キーが int 型、値が string 型である属性存在参照関数 [詳細] | |
| bool | existAttrSI (const std::string key) const |
| キーが string 型、値が int 型である属性存在参照関数 [詳細] | |
| bool | existAttrSD (const std::string key) const |
| キーが string 型、値が double 型である属性存在参照関数 [詳細] | |
| bool | existAttrSS (const std::string key) const |
| キーが string 型、値が string 型である属性存在参照関数 [詳細] | |
| bool | deleteAttrII (const int key) |
| キーが int 型、値が int 型である属性消去関数 [詳細] | |
| bool | deleteAttrID (const int key) |
| キーが int 型、値が double 型である属性消去関数 [詳細] | |
| bool | deleteAttrIS (const int key) |
| キーが int 型、値が string 型である属性消去関数 [詳細] | |
| bool | deleteAttrSI (const std::string key) |
| キーが string 型、値が int 型である属性消去関数 [詳細] | |
| bool | deleteAttrSD (const std::string key) |
| キーが string 型、値が double 型である属性消去関数 [詳細] | |
| bool | deleteAttrSS (const std::string key) |
| キーが string 型、値が string 型である属性消去関数 [詳細] | |
Public メソッド inherited from fk_BaseObject | |
| fk_BaseObject (fk_ObjectType type=FK_BASEOBJECT) | |
| コンストラクタ [詳細] | |
| fk_ObjectType | getObjectType (void) const |
| タイプ取得関数 [詳細] | |
矩形テクスチャを生成、管理するクラス
このクラスは、矩形型のテクスチャを制御する機能を提供します。 テクスチャを表示する方法としては、最も簡単なクラスとなります。
テクスチャ画像を表示する最低限の手順は、以下の通りです。
あとは、他の形状クラスと同様です。
矩形の配置は、モデルの方向ベクトルに垂直となり、 画像の中心とモデルの中心が一致するように配置されます。 また、画像の表側はモデルの後方 (初期状態では +z 方向) 側から見た場合に見えるという点に注意して下さい。
コンストラクタ
| [in] | image | テクスチャ画像。省略するか NULL を代入した場合は、 テクスチャ画像を初期状態では生成しません。 |
|
virtual |
デストラクタ
| void fk_RectTexture::init | ( | void | ) |
初期化関数
現在設定されているテクスチャ画像を廃棄し、全ての設定を初期状態に戻します。
| bool fk_RectTexture::setTextureSize | ( | double | w, |
| double | h | ||
| ) |
テクスチャサイズ設定関数
矩形テクスチャの大きさを設定します。
| [in] | w | 横幅 |
| [in] | h | 縦幅 |
| fk_TexCoord fk_RectTexture::getTextureSize | ( | void | ) |
テクスチャサイズ参照関数
矩形テクスチャの大きさを取得します。
| void fk_RectTexture::setRepeatMode | ( | bool | mode | ) |
リピートモード設定関数
リピートモードの設定を行います。 リピートモードを有効にすると、画像が縦横に行列上に並んでいる状態になります。 並ぶ枚数については、 setRepeatParam() 関数で設定します。
リピートモードを利用する場合、画像の横幅、縦幅いずれも
(n は整数) で表される数値でなければならないという条件があります。 (横幅と縦幅は一致している必要はありません。) この条件を満たさなかった場合の動作は保証されません。 また、リピートモードを有効とした場合、 setTextureCoord() による 画像の切り出しも無効となります。
| [in] | mode | true であればリピートモードを有効とし、 false であれば無効とします。 |
| bool fk_RectTexture::getRepeatMode | ( | void | ) |
リピートモード参照関数
現在のリピートモードの状態を取得します。
| void fk_RectTexture::setRepeatParam | ( | double | wNum, |
| double | hNum | ||
| ) |
リピートモード枚数設定関数
リピートモードでの、縦方向と横方向に並べる枚数を設定します。 リピートモードについては setRepeatMode() の説明を参照して下さい。
なお、枚数は正であれば整数である必要はありません。 その場合は、右端と上端の画像が途中で切れます。
| [in] | wNum | 横方法の枚数 |
| [in] | hNum | 縦方向の枚数 |
| fk_TexCoord fk_RectTexture::getRepeatParam | ( | void | ) |
| void fk_RectTexture::setTextureCoord | ( | double | sX, |
| double | sY, | ||
| double | eX, | ||
| double | eY | ||
| ) |
部分抽出設定関数1
画像の部分矩形領域を切り出し、その部分をテクスチャ画像とします。 領域指定はテクスチャ座標系を用います。 テクスチャ座標系については fk_TexCoord の説明を参照して下さい。 なお、 setRepeatMode() でリピートモードを有効とした場合、 この部分抽出の設定は無効となります。
| [in] | sX | 抽出左下部分の x 成分 |
| [in] | sY | 抽出左下部分の y 成分 |
| [in] | eX | 抽出右上部分の x 成分 |
| [in] | eY | 抽出右上部分の y 成分 |
| void fk_RectTexture::setTextureCoord | ( | const fk_TexCoord & | S, |
| const fk_TexCoord & | E | ||
| ) |
部分抽出設定関数2
画像の部分矩形領域を切り出し、その部分をテクスチャ画像とします。 領域指定はテクスチャ座標系を用います。 テクスチャ座標系については fk_TexCoord の説明を参照して下さい。 なお、 setRepeatMode() でリピートモードを有効とした場合、 この部分抽出の設定は無効となります。
| [in] | S | 抽出左下部分のテクスチャ座標 |
| [in] | E | 抽出右上部分のテクスチャ座標 |
| fk_TexCoord fk_RectTexture::getTextureCoord | ( | int | ID | ) |
部分抽出参照関数
setTextureCoord() 関数によって部分抽出領域を設定した場合、 その領域のテクスチャ座標を取得します。
| [in] | ID | 0 であれば左下部のテクスチャ座標を、 1 であれば右上部のテクスチャ座標を返します。 それ以外の値を入力した場合は、常に (0, 0) を返します。 |
1.8.5