FineKernelToolKit  3.1.0
Topology_CLI.h
[詳解]
1 // Topology_CLI.h
2 
3 #pragma once
4 
5 #include <FK/Topology.h>
6 #include "Attribute_CLI.h"
7 #include "Palette_CLI.h"
8 
9 namespace FK_CLI
10 {
12  public enum class fk_TopologyType {
13  VERTEX,
14  HALF,
15  EDGE,
16  LOOP,
17  INDEXFACE,
18  UNDEFINED
19  };
20 
22 
29  public ref class fk_Topology : fk_Attribute {
30  internal:
31  ::fk_Topology * GetP(void);
32 
33  public:
34 #ifndef FK_DOXYGEN_USER_PROCESS
35  fk_Topology(bool argNewFlg);
36  ~fk_Topology();
37 #endif
38 
40  property int ID {
41  int get();
42  }
43 
45 
55  property fk_TopologyType Type {
56  fk_TopologyType get();
57  }
58  };
59 
61 
71  public ref class fk_TopologyMaterial : fk_Topology {
72  internal:
73  ::fk_TopologyMaterial * GetP(void);
74 
75  public:
76 #ifndef FK_DOXYGEN_USER_PROCESS
77  fk_TopologyMaterial(bool argNewFlg);
80 #endif
81 
83 
102  fk_MaterialMode get();
103  void set(fk_MaterialMode);
104  }
105 
107 
112  property int MaterialID {
113  int get();
114  void set(int);
115  }
116  };
117 }
118 
119 /****************************************************************************
120  *
121  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
122  *
123  * Redistribution and use in source and binary forms,
124  * with or without modification, are permitted provided that the
125  * following conditions are met:
126  *
127  * - Redistributions of source code must retain the above
128  * copyright notice, this list of conditions and the
129  * following disclaimer.
130  *
131  * - Redistributions in binary form must reproduce the above
132  * copyright notice, this list of conditions and the
133  * following disclaimer in the documentation and/or
134  * other materials provided with the distribution.
135  *
136  * - Neither the name of the copyright holders nor the names
137  * of its contributors may be used to endorse or promote
138  * products derived from this software without specific
139  * prior written permission.
140  *
141  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
142  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
143  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
144  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
145  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
146  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
147  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
148  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
149  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
150  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
151  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
152  * POSSIBILITY OF SUCH DAMAGE.
153  *
154  ****************************************************************************/
155 /****************************************************************************
156  *
157  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
158  *
159  * 本ソフトウェアおよびソースコードのライセンスは、基本的に
160  * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
161  *
162  * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
163  * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
164  *
165  * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
166  * および下記免責条項を含めること。
167  *
168  * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
169  * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
170  * 含めること。
171  *
172  * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
173  * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
174  * コントリビューターの名前を使用してはならない。
175  *
176  * 本ソフトウェアは、著作権者およびコントリビューターによって「現
177  * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
178  * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
179  * に限定されない、いかなる保証もないものとします。著作権者もコン
180  * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
181  * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
182  * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
183  * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
184  * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
185  * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
186  * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
187  * ついて、一切責任を負わないものとします。
188  *
189  ****************************************************************************/
位相要素個別マテリアル管理クラス
Definition: Topology_CLI.h:71
fk_MaterialMode MaterialMode
マテリアルモードプロパティ
Definition: Topology_CLI.h:101
int MaterialID
マテリアルIDプロパティ
Definition: Topology_CLI.h:112
fk_TopologyType Type
位相タイププロパティ
Definition: Topology_CLI.h:55
int ID
IDプロパティ
Definition: Topology_CLI.h:40
形状や位相要素の属性を付与、取得するクラス
Definition: Attribute_CLI.h:17
fk_TopologyType
位相タイプを表す列挙型
Definition: Topology_CLI.h:12
ソリッドモデル位相要素用基底クラス
Definition: Topology_CLI.h:29
未定義な位相要素
fk_MaterialMode
マテリアルモードを表す列挙型
Definition: Palette_CLI.h:11
インデックスフェースセット
Definition: AppWindow_CLI.h:11