FineKernelToolKit 4.3.0
読み取り中…
検索中…
一致する文字列を見つけられません
FK_CLI::fk_RectTexture クラス

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

#include <CLI/FK_CLI/include/RectTexture_CLI.h>

FK_CLI::fk_RectTexture の継承関係図
FK_CLI::fk_RectTexture 連携図

公開メンバ関数

 fk_RectTexture ()
 コンストラクタ1
 fk_RectTexture (fk_Image^ image)
 コンストラクタ2
 ~fk_RectTexture ()
 デストラクタ
 !fk_RectTexture ()
 ファイナライザ
void Init (void)
 初期化メソッド
void SetTextureCoord (double sX, double sY, double eX, double eY)
 部分抽出設定メソッド1
void SetTextureCoord (fk_TexCoord^ S, fk_TexCoord^ E)
 部分抽出設定メソッド2
fk_TexCoordGetTextureCoord (int ID)
 部分抽出参照メソッド
基底クラス FK_CLI::fk_Texture に属する継承公開メンバ関数
bool ReadBMP (String^ fileName)
 BMP ファイル入力メソッド
bool ReadPNG (String^ fileName)
 PNG ファイル入力メソッド
bool ReadJPG (String^ fileName)
 JPEG ファイル入力メソッド
void FillColor (fk_Color^ color)
 一様色初期化メソッド1
void InitFrameBuffer (void)
 フレームバッファー情報初期化メソッド
基底クラス FK_CLI::fk_Shape に属する継承公開メンバ関数
void SetShaderAttribute (String^ name, int dim, IEnumerable< int >^ array)
 シェーダー内 attribute 変数設定メソッド1
void SetShaderAttribute (String^ name, int dim, IEnumerable< float >^ array)
 シェーダー内 attribute 変数設定メソッド2
void SetShaderAttribute (String^ name, int dim, IEnumerable< double >^ array)
 シェーダー内 attribute 変数設定メソッド3
void SetShaderAttribute (String^ name, int dim, IEnumerable< fk_Vector^>^ array)
 シェーダー内 attribute 変数設定メソッド4
void SetShaderAttribute (String^ name, int dim, IEnumerable< fk_TexCoord^>^ array)
 シェーダー内 attribute 変数設定メソッド5
void SetShaderAttribute (String^ name, int dim, IEnumerable< fk_HVector^>^ array)
 シェーダー内 attribute 変数設定メソッド6
基底クラス FK_CLI::fk_Attribute に属する継承公開メンバ関数
bool SetAttrII (int key, int value)
 キーが int 型、値が int 型である属性設定メソッド
bool SetAttrID (int key, double value)
 キーが int 型、値が double 型である属性設定メソッド
bool SetAttrIS (int key, String^ value)
 キーが int 型、値が String 型である属性設定メソッド
bool SetAttrSI (String^ key, int value)
 キーが String 型、値が int 型である属性設定メソッド
bool SetAttrSD (String^ key, double value)
 キーが String 型、値が double 型である属性設定メソッド
bool SetAttrSS (String ^ key, String^ value)
 キーが String 型、値が String 型である属性設定メソッド
int GetAttrII (int key)
 キーが int 型、値が int 型である属性参照メソッド
double GetAttrID (int key)
 キーが int 型、値が double 型である属性参照メソッド
String ^ GetAttrIS (int key)
 キーが int 型、値が String 型である属性参照メソッド
int GetAttrSI (String^ key)
 キーが String 型、値が int 型である属性参照メソッド
double GetAttrSD (String^ key)
 キーが String 型、値が double 型である属性参照メソッド
String ^ GetAttrSS (String^ key)
 キーが String 型、値が String 型である属性参照メソッド
bool ExistAttrII (int key)
 キーが int 型、値が int 型である属性存在参照メソッド
bool ExistAttrID (int key)
 キーが int 型、値が double 型である属性存在参照メソッド
bool ExistAttrIS (int key)
 キーが int 型、値が String 型である属性存在参照メソッド
bool ExistAttrSI (String^ key)
 キーが String 型、値が int 型である属性存在参照メソッド
bool ExistAttrSD (String^ key)
 キーが String 型、値が double 型である属性存在参照メソッド
bool ExistAttrSS (String^ key)
 キーが String 型、値が String 型である属性存在参照メソッド
bool DeleteAttrII (int key)
 キーが int 型、値が int 型である属性消去メソッド
bool DeleteAttrID (int key)
 キーが int 型、値が double 型である属性消去メソッド
bool DeleteAttrIS (int key)
 キーが int 型、値が String 型である属性消去メソッド
bool DeleteAttrSI (String^ key)
 キーが String 型、値が int 型である属性消去メソッド
bool DeleteAttrSD (String^ key)
 キーが String 型、値が double 型である属性消去メソッド
bool DeleteAttrSS (String^ key)
 キーが String 型、値が String 型である属性消去メソッド

プロパティ

fk_TexCoordTextureSize [get, set]
 テクスチャサイズプロパティ
bool RepeatMode [get, set]
 リピートモードプロパティ
fk_TexCoordRepeatParam [get, set]
 リピートモード枚数プロパティ
基底クラス FK_CLI::fk_Texture に属する継承プロパティ
fk_ImageImage [get, set]
 画像データプロパティ
fk_DimensionImageSize [get]
 画像サイズプロパティ
fk_DimensionBufferSize [get]
 画像バッファサイズプロパティ
fk_TexMode TextureMode [get, set]
 テクスチャモードプロパティ
fk_TexRendMode RendMode [get, set]
 テクスチャ描画品質プロパティ
fk_TexWrapMode WrapMode [get, set]
 テクスチャ外周部設定プロパティ
fk_FrameBufferFrameBuffer [get, set]
 フレームバッファープロパティ
基底クラス FK_CLI::fk_Shape に属する継承プロパティ
fk_RealShapeTypeRealShapeType [get]
 形状データ構造プロパティ

詳解

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

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

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

  1. 画像を入力する。
  2. fk_RectTexture::TextureSize プロパティへの設定によって、大きさを設定する。
  3. fk_Model に登録する。

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

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

参照
fk_Texture, fk_TriTexture, fk_MeshTexture, fk_IFSTexture

構築子と解体子

◆ fk_RectTexture() [1/2]

FK_CLI::fk_RectTexture::fk_RectTexture ( )

コンストラクタ1

◆ fk_RectTexture() [2/2]

FK_CLI::fk_RectTexture::fk_RectTexture ( fk_Image^ image)

コンストラクタ2

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

◆ ~fk_RectTexture()

FK_CLI::fk_RectTexture::~fk_RectTexture ( )

デストラクタ

◆ !fk_RectTexture()

FK_CLI::fk_RectTexture::!fk_RectTexture ( )

ファイナライザ

関数詳解

◆ Init()

void FK_CLI::fk_RectTexture::Init ( void )

初期化メソッド

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

◆ SetTextureCoord() [1/2]

void FK_CLI::fk_RectTexture::SetTextureCoord ( double sX,
double sY,
double eX,
double eY )

部分抽出設定メソッド1

画像の部分矩形領域を切り出し、その部分をテクスチャ画像とします。 領域指定はテクスチャ座標系を用います。 テクスチャ座標系については fk_TexCoord の説明を参照して下さい。 なお、 fk_RectTexture::RepeatMode でリピートモードを有効とした場合、 この部分抽出の設定は無効となります。

引数
[in]sX抽出左下部分の x 成分
[in]sY抽出左下部分の y 成分
[in]eX抽出右上部分の x 成分
[in]eY抽出右上部分の y 成分

◆ SetTextureCoord() [2/2]

void FK_CLI::fk_RectTexture::SetTextureCoord ( fk_TexCoord^ S,
fk_TexCoord^ E )

部分抽出設定メソッド2

画像の部分矩形領域を切り出し、その部分をテクスチャ画像とします。 領域指定はテクスチャ座標系を用います。 テクスチャ座標系については fk_TexCoord の説明を参照して下さい。 なお、 fk_RectTexture::RepeatMode でリピートモードを有効とした場合、 この部分抽出の設定は無効となります。

引数
[in]S抽出左下部分のテクスチャ座標
[in]E抽出右上部分のテクスチャ座標

◆ GetTextureCoord()

fk_TexCoord ^ FK_CLI::fk_RectTexture::GetTextureCoord ( int ID)

部分抽出参照メソッド

setTextureCoord() メソッドによって部分抽出領域を設定した場合、 その領域のテクスチャ座標を取得します。

引数
[in]ID0 であれば左下部のテクスチャ座標を、 1 であれば右上部のテクスチャ座標を返します。 それ以外の値を入力した場合は、常に (0, 0) を返します。
戻り値
左上部、または右上部のテクスチャ座標
参照
SetTextureCoord()

プロパティ詳解

◆ TextureSize

fk_TexCoord^ FK_CLI::fk_RectTexture::TextureSize
getset

テクスチャサイズプロパティ

矩形テクスチャの大きさの参照・設定を行います。

参照
fk_TexCoord

◆ RepeatMode

bool FK_CLI::fk_RectTexture::RepeatMode
getset

リピートモードプロパティ

リピートモードの参照・設定を行います。 true であればリピートモードを有効とし、 false であれば無効とします。

リピートモードを有効にすると、画像が縦横に行列上に並んでいる状態になります。 並ぶ枚数については、 fk_RectTexture::RepeatParam プロパティで設定します。

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

参照
RepeatParam

◆ RepeatParam

fk_TexCoord^ FK_CLI::fk_RectTexture::RepeatParam
getset

リピートモード枚数プロパティ

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

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

参照
RepeatMode