Branch data Line data Source code
1 : : #include "CubitCompat.h"
2 : : #include "CubitCompat.hpp"
3 : : #include "GeometryQueryTool.hpp"
4 : : #include <string.h>
5 : :
6 : : #define CUBIT_COMPAT_FT_ELIF(TYPE) \
7 : : else if (!strcmp(file_type,#TYPE)) \
8 : : return TYPE ## _TYPE
9 : :
10 : : static Model_File_Type
11 : 1234 : CubitCompat_file_type( const char* file_type )
12 : : {
13 [ - + ]: 1234 : if (!file_type)
14 : 0 : return MFT_NOT_DEFINED;
15 [ + + ]: 1234 : CUBIT_COMPAT_FT_ELIF(IGES);
16 [ - + ]: 1190 : CUBIT_COMPAT_FT_ELIF(CATIA);
17 [ + + ]: 1190 : CUBIT_COMPAT_FT_ELIF(STEP);
18 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(PROE);
19 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(GRANITE);
20 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(GRANITE_G);
21 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(GRANITE_SAT);
22 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(GRANITE_PROE_PART);
23 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(GRANITE_PROE_ASM);
24 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(GRANITE_NEUTRAL);
25 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(NCGM);
26 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(CATIA_NCGM);
27 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(CATPART);
28 [ - + ]: 449 : CUBIT_COMPAT_FT_ELIF(CATPRODUCT);
29 [ + + ]: 449 : CUBIT_COMPAT_FT_ELIF(FACET);
30 [ - + ]: 427 : CUBIT_COMPAT_FT_ELIF(SOLIDWORKS);
31 [ + - ]: 427 : CUBIT_COMPAT_FT_ELIF(OCC);
32 : : else
33 : 0 : return MFT_NOT_DEFINED;
34 : : }
35 : :
36 : : CubitStatus
37 : 938 : CubitCompat_import_solid_model( const char* file_name,
38 : : const char* file_type,
39 : : const char* logfile_name,
40 : : CubitBoolean heal_step,
41 : : CubitBoolean import_bodies,
42 : : CubitBoolean import_surfaces,
43 : : CubitBoolean import_curves,
44 : : CubitBoolean import_vertices,
45 : : CubitBoolean free_surfaces,
46 : : DLIList<RefEntity*> *imported_entities)
47 : : {
48 : 938 : const bool print_results = false;
49 : 938 : const bool merge_globally = false;
50 : 938 : const bool no_assembly_level_features = false;
51 : : ModelImportOptions CubitCompat_opts = { heal_step,
52 : : print_results,
53 : : import_bodies,
54 : : import_surfaces,
55 : : import_curves,
56 : : import_vertices,
57 : : free_surfaces,
58 : : merge_globally,
59 : : no_assembly_level_features,
60 [ - + ][ + - ]: 938 : logfile_name ? logfile_name : "" };
61 : :
62 : : return GeometryQueryTool::instance()->import_solid_model(
63 : : file_name,
64 : : CubitCompat_file_type(file_type),
65 : : CubitCompat_opts,
66 [ + - ][ + - ]: 938 : imported_entities );
[ + - ]
67 : : }
68 : :
69 : : CubitStatus
70 : 296 : CubitCompat_export_solid_model( DLIList<RefEntity*>& ref_entity_list,
71 : : const char* filename,
72 : : const char * filetype,
73 : : int &num_ents_exported,
74 : : const CubitString &cubit_version,
75 : : const char* logfile_name )
76 : : {
77 : : // const bool print_results = false;
78 : : // const bool merge_globally = false;
79 : : // const bool no_assembly_level_features = false;
80 [ - + ][ + - ]: 296 : ModelExportOptions CubitCompat_opts = {1, logfile_name ? logfile_name : "" };
81 : :
82 : : return GeometryQueryTool::instance()->export_solid_model(
83 : : ref_entity_list,
84 : : filename,
85 : : CubitCompat_file_type(filetype),
86 : : num_ents_exported,
87 : : cubit_version,
88 [ + - ][ + - ]: 296 : CubitCompat_opts );
[ + - ]
89 : : }
|