cgma
ChollaPoint.cpp
Go to the documentation of this file.
00001 //- Class:       ChollaPoint
00002 //- Description: Temporary class for constructing the facet-based geometry
00003 //-
00004 //- Owner:       Steven J. Owen
00005 //- Checked by:
00006 //- Version:
00007 
00008 #include "ChollaPoint.hpp"
00009 #include "ChollaCurve.hpp"
00010 #include "ChollaSurface.hpp"
00011 
00012 //===============================================================================
00013 //Function:  ChollaPoint (PUBLIC) (constructor)
00014 //===============================================================================
00015 ChollaPoint::ChollaPoint( )
00016 {
00017   static int count = 1; 
00018   id = count++; 
00019   myCubitPoint = NULL; 
00020   myPoint = NULL; 
00021   myMergePartner = NULL;
00022 }
00023 //===============================================================================
00024 //Function:  ~ChollaPoint (PUBLIC) (destructor)
00025 //===============================================================================
00026 ChollaPoint::~ChollaPoint()
00027 {
00028 }
00029 
00030 //===============================================================================
00031 //Function:  get_surfaces (PUBLIC) 
00032 //===============================================================================
00033 void ChollaPoint::get_surfaces(DLIList<ChollaSurface *> &surf_list)
00034 {
00035   int ii, jj;
00036   ChollaCurve *curv_ptr;
00037   DLIList<ChollaSurface*> *surf_list_ptr;
00038   ChollaSurface *surf_ptr;
00039 
00040   curveList.reset();
00041   for(ii=0; ii<curveList.size(); ii++)
00042   {
00043     curv_ptr = curveList.get_and_step();
00044     surf_list_ptr = curv_ptr->get_surface_list_ptr();
00045     for(jj=0; jj<surf_list_ptr->size(); jj++)
00046     {
00047       surf_ptr = surf_list_ptr->get_and_step();
00048       surf_list.append_unique( surf_ptr );
00049     }
00050   }
00051 }
00052 
00053 //===============================================================================
00054 //Function:  is_in_surface (PUBLIC) 
00055 //===============================================================================
00056 CubitBoolean ChollaPoint::is_in_surface( ChollaSurface *cholla_surf )
00057 {
00058   int ii;
00059   ChollaCurve *curv_ptr;
00060   DLIList<ChollaSurface*> *surf_list_ptr;
00061 
00062   curveList.reset();
00063   for(ii=0; ii<curveList.size(); ii++) 
00064   {
00065     curv_ptr = curveList.get_and_step();
00066     surf_list_ptr = curv_ptr->get_surface_list_ptr(); 
00067 
00068     if( surf_list_ptr->is_in_list( cholla_surf ) )
00069       return CUBIT_TRUE;
00070   }
00071 
00072   return CUBIT_FALSE;
00073 }
00074 
00075 //===============================================================================
00076 //Function:  is_in_volume (PUBLIC) 
00077 //===============================================================================
00078 CubitBoolean ChollaPoint::is_in_volume( ChollaVolume *cholla_vol )
00079 {
00080   int ii;
00081   ChollaCurve *curv_ptr;  
00082 
00083   curveList.reset();
00084   for(ii=0; ii<curveList.size(); ii++) 
00085   {
00086     curv_ptr = curveList.get_and_step();
00087 
00088     if( curv_ptr->is_in_volume( cholla_vol ) )
00089       return CUBIT_TRUE;
00090   }
00091 
00092   return CUBIT_FALSE;
00093 }
00094 
00095 //===============================================================================
00096 //Function:  is_in_curve (PUBLIC) 
00097 //===============================================================================
00098 CubitBoolean ChollaPoint::is_in_curve( ChollaCurve *chcurve )
00099 {
00100   for (int ii=0; ii<curveList.size(); ii++)
00101   {
00102     ChollaCurve *curv = curveList.get_and_step();
00103     if (curv == chcurve)
00104       return CUBIT_TRUE;
00105   }
00106   return CUBIT_FALSE;
00107 }
00108 
00109 //=============================================================================
00110 //Function:  verify_curves (PUBLIC)
00111 //Description:  verify that all curves at this point have this point as an adjacency
00112 //Notes: 
00113 //=============================================================================
00114 CubitStatus ChollaPoint::verify_curves()
00115 {
00116   for(int ii=0; ii<curveList.size(); ii++)
00117   {
00118     ChollaCurve *crv = curveList.get_and_step();
00119     if (!crv->has_point(this))
00120       return CUBIT_FAILURE;
00121   }
00122   return CUBIT_SUCCESS;
00123 }
00124 
00125 //EOF
00126 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines