FineKernelToolKit  2.9.0
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義 ページ
Public メソッド | すべてのメンバ一覧
クラス fk_RectTexture

矩形テクスチャを生成、管理するクラス [詳細]

+ 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_ImagegetImage (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_DimensiongetImageSize (void)
 画像サイズ取得関数 [詳細]
 
const fk_DimensiongetBufferSize (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_PalettegetPaletteData (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_MaterialgetMaterial (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
 タイプ取得関数 [詳細]
 

説明

矩形テクスチャを生成、管理するクラス

このクラスは、矩形型のテクスチャを制御する機能を提供します。 テクスチャを表示する方法としては、最も簡単なクラスとなります。

テクスチャ画像を表示する最低限の手順は、以下の通りです。

  1. 画像を入力する。
  2. setTextureSize() 関数で大きさを設定する。
  3. fk_Model に登録する。

あとは、他の形状クラスと同様です。

矩形の配置は、モデルの方向ベクトルに垂直となり、 画像の中心とモデルの中心が一致するように配置されます。 また、画像の表側はモデルの後方 (初期状態では +z 方向) 側から見た場合に見えるという点に注意して下さい。

参照
fk_Texture, fk_TriTexture, fk_MeshTexture, fk_IFSTexture

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

fk_RectTexture::fk_RectTexture ( fk_Image image = (fk_Image *) NULL)

コンストラクタ

引数
[in]imageテクスチャ画像。省略するか NULL を代入した場合は、 テクスチャ画像を初期状態では生成しません。
virtual fk_RectTexture::~fk_RectTexture ( )
virtual

デストラクタ

関数

void fk_RectTexture::init ( void  )

初期化関数

現在設定されているテクスチャ画像を廃棄し、全ての設定を初期状態に戻します。

bool fk_RectTexture::setTextureSize ( double  w,
double  h 
)

テクスチャサイズ設定関数

矩形テクスチャの大きさを設定します。

引数
[in]w横幅
[in]h縦幅
戻り値
横幅、縦幅のいずれかで 0 以下の値が入力されていた場合、 false を返します。設定に成功した場合は true を返します。
fk_TexCoord fk_RectTexture::getTextureSize ( void  )

テクスチャサイズ参照関数

矩形テクスチャの大きさを取得します。

戻り値
矩形テクスチャの大きさ
void fk_RectTexture::setRepeatMode ( bool  mode)

リピートモード設定関数

リピートモードの設定を行います。 リピートモードを有効にすると、画像が縦横に行列上に並んでいる状態になります。 並ぶ枚数については、 setRepeatParam() 関数で設定します。

リピートモードを利用する場合、画像の横幅、縦幅いずれも $ 2^n $ (n は整数) で表される数値でなければならないという条件があります。 (横幅と縦幅は一致している必要はありません。) この条件を満たさなかった場合の動作は保証されません。 また、リピートモードを有効とした場合、 setTextureCoord() による 画像の切り出しも無効となります。

引数
[in]modetrue であればリピートモードを有効とし、 false であれば無効とします。
参照
setRepeatParam()
bool fk_RectTexture::getRepeatMode ( void  )

リピートモード参照関数

現在のリピートモードの状態を取得します。

戻り値
true であればリピートモードが有効であることを意味します。 false であれば無効であることを意味します。
参照
setRepeatMode()
void fk_RectTexture::setRepeatParam ( double  wNum,
double  hNum 
)

リピートモード枚数設定関数

リピートモードでの、縦方向と横方向に並べる枚数を設定します。 リピートモードについては setRepeatMode() の説明を参照して下さい。

なお、枚数は正であれば整数である必要はありません。 その場合は、右端と上端の画像が途中で切れます。

引数
[in]wNum横方法の枚数
[in]hNum縦方向の枚数
参照
setRepeatMode()
fk_TexCoord fk_RectTexture::getRepeatParam ( void  )

リピートモード枚数参照関数

リピートモードの、各方向の枚数を取得します。

戻り値
各方向の枚数
参照
setRepeatParam()
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]ID0 であれば左下部のテクスチャ座標を、 1 であれば右上部のテクスチャ座標を返します。 それ以外の値を入力した場合は、常に (0, 0) を返します。
戻り値
左上部、または右上部のテクスチャ座標
参照
setTextureCoord()