cgma
GeometryQueryEngine.cpp
Go to the documentation of this file.
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 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines