FineKernelToolKit  3.1.0
MeshTexture_CLI.h
[詳解]
1 // MeshTexture_CLI.h
2 
3 #pragma once
4 
5 #include <FK/Texture.h>
6 #include "Texture_CLI.h"
7 #include "Vector_CLI.h"
8 #include "IndexFace_CLI.h"
9 
10 namespace FK_CLI
11 {
12  using namespace System::Collections::Generic;
13 
15 
43  public ref class fk_MeshTexture : fk_Texture {
44  internal:
45  ::fk_MeshTexture * GetP(void);
46 
47  public:
48 #ifndef FK_DOXYGEN_USER_PROCESS
49  fk_MeshTexture(bool argNewFlg);
50 #endif
51 
56 
58 
63  fk_MeshTexture(fk_Image^ image);
64 
66  ~fk_MeshTexture();
67 
69  !fk_MeshTexture();
70 
72 
76  property int TriNum {
77  void set(int);
78  int get();
79  }
80 
82 
85  void Init(void);
86 
88 
111  bool SetTextureCoord(int tID, int vID, double x, double y);
112 
114 
133  bool SetTextureCoord(int tID, int vID, fk_TexCoord^ coord);
134 
136 
151  bool SetTriTextureCoord(int tID, IEnumerable<fk_TexCoord^>^ array);
152 
154 
168  fk_TexCoord^ GetTextureCoord(int tID, int vID);
169 
171 
189  bool SetVertexPos(int tID, int vID, double x, double y, double z);
190 
192 
208  bool SetVertexPos(int tID, int vID, fk_Vector^ pos);
209 
211 
225  bool SetTriPos(int tID, IEnumerable<fk_Vector^>^ array);
226 
228 
242  fk_Vector^ GetVertexPos(int tID, int vID);
243 
245 
251  void PutIndexFaceSet(fk_IndexFaceSet^ ifs);
252 
254 
280  bool ReadMQOFile(String^ fileName, String^ objName, bool contFlg);
281 
283 
303  bool ReadMQOFile(String^ fileName, String^ objName);
304  };
305 }
306 
307 /****************************************************************************
308  *
309  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
310  *
311  * Redistribution and use in source and binary forms,
312  * with or without modification, are permitted provided that the
313  * following conditions are met:
314  *
315  * - Redistributions of source code must retain the above
316  * copyright notice, this list of conditions and the
317  * following disclaimer.
318  *
319  * - Redistributions in binary form must reproduce the above
320  * copyright notice, this list of conditions and the
321  * following disclaimer in the documentation and/or
322  * other materials provided with the distribution.
323  *
324  * - Neither the name of the copyright holders nor the names
325  * of its contributors may be used to endorse or promote
326  * products derived from this software without specific
327  * prior written permission.
328  *
329  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
330  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
331  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
332  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
333  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
334  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
335  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
336  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
337  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
338  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
339  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
340  * POSSIBILITY OF SUCH DAMAGE.
341  *
342  ****************************************************************************/
343 /****************************************************************************
344  *
345  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
346  *
347  * 本ソフトウェアおよびソースコードのライセンスは、基本的に
348  * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
349  *
350  * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
351  * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
352  *
353  * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
354  * および下記免責条項を含めること。
355  *
356  * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
357  * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
358  * 含めること。
359  *
360  * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
361  * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
362  * コントリビューターの名前を使用してはならない。
363  *
364  * 本ソフトウェアは、著作権者およびコントリビューターによって「現
365  * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
366  * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
367  * に限定されない、いかなる保証もないものとします。著作権者もコン
368  * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
369  * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
370  * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
371  * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
372  * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
373  * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
374  * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
375  * ついて、一切責任を負わないものとします。
376  *
377  ****************************************************************************/
インデックスフェースセットによる任意形状を生成、管理するクラス
Definition: IndexFace_CLI.h:75
メッシュテクスチャを生成、管理するクラス
Definition: MeshTexture_CLI.h:43
テクスチャ用基底クラス
Definition: Texture_CLI.h:134
3次元ベクトルを管理するクラス
Definition: Vector_CLI.h:37
画像を生成、管理するクラス
Definition: Image_CLI.h:210
テクスチャ座標を管理するクラス
Definition: Texture_CLI.h:42
Definition: AppWindow_CLI.h:11