cgma
|
00001 #include "GeometryQueryEngine.hpp" 00002 #include "CubitString.hpp" 00003 #include "Surface.hpp" 00004 #include "Curve.hpp" 00005 #include "BodySM.hpp" 00006 00007 00008 00009 CubitStatus GeometryQueryEngine::set_export_version(const int, 00010 const int) 00011 { 00012 return CUBIT_FAILURE; 00013 } 00014 00015 CubitStatus GeometryQueryEngine::set_export_allint_version(const int) 00016 { 00017 return CUBIT_FAILURE; 00018 } 00019 00020 int GeometryQueryEngine::get_allint_version() 00021 { 00022 return 100*get_major_version() + get_minor_version(); 00023 } 00024 00025 CubitStatus GeometryQueryEngine::list_engine_versions(CubitString &versions) 00026 { 00027 versions = "(none specified)"; 00028 return CUBIT_SUCCESS; 00029 } 00030 00031 //Added functions for removing the geom classes dependecy on the virtual classes 00032 00033 00034 CubitStatus GeometryQueryEngine::get_underlying_curves(Curve * curve_ptr, 00035 DLIList<TopologyBridge*>& curve_list) 00036 { return CUBIT_SUCCESS; } 00037 00038 CubitStatus GeometryQueryEngine::get_underlying_surfaces(Surface * surf_ptr, 00039 DLIList<TopologyBridge*>& surf_list) 00040 { return CUBIT_SUCCESS; } 00041 00042 CubitStatus GeometryQueryEngine::get_underlying_bridges(TopologyBridge* bridge_ptr, 00043 DLIList<TopologyBridge*>& bridge_list) 00044 { return CUBIT_SUCCESS; } 00045 00046 00047 CubitStatus GeometryQueryEngine::get_graphics( BodySM *bodysm, GMem* g_mem, 00048 std::vector<Surface*> &surface_to_facets_vector, 00049 std::vector<TopologyBridge*> &vertex_edge_to_point_vector, 00050 std::vector<std::pair<TopologyBridge*, std::pair<int,int> > > &facet_edges_on_curves, 00051 unsigned short normal_tolerance, 00052 double distance_tolerance, double max_edge_length ) const 00053 { 00054 return CUBIT_FAILURE; 00055 } 00056 00057 CubitStatus GeometryQueryEngine::get_graphics( Surface* surface_ptr, 00058 GMem *gmem, 00059 std::vector<TopologyBridge*> &vertex_edge_to_point_vector, 00060 std::vector<std::pair<TopologyBridge*, std::pair<int,int> > > &facet_edges_on_curves, 00061 unsigned short normal_tolerance, 00062 double distance_tolerance, 00063 double max_edge_length ) const 00064 { 00065 return CUBIT_FAILURE; 00066 } 00067 00068 CubitStatus GeometryQueryEngine::get_visible_entities( TopologyBridge *hidden_tb, 00069 DLIList<TopologyBridge*> &real_tbs ) 00070 { 00071 return CUBIT_FAILURE; 00072 } 00073 00074 CubitStatus GeometryQueryEngine::delete_solid_model_entities(GeometryEntity* ref_entity_ptr) const 00075 { 00076 return CUBIT_FAILURE; 00077 } 00078 00079 CubitStatus GeometryQueryEngine::delete_topology_bridge(TopologyBridge* bridge) const 00080 { 00081 00082 // first, try the geometry entity 00083 00084 GeometryEntity* ent = dynamic_cast<GeometryEntity*> (bridge); 00085 if (ent) 00086 { 00087 return delete_solid_model_entities(ent); 00088 } 00089 00090 // now, try to cast to a BodySM and call that routine 00091 BodySM* body = dynamic_cast<BodySM*> (bridge); 00092 if (body) 00093 { 00094 delete_solid_model_entities(body); 00095 return CUBIT_SUCCESS; 00096 } 00097 00098 PRINT_ERROR("GeometryQueryEngine::delete_solid_model_entities(TopologyBridge* bridge): no deletion...\n"); 00099 return CUBIT_FAILURE; 00100 } 00101 00102 00103 CubitStatus GeometryQueryEngine::get_point_containment( DLIList<BodySM*> &body_list, 00104 DLIList<CubitVector> &point_list, 00105 double tolerance, 00106 bool allow_pts_in_multiple_bodies, 00107 std::vector< std::pair<BodySM*, std::vector<int> > > &bodysm_to_pt_indices ) 00108 { 00109 return CUBIT_FAILURE; 00110 }