FineKernelToolKit  3.1.0
Solid_CLI.h
[詳解]
1 // Solid_CLI.h
2 
3 #pragma once
4 
5 #include <FK/Solid.h>
6 #include "SolidBase_CLI.h"
7 
8 namespace FK_CLI
9 {
10  using namespace System::Collections::Generic;
11 
13 
64  public ref class fk_Solid : fk_SolidBase {
65  internal:
66  ::fk_Solid * GetP(void);
67 
68  public:
69 #ifndef FK_DOXYGEN_USER_PROCESS
70  fk_Solid(bool argNewFlg);
71 #endif
72 
74  fk_Solid();
75 
77  ~fk_Solid();
78 
80  !fk_Solid();
81 
83 
91  void AllClear(bool matFlg);
92 
94 
99  void AllClear(void);
100 
102 
107  bool IsEmpty(void);
108 
110 
116  void CloneShape(fk_Solid^ solid);
117 
119 
128  bool CompareShape(fk_Solid^ solid);
129 
131 
132 
140  bool ReadSMFFile(String^ fileName);
141 
143 
150  bool ReadSRFFile(String^ fileName);
151 
153 
183  bool ReadVRMLFile(String^ fileName, bool materialFlg, bool solidFlg);
184 
186 
213  bool ReadVRMLFile(String^ fileName, bool materialFlg);
214 
216 
239  bool ReadVRMLFile(String^ fileName);
240 
242 
261  bool ReadSTLFile(String^ fileName, bool solidFlg, double tolerance);
262 
264 
281  bool ReadSTLFile(String^ fileName, bool solidFlg);
282 
284 
295  bool ReadSTLFile(String^ fileName);
296 
298 
305  bool ReadHRCFile(String^ fileName);
306 
308 
321  bool ReadRDSFile(String^ fileName, bool solidFlg);
322 
324 
333  bool ReadRDSFile(String^ fileName);
334 
336 
349  bool ReadDXFFile(String^ fileName, bool solidFlg);
350 
352 
361  bool ReadDXFFile(String^ fileName);
362 
364 
401  bool ReadMQOFile(String^ fileName, String^ objName,
402  bool solidFlg, bool contFlg, bool materialFlg);
403 
405 
441  bool ReadMQOFile(String^ fileName, String^ objName, bool solidFlg, bool contFlg);
442 
444 
470  bool ReadMQOFile(String^ fileName, String^ objName, bool solidFlg);
471 
473 
493  bool ReadMQOFile(String^ fileName, String^ objName);
494 
496 
539  bool ReadMQOFile(String^ fileName, String^ objName, int materialID,
540  bool solidFlg, bool contFlg, bool materialFlg);
541 
543 
585  bool ReadMQOFile(String^ fileName, String^ objName, int materialID,
586  bool solidFlg, bool contFlg);
587 
589 
621  bool ReadMQOFile(String^ fileName, String^ objName, int materialID, bool solidFlg);
622 
624 
650  bool ReadMQOFile(String^ fileName, String^ objName, int materialID);
651 
653 
681  bool ReadD3DXFile(String^ fileName, String^ objName, bool solidFlg);
682 
684 
709  bool ReadD3DXFile(String^ fileName, String^ objName);
710 
712 
746  bool ReadD3DXFile(String^ fileName, String^ objName, int materialID, bool solidFlg);
747 
749 
780  bool ReadD3DXFile(String^ fileName, String^ objName, int materialID);
781 
783 
797  bool WriteVRMLFile(String^ fileName, fk_Material^ material, bool triFlg);
798 
800 
811  bool WriteVRMLFile(String^ fileName, fk_Material^ material);
812 
814 
824  bool WriteVRMLFile(String^ fileName);
825 
827 
850  bool WriteVRMLFile(String^ fileName, IEnumerable<double>^ time,
851  IEnumerable<fk_Vector^>^ pos,
852  fk_Material^ material, bool triFlg);
853 
855 
875  bool WriteVRMLFile(String^ fileName, IEnumerable<double>^ time,
876  IEnumerable<fk_Vector^>^ pos,
877  fk_Material^ material);
878 
880 
900  bool WriteVRMLFile(String^ fileName, IEnumerable<double>^ time, IEnumerable<fk_Vector^>^ pos);
901 
903 
910  bool WriteSTLFile(String^ fileName);
911 
913 
924  bool WriteDXFFile(String^ fileName, bool triFlg);
925 
927 
936  bool WriteDXFFile(String^ fileName);
937 
939 
946  bool WriteMQOFile(String^ fileName);
947  };
948 }
949 
950 /****************************************************************************
951  *
952  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
953  *
954  * Redistribution and use in source and binary forms,
955  * with or without modification, are permitted provided that the
956  * following conditions are met:
957  *
958  * - Redistributions of source code must retain the above
959  * copyright notice, this list of conditions and the
960  * following disclaimer.
961  *
962  * - Redistributions in binary form must reproduce the above
963  * copyright notice, this list of conditions and the
964  * following disclaimer in the documentation and/or
965  * other materials provided with the distribution.
966  *
967  * - Neither the name of the copyright holders nor the names
968  * of its contributors may be used to endorse or promote
969  * products derived from this software without specific
970  * prior written permission.
971  *
972  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
973  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
974  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
975  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
976  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
977  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
978  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
979  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
980  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
981  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
982  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
983  * POSSIBILITY OF SUCH DAMAGE.
984  *
985  ****************************************************************************/
986 /****************************************************************************
987  *
988  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
989  *
990  * 本ソフトウェアおよびソースコードのライセンスは、基本的に
991  * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
992  *
993  * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
994  * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
995  *
996  * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
997  * および下記免責条項を含めること。
998  *
999  * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
1000  * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
1001  * 含めること。
1002  *
1003  * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
1004  * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
1005  * コントリビューターの名前を使用してはならない。
1006  *
1007  * 本ソフトウェアは、著作権者およびコントリビューターによって「現
1008  * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
1009  * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
1010  * に限定されない、いかなる保証もないものとします。著作権者もコン
1011  * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
1012  * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
1013  * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
1014  * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
1015  * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
1016  * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
1017  * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
1018  * ついて、一切責任を負わないものとします。
1019  *
1020  ****************************************************************************/
ソリッドモデル形状変換クラス
Definition: SolidBase_CLI.h:31
半稜線構造 (Half-Edge Structure) による任意形状を生成、管理するクラス
Definition: Solid_CLI.h:64
マテリアル(質感)を管理するクラス
Definition: Material_CLI.h:448
Definition: AppWindow_CLI.h:11