FineKernelToolKit  3.1.0
IFSTexture_CLI.h
[詳解]
1 // IFSTexture_CLI.h
2 
3 #pragma once
4 
5 #include <FK/IFSTexture.h>
6 #include "Texture_CLI.h"
7 #include "IndexFace_CLI.h"
8 
9 namespace FK_CLI
10 {
11 
13 
43  public ref class fk_IFSTexture : fk_Texture {
44  internal:
45 
46  ::fk_IFSTexture * GetP(void);
47 
48  public:
49 #ifndef FK_DOXYGEN_USER_PROCESS
50  fk_IFSTexture(bool argNewFlg);
51 #endif
52 
56  fk_IFSTexture();
57 
59 
66  fk_IFSTexture(fk_Image^ image);
67 
70 
72  !fk_IFSTexture();
73 
74 
76 
83  property fk_IndexFaceSet^ IFS {
84  fk_IndexFaceSet^ get();
85  }
86 
88 
92  property double AnimationTime {
93  void set(double);
94  }
95 
97 
102  void set(fk_BVHMotion^);
103  }
104 
106 
120  property bool ConnectMode {
121  void set(bool);
122  bool get();
123  }
124 
126 
130  void Init(void);
131 
133 
141  fk_TexCoord^ GetTextureCoord(int tID, int vID);
142 
144 
149  void CloneShape(fk_IFSTexture^ ifsTex);
150 
152 
160  void SetTextureCoord(int tID, int vID, fk_TexCoord^ coord);
161 
163 
194  bool ReadMQOFile(String^ fileName, String^ objName, int materialID, bool contFlg);
195 
197 
222  bool ReadMQOFile(String^ fileName, String^ objName, int materialID);
223 
225 
245  bool ReadMQOFile(String^ fileName, String^ objName);
246 
248 
273  bool ReadD3DXFile(String^ fileName, String^ objName, int materialID);
274 
276 
299  bool ReadD3DXFile(String^ fileName, String^ objName);
300 
302 
311  bool MoveVPosition(int vID, const fk_Vector^ pos, int order);
312 
314 
322  bool MoveVPosition(int vID, const fk_Vector^ pos);
323 
325 
336  bool MoveVPosition(int vID, double x, double y, double z, int order);
337 
339 
349  bool MoveVPosition(int vID, double x, double y, double z);
350  };
351 }
352 
353 /****************************************************************************
354  *
355  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
356  *
357  * Redistribution and use in source and binary forms,
358  * with or without modification, are permitted provided that the
359  * following conditions are met:
360  *
361  * - Redistributions of source code must retain the above
362  * copyright notice, this list of conditions and the
363  * following disclaimer.
364  *
365  * - Redistributions in binary form must reproduce the above
366  * copyright notice, this list of conditions and the
367  * following disclaimer in the documentation and/or
368  * other materials provided with the distribution.
369  *
370  * - Neither the name of the copyright holders nor the names
371  * of its contributors may be used to endorse or promote
372  * products derived from this software without specific
373  * prior written permission.
374  *
375  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
376  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
377  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
378  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
379  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
380  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
381  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
382  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
383  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
384  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
385  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
386  * POSSIBILITY OF SUCH DAMAGE.
387  *
388  ****************************************************************************/
389 /****************************************************************************
390  *
391  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
392  *
393  * 本ソフトウェアおよびソースコードのライセンスは、基本的に
394  * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
395  *
396  * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
397  * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
398  *
399  * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
400  * および下記免責条項を含めること。
401  *
402  * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
403  * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
404  * 含めること。
405  *
406  * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
407  * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
408  * コントリビューターの名前を使用してはならない。
409  *
410  * 本ソフトウェアは、著作権者およびコントリビューターによって「現
411  * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
412  * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
413  * に限定されない、いかなる保証もないものとします。著作権者もコン
414  * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
415  * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
416  * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
417  * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
418  * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
419  * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
420  * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
421  * ついて、一切責任を負わないものとします。
422  *
423  ****************************************************************************/
インデックスフェースセットによる任意形状を生成、管理するクラス
Definition: IndexFace_CLI.h:75
void CloneShape(fk_IFSTexture^ ifsTex)
形状コピーメソッド
BVH 形式のモーションデータを読み込み、保持するクラス
Definition: BVHMotion_CLI.h:22
~fk_IFSTexture()
デストラクタ
fk_BVHMotion^ BVHMotion
BVH データプロパティ
Definition: IFSTexture_CLI.h:101
bool MoveVPosition(int vID, const fk_Vector^ pos, int order)
頂点移動メソッド1
テクスチャ用基底クラス
Definition: Texture_CLI.h:134
double AnimationTime
アニメーション時間プロパティ
Definition: IFSTexture_CLI.h:92
3次元ベクトルを管理するクラス
Definition: Vector_CLI.h:37
void SetTextureCoord(int tID, int vID, fk_TexCoord^ coord)
テクスチャ座標設定メソッド
bool ReadD3DXFile(String^ fileName, String^ objName, int materialID)
DirectX (D3DX) ファイル入力メソッド1.
IFSテクスチャを生成、管理するクラス
Definition: IFSTexture_CLI.h:43
fk_IFSTexture()
コンストラクタ1
fk_TexCoord^ GetTextureCoord(int tID, int vID)
テクスチャ座標参照メソッド
bool ConnectMode
法線連続性プロパティ
Definition: IFSTexture_CLI.h:120
画像を生成、管理するクラス
Definition: Image_CLI.h:210
bool ReadMQOFile(String^ fileName, String^ objName, int materialID, bool contFlg)
MQOファイル入力メソッド1.
fk_IndexFaceSet^ IFS
形状データプロパティ
Definition: IFSTexture_CLI.h:83
テクスチャ座標を管理するクラス
Definition: Texture_CLI.h:42
Definition: AppWindow_CLI.h:11
void Init(void)
初期化メソッド