FineKernelToolKit 3.1.0

- 総合概要
- 名前空間
- クラス
- ファイル

- クラス一覧
- クラス階層
- クラスメンバ

公開メンバ関数 | プロパティ | 全メンバ一覧
FK_CLI::fk_Loop クラス

ソリッドモデルのループ位相を管理するクラス [詳解]

FK_CLI::fk_Loop の継承関係図
[凡例]
FK_CLI::fk_Loop 連携図
[凡例]

## 公開メンバ関数
bool | IsTesselated (void)
| テセレーション状態参照メソッド [詳解]
基底クラス 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_Half^ | OneHalf`[get]`
| 接続半稜線プロパティ [詳解]
fk_Vector^ | Normal`[get]`
| 法線ベクトルプロパティ [詳解]
int | VertexNum`[get]`
| 頂点数プロパティ [詳解]
bool | TesselateMode`[get, set]`
| テセレーション設定プロパティ [詳解]
基底クラス FK_CLI::fk_TopologyMaterial に属する継承プロパティ
fk_MaterialMode | MaterialMode`[get, set]`
| マテリアルモードプロパティ [詳解]
int | MaterialID`[get, set]`
| マテリアルIDプロパティ [詳解]
基底クラス FK_CLI::fk_Topology に属する継承プロパティ
int | ID`[get]`
| IDプロパティ [詳解]
fk_TopologyType | Type`[get]`
| 位相タイププロパティ [詳解]

## 詳解

ソリッドモデルのループ位相を管理するクラス

このクラスは、 fk_Solid によるソリッドモデルにおいて、 ループ位相に関する制御機能を提供します。 FK におけるソリッドモデルの構造については、 ユーザーズマニュアルの「形状に対する高度な操作」の章を参照して下さい。

派生クラスのうち、ID 管理については fk_Topology, 個別マテリアル設定については fk_TopologyMaterial, 属性設定については fk_Attribute を参照して下さい。

ループに対して、幾何形状として曲面データを設定することができます。 詳細は fk_Surface を参照して下さい。

参照
  fk_Solid, fk_Vertex, fk_Half, fk_Edge, fk_Topology, fk_TopologyMaterial, fk_Attribute, fk_Surface

## 関数詳解

bool FK_CLI::fk_Loop::IsTesselated | ( | void |  | ) |

テセレーション状態参照メソッド

テセレーションが有効になっていても、ループが 3 角形であった場合など、 内部ではテセレーション処理を行っていない可能性があります。 実際にテセレーション処理を行ったかどうかを知るには、 このメソッドを用いる必要があります。

戻り値
  true であれば、ループに対しテセレーション処理が行われています。 false であれば行われていません。

参照
  TesselateMode

## プロパティ詳解

fk_Half^ FK_CLI::fk_Loop::OneHalf
| get

接続半稜線プロパティ

このループを構成する半稜線のうちの1つを参照します。 条件を満たす全ての半稜線を得たい場合は、 fk_Reference::GetAllHOnL() メソッドを用いて下さい。

戻り値
  このループを構成する半稜線を表す fk_Half 型インスタンスのアドレス。

fk_Vector^ FK_CLI::fk_Loop::Normal
| get

法線ベクトルプロパティ

適切な法線ベクトルを参照します。 ループが曲面である場合は、面全体の平均法線ベクトルとなります。 null となるケースがありえることに注意して下さい。

戻り値
  法線ベクトルのアドレス。算出できなかった場合は null を返します。

int FK_CLI::fk_Loop::VertexNum
| get

頂点数プロパティ

このループを構成する頂点数を参照します。

戻り値
  ループを構成する頂点数。もしエラーが生じた場合は -1 となります。

参照
  fk_Reference::GetVNumOnL()

bool FK_CLI::fk_Loop::TesselateMode
| get set

テセレーション設定プロパティ

true の場合、4角以上のループに対してテセレーション処理を施すようになります。 false の場合はテセレーション処理を行いません。

「テセレーション」とは、4角以上の多角形に対し、 内部を複数の3角形に分割する処理のことです。 一般的に、非凸多角形や非平面多角形である場合、 描画処理が適切に行えないことがあります。 そのようなループに対しては、 テセレーションを施すことによって正常に描画されることが期待できます。

形状中の全てのループに対して、テセレーションの有無効を設定するには、 fk_Operation::TesselateMode を利用して下さい。

参照
  fk_Operation::TesselateMode