cgma
|
00001 //--------------------------------------------------------------------------- 00009 //--------------------------------------------------------------------------- 00010 #ifndef VIRTUALIMPRINTOOL_HPP 00011 #define VIRTUALIMPRINTOOL_HPP 00012 00013 #include "CubitDefines.h" 00014 #include "DLIList.hpp" 00015 class RefFace; 00016 class RefEdge; 00017 class RefVertex; 00018 class RefVolume; 00019 class CubitVector; 00020 00021 00022 template <class X> class DLIList; 00023 00024 class VirtualImprintTool 00025 { 00026 protected: 00027 VirtualImprintTool(); 00032 00033 ~VirtualImprintTool(); 00038 public: 00039 00040 00041 static CubitStatus virtual_imprint(RefFace *ref_face1, 00042 RefFace *ref_face2, 00043 DLIList <RefFace*> &results, 00044 double feature_size, 00045 CubitBoolean &curves_modified); 00049 00050 static CubitStatus virtual_imprint(DLIList <RefFace*> &input_faces, 00051 DLIList <RefFace*> &surf_results, 00052 double feature_size, 00053 CubitBoolean &curves_modified); 00057 00058 00059 static CubitStatus virtual_imprint(RefVolume *ref_volume1, 00060 RefVolume *ref_volume2, 00061 DLIList <RefVolume*> &vol_results, 00062 double feature_size, 00063 CubitBoolean &others_modified); 00067 00068 static CubitStatus virtual_imprint(DLIList <RefVolume*> &imprint_volumes, 00069 DLIList <RefVolume*> &vol_results, 00070 double feature_size, 00071 CubitBoolean &others_modified); 00075 00076 00077 private: 00078 static CubitBoolean useRealIntersection; 00082 00083 }; 00084 #endif 00085