FineKernelToolKit: FK_CLI::fk_RectTexture クラス

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_TexCoord ^ | GetTextureCoord (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_TexCoord^ | TextureSize`[get, set]`
| テクスチャサイズプロパティ
bool | RepeatMode`[get, set]`
| リピートモードプロパティ
fk_TexCoord^ | RepeatParam`[get, set]`
| リピートモード枚数プロパティ
基底クラス FK_CLI::fk_Texture に属する継承プロパティ
fk_Image^ | Image`[get, set]`
| 画像データプロパティ
fk_Dimension^ | ImageSize`[get]`
| 画像サイズプロパティ
fk_Dimension^ | BufferSize`[get]`
| 画像バッファサイズプロパティ
fk_TexMode | TextureMode`[get, set]`
| テクスチャモードプロパティ
fk_TexRendMode | RendMode`[get, set]`
| テクスチャ描画品質プロパティ
fk_TexWrapMode | WrapMode`[get, set]`
| テクスチャ外周部設定プロパティ
fk_FrameBuffer^ | FrameBuffer`[get, set]`
| フレームバッファープロパティ
基底クラス FK_CLI::fk_Shape に属する継承プロパティ
fk_RealShapeType^ | RealShapeType`[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] | ID | 0 であれば左下部のテクスチャ座標を、 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