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

Bezier曲面を生成、管理するクラス [詳解]

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

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

公開メンバ関数

 fk_BezSurface ()
 コンストラクタ
 ~fk_BezSurface ()
 デストラクタ
 !fk_BezSurface ()
 ファイナライザ
void Init (void)
 初期化用メソッド
bool SetCtrl (int uID, int vID, fk_Vector^ pos)
 制御点設定メソッド1
fk_VectorGetCtrl (int uID, int vID)
 制御点参照メソッド
fk_VectorPos (double u, double v)
 曲面点算出関数
fk_VectorNorm (double u, double v)
 曲面法線ベクトル算出メソッド
fk_VectorUDeriv (double u, double v)
 曲面 u 方向偏微分ベクトル算出メソッド
fk_VectorVDeriv (double u, double v)
 曲面 v 方向偏微分ベクトル算出メソッド
基底クラス 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 型である属性消去メソッド

プロパティ

int Degree [get, set]
 次数プロパティ
int Div [get, set]
 分割数プロパティ
基底クラス FK_CLI::fk_Shape に属する継承プロパティ
fk_RealShapeTypeRealShapeType [get]
 形状データ構造プロパティ

詳解

Bezier曲面を生成、管理するクラス

このクラスは、形状として Bezier 曲面を制御する機能を提供します。 初期状態はu,v両方で 3 次式で、制御点が全て原点にある状態となります。 現状では、2,3,4次式のいずれかのみしか生成できません。

構築子と解体子

◆ fk_BezSurface()

FK_CLI::fk_BezSurface::fk_BezSurface ( )

コンストラクタ

◆ ~fk_BezSurface()

FK_CLI::fk_BezSurface::~fk_BezSurface ( )

デストラクタ

◆ !fk_BezSurface()

FK_CLI::fk_BezSurface::!fk_BezSurface ( )

ファイナライザ

関数詳解

◆ Init()

void FK_CLI::fk_BezSurface::Init ( void )

初期化用メソッド

このメソッドは、曲面を初期状態(3次式、全ての制御点が原点にある状態)にします。

◆ SetCtrl()

bool FK_CLI::fk_BezSurface::SetCtrl ( int uID,
int vID,
fk_Vector^ pos )

制御点設定メソッド1

曲面の制御点位置ベクトルを設定します。

引数
[in]uID設定する制御点の u方向 ID。先頭は 0 になります。
[in]vID設定する制御点の v方向 ID。先頭は 0 になります。
[in]pos制御点位置ベクトル
戻り値
設定に成功した場合 true、失敗した場合 false を返します。

◆ GetCtrl()

fk_Vector ^ FK_CLI::fk_BezSurface::GetCtrl ( int uID,
int vID )

制御点参照メソッド

曲面の制御点位置ベクトルを参照します。

引数
[in]uID制御点のu方向ID
[in]vID制御点のv方向ID
戻り値
制御点位置ベクトル。IDが不正だった場合、零ベクトルを返します。

◆ Pos()

fk_Vector ^ FK_CLI::fk_BezSurface::Pos ( double u,
double v )

曲面点算出関数

パラメータに対応する曲面上の点の位置ベクトルを返します。

引数
[in]u曲面の u パラメータ
[in]v曲面の v パラメータ
戻り値
曲面上の点の位置ベクトル

◆ Norm()

fk_Vector ^ FK_CLI::fk_BezSurface::Norm ( double u,
double v )

曲面法線ベクトル算出メソッド

曲面上の法線ベクトルを返します。

引数
[in]uu パラメータ
[in]vv パラメータ
戻り値
曲面上の法線ベクトル

◆ UDeriv()

fk_Vector ^ FK_CLI::fk_BezSurface::UDeriv ( double u,
double v )

曲面 u 方向偏微分ベクトル算出メソッド

曲面上の u 方向偏微分ベクトルを返します。

引数
[in]uu パラメータ
[in]vv パラメータ
戻り値
曲面上の u 方向偏微分ベクトル

◆ VDeriv()

fk_Vector ^ FK_CLI::fk_BezSurface::VDeriv ( double u,
double v )

曲面 v 方向偏微分ベクトル算出メソッド

曲面上の v 方向偏微分ベクトルを返します。

引数
[in]uu パラメータ
[in]vv パラメータ
戻り値
曲面上の v 方向偏微分ベクトル

プロパティ詳解

◆ Degree

int FK_CLI::fk_BezSurface::Degree
getset

次数プロパティ

このプロパティは、曲面次数の設定や参照に使用します。 現状では、2,3,4のいずれかのみ以外は設定できません。 設定した場合、全ての制御点の位置ベクトルは原点になります。

◆ Div

int FK_CLI::fk_BezSurface::Div
getset

分割数プロパティ

このプロパティは、描画時分割数の設定や参照に使用します。