[cgma-dev] r1419 - cgm/trunk/geom/OCC

janehu at mcs.anl.gov janehu at mcs.anl.gov
Wed Nov 21 12:42:17 CST 2007


Author: janehu
Date: 2007-11-21 12:42:17 -0600 (Wed, 21 Nov 2007)
New Revision: 1419

Modified:
   cgm/trunk/geom/OCC/OCCBody.cpp
   cgm/trunk/geom/OCC/OCCBody.hpp
   cgm/trunk/geom/OCC/OCCCoEdge.cpp
   cgm/trunk/geom/OCC/OCCCoEdge.hpp
   cgm/trunk/geom/OCC/OCCCurve.hpp
   cgm/trunk/geom/OCC/OCCLoop.cpp
   cgm/trunk/geom/OCC/OCCLoop.hpp
   cgm/trunk/geom/OCC/OCCLump.cpp
   cgm/trunk/geom/OCC/OCCPoint.hpp
   cgm/trunk/geom/OCC/OCCQueryEngine.cpp
   cgm/trunk/geom/OCC/OCCShell.hpp
   cgm/trunk/geom/OCC/OCCSurface.hpp
Log:
Added/Modified several functions and prototypes

Modified: cgm/trunk/geom/OCC/OCCBody.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCBody.cpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCBody.cpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -55,7 +55,7 @@
 // Special Notes :
 //
 //-------------------------------------------------------------------------
-OCCBody::OCCBody(TopoDS_Shape *theShape)
+OCCBody::OCCBody(TopoDS_CompSolid *theShape)
 {
   myTopoDSShape = theShape;
   update_bounding_box();

Modified: cgm/trunk/geom/OCC/OCCBody.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCBody.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCBody.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -32,12 +32,10 @@
 class TopologyEntity;
 class CubitString;
 class OCCAttrib;
-
 class OCCLump;
 class OCCShell;
 class OCCSurface;
 class OCCLoop;
-class OCCCoEdge;
 class OCCCurve;
 class OCCPoint;
 
@@ -47,7 +45,7 @@
 {
 public:
   
-  OCCBody(TopoDS_Shape *theShape);
+  OCCBody(TopoDS_CompSolid *theShape);
   OCCBody(DLIList<Lump*>& my_lumps);
 
   virtual ~OCCBody() ;
@@ -60,7 +58,7 @@
     //- This function returns a pointer to the geometric modeling engine
     //- associated with the object.
   
-  TopoDS_Shape *get_TopoDS_Shape() {return myTopoDSShape; }
+  TopoDS_CompSolid *get_TopoDS_Shape() {return myTopoDSShape; }
 
   virtual void append_simple_attribute_virt(CubitSimpleAttrib*);
     //R void
@@ -150,14 +148,6 @@
     //- Restore the ACIS BODY by replacing the transformation matrix 
     //- associated with it with a unit matrix
   
-#ifdef BOYD14
-  CubitStatus reverse() ;
-    //R CubitStatus
-    //R- CUBIT_SUCCESS/CUBIT_FAILURE
-    //I BODYPtr
-    //- Reverse the face orientations on this body
-#endif
-
   CubitStatus get_transforms( CubitTransformMatrix &tfm );
     //R CubitStatus
     //R- CUBIT_SUCCESS/CUBIT_FAILURE
@@ -202,7 +192,7 @@
     //List of the attached lumps for the traversal functions.
   OCCAttribSet attribSet;
     //List of OCCAttrib*'s instead of CubitSimpleAttribs 
-  TopoDS_Shape *myTopoDSShape;
+  TopoDS_CompSolid *myTopoDSShape;
 
   CubitBox boundingbox;
 };

Modified: cgm/trunk/geom/OCC/OCCCoEdge.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCCoEdge.cpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCCoEdge.cpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -38,47 +38,15 @@
 
 // ********** BEGIN PUBLIC FUNCTIONS       **********
 
-//-------------------------------------------------------------------------
-// Purpose       : A constructor with a pointer to a Facet CoEdge.
-//
-// Special Notes :
-//
-// Creator       : Steve Owen
-//
-// Creation Date : 07/18/00
-//-------------------------------------------------------------------------
-OCCCoEdge::OCCCoEdge( TopoDS_Edge *theEdge, Curve *curv_ptr )
-{
-  myTopoDSEdge = theEdge;
-  myCurve = curv_ptr;
-}
 
-OCCCoEdge::OCCCoEdge( Curve *curv_ptr, LoopSM *loop_ptr, CubitSense sense )
+OCCCoEdge::OCCCoEdge( TopoDS_Edge* edge, Curve *curv_ptr, 
+	  	      LoopSM *loop_ptr, CubitSense sense )
+	 	    : myTopoDSEdge(edge), myCurve(curv_ptr), 
+ 	  	      myLoop(loop_ptr),edgeSense(sense)
 {
-  assert(0);
-  myCurve = curv_ptr;
-  myLoop = loop_ptr;
-  edgeSense = sense; 
 }
 
 //-------------------------------------------------------------------------
-// Purpose       : A constructor with a pointer to a Facet CoEdge.
-//
-// Special Notes : Constructor used for save/restore
-//
-// Creator       : Corey Ernst 
-//
-// Creation Date : 02/03/03
-//-------------------------------------------------------------------------
-OCCCoEdge::OCCCoEdge( Curve *curv_ptr, CubitSense sense )
-{
-  assert(0);
-  myCurve = curv_ptr;
-  myLoop = NULL; 
-  edgeSense = sense; 
-}
-
-//-------------------------------------------------------------------------
 // Purpose       : The destructor
 //
 // Special Notes :
@@ -89,6 +57,9 @@
 //-------------------------------------------------------------------------
 OCCCoEdge::~OCCCoEdge()
 {
+  myTopoDSEdge = (TopoDS_Edge*) NULL;
+  myCurve = (Curve *) NULL;
+  myLoop = (LoopSM *)NULL;
 }
 
 //-------------------------------------------------------------------------
@@ -181,99 +152,12 @@
   { return CUBIT_FAILURE; }
 
 
-CubitSense OCCCoEdge::sense()
-{
-  TopAbs_Orientation d = myTopoDSEdge->Orientation();
-  if (d == TopAbs_FORWARD) return CUBIT_FORWARD;
-  else if (d == TopAbs_REVERSED) return CUBIT_REVERSED;
-  else {
-	  printf("Check Orientation");
-	  return CUBIT_UNKNOWN;
-  }
-}
-/*
-void OCCCoEdge::bodysms(DLIList<BodySM*> &bodies)
-{
-  myLoop->bodysms(bodies);
-}
-
-void OCCCoEdge::lumps(DLIList<Lump*> &lumps)
-{
-  myLoop->lumps(lumps);
-}
-
-void OCCCoEdge::shellsms(DLIList<ShellSM*> &shellsms)
-{
-  myLoop->shellsms(shellsms);
-}
-
-void OCCCoEdge::surfaces(DLIList<Surface*> &surfaces)
-{
-  myLoop->surfaces( surfaces );
-}
-
-void OCCCoEdge::loopsms(DLIList<LoopSM*> &loopsms)
-{
-  loopsms.append_unique( myLoop );
-}
-
-void OCCCoEdge::coedgesms(DLIList<CoEdgeSM*> &coedgesms)
-{
-  coedgesms.append_unique( this );
-}
-
-void OCCCoEdge::curves(DLIList<Curve*> &curves)
-{
-  curves.append_unique( myCurve );
-}
-
-void OCCCoEdge::points(DLIList<Point*> &points)
-{
-  myCurve->points( points );
-}
-*/
-
-void OCCCoEdge::get_parents_virt( DLIList<TopologyBridge*>& parents )
-  { parents.append( myLoop ); }
-
-void OCCCoEdge::get_children_virt( DLIList<TopologyBridge*>& children )
-  { children.append( myCurve ); }
-
 void OCCCoEdge::reverse_sense()
 {
   edgeSense = CubitUtil::opposite_sense( edgeSense );
 }
 
 
-void OCCCoEdge::get_lumps( DLIList<OCCLump*>& result_list )
-{
-  DLIList<OCCShell*> shell_list;
-  get_shells( shell_list );
-  shell_list.reset();
-  for ( int i = shell_list.size(); i--; )
-  {
-    OCCShell* shell = shell_list.get_and_step();
-    shell->get_lumps( result_list );
-    OCCLump* lump = dynamic_cast<OCCLump*>(shell->get_lump());
-    if (lump)
-      result_list.append_unique(lump);
-  }
-}
-
-void OCCCoEdge::get_shells( DLIList<OCCShell*>& result_list )
-{
-  if ( OCCLoop* loop = dynamic_cast<OCCLoop*>(myLoop) )
-    if ( OCCSurface* surf = dynamic_cast<OCCSurface*>(loop->get_surface()) )
-      surf->get_shells( result_list );
-}
-
-void OCCCoEdge::get_curves( DLIList<OCCCurve*>& result_list )
-{
-  if (OCCCurve* curve = dynamic_cast<OCCCurve*>(myCurve))
-    result_list.append(curve);
-}
-
-
 // ********** END PUBLIC FUNCTIONS         **********
 
 // ********** BEGIN PROTECTED FUNCTIONS    **********

Modified: cgm/trunk/geom/OCC/OCCCoEdge.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCCoEdge.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCCoEdge.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -12,8 +12,8 @@
 // Owner         : Steven J. Owen
 //-------------------------------------------------------------------------
 
-#ifndef FACETCOEDGE_HPP
-#define FACETCOEDGE_HPP
+#ifndef OCCCOEDGE_HPP
+#define OCCCOEDGE_HPP
 
 // ********** BEGIN STANDARD INCLUDES      **********
 // ********** END STANDARD INCLUDES        **********
@@ -43,12 +43,9 @@
 {
 public:
   
-  OCCCoEdge(TopoDS_Edge *theEdge, Curve *curv_ptr);
-  OCCCoEdge(Curve *curv_ptr, LoopSM *loop_ptr, CubitSense sense);
+  OCCCoEdge(TopoDS_Edge *theEdge,
+	    Curve *curv_ptr, LoopSM *loop_ptr, CubitSense sense);
     //- A constructor
-  //
-  OCCCoEdge(Curve *curv_ptr, CubitSense sense);
-    //- A constructor (for save/restore)
   
   virtual ~OCCCoEdge() ;
     //- The destructor
@@ -101,47 +98,24 @@
     //- such operations on its entities. If it cannot, then "names"
     //- of VGI entities will not propagate.
   
-  CubitSense sense();
+  inline CubitSense sense(){return edgeSense;}
     //- returns the sense of the underlying coedge wrt the underlying edge
 
-#ifdef BOYD14
-  void get_bodies  ( DLIList<OCCBody   *>& bodies   );
-#endif
-  void get_lumps   ( DLIList<OCCLump   *>& lumps    );
-  void get_shells  ( DLIList<OCCShell  *>& shells   );
-#ifdef BOYD14
-  void get_surfaces( DLIList<OCCSurface*>& surfaces );
-  void get_loops   ( DLIList<OCCLoop   *>& loops    );
-  void get_coedges ( DLIList<OCCCoEdge *>& coedges  );
-  void get_points  ( DLIList<OCCPoint  *>& points   );
-#endif
-  void get_curves  ( DLIList<OCCCurve  *>& curves   );
-
-  void get_parents_virt( DLIList<TopologyBridge*>& parents );
-  void get_children_virt( DLIList<TopologyBridge*>& children );
-
-  void add_loop( LoopSM *loop_ptr )
+  inline void add_loop( LoopSM *loop_ptr )
     { myLoop = loop_ptr; }
     //- set the loop pointer that this coedge is asociated
 
-#ifdef BOYD14
-  void set_sense( CubitSense sense );
-    //- set the sense of the coedge wrt the surface loop
-#endif
-  CubitSense get_sense()
-    {return edgeSense;}
-    //- get the sense of the coedge wrt the surface loop
   void reverse_sense();
 
-  Curve *curve()
+  inline Curve *curve()
     {return myCurve;}
     //- get the curve associated with this coedge
     
   inline LoopSM* get_loop() const { return myLoop; }
-  
-  inline void remove_loop() { myLoop = 0; }
-  inline void remove_curve() { myCurve = 0; }
 
+  inline TopoDS_Edge * get_TopoDS_Edge(){return myTopoDSEdge;}
+  void remove_loop() {myLoop = (LoopSM*) NULL;}
+  
 protected: 
   
 private:

Modified: cgm/trunk/geom/OCC/OCCCurve.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCCurve.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCCurve.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -27,14 +27,8 @@
 
 // ********** BEGIN FORWARD DECLARATIONS   **********
 class TopologyEntity;
-class CurveFacetEvalTool;
-class FacetEvalTool;
 class OCCAttrib;
-class CurveFacetEvalTool;
 class Point;
-class CubitPoint;
-class CubitFacetEdge;
-class CubitFacetEdge;
 
 class OCCBody;
 class OCCLump;
@@ -294,9 +288,6 @@
                                          CubitVector* plus_tangent = NULL );
   
   virtual CubitPointContainment point_containment( const CubitVector &point );
-  virtual CubitPointContainment point_containment( double u, double v );
-  virtual CubitPointContainment point_containment( CubitVector &point, 
-                                                   double u, double v );
     //R CubitPointContainment - is the point outside, inside or on the boundary?
     //R- CUBIT_PNT_OUTSIDE, CUBIT_PNT_INSIDE, CUBIT_PNT_BOUNDARY, 
     //   CUBIT_PNT_UNKNOWN
@@ -352,7 +343,6 @@
   friend void run_test_function();
 
   TopoDS_Edge *myTopoDSEdge;
-  int myId;
   bool periodic;
 };
 

Modified: cgm/trunk/geom/OCC/OCCLoop.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCLoop.cpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCLoop.cpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -28,6 +28,8 @@
 
 #include <TopExp.hxx>
 #include <TopTools_IndexedMapOfShape.hxx>
+#include "TopExp_Explorer.hxx"
+#include "TopoDS.hxx"
 // ********** END CUBIT INCLUDES           **********
 
 // ********** BEGIN STATIC DECLARATIONS    **********
@@ -45,25 +47,8 @@
 {
   myTopoDSWire = theWire;
 }
-OCCLoop::OCCLoop( Surface *surf_ptr,
-                      DLIList<CoEdgeSM*> &coedge_list )
-{
-  mySurface = surf_ptr;
-  myCoEdges += coedge_list;
-}
 
 //-------------------------------------------------------------------------
-// Purpose       : The constructor with coedges.
-//
-// Special Notes :
-//
-//-------------------------------------------------------------------------
-OCCLoop::OCCLoop( DLIList<CoEdgeSM*> &coedge_list )
-{
-  myCoEdges += coedge_list;
-}
-
-//-------------------------------------------------------------------------
 // Purpose       : The default destructor.
 //
 // Special Notes :
@@ -71,6 +56,19 @@
 //-------------------------------------------------------------------------
 OCCLoop::~OCCLoop()
 {
+  myCoEdgeList.reset();
+  for (int i = myCoEdgeList.size(); i--; )
+  {
+    OCCCoEdge* coedge = myCoEdgeList.get_and_step();
+    if (coedge)
+    {
+      assert(coedge->get_loop() == this);
+      delete coedge;
+    }
+  }
+
+  myTopoDSWire =  (TopoDS_Wire *) NULL;
+  myCoEdgeList.clean_out();
 }
 
 //-------------------------------------------------------------------------
@@ -145,7 +143,12 @@
 CubitBox OCCLoop::bounding_box() const
 {
    CubitBox box;
-   PRINT_ERROR("OCCLoop::bounding_box not implemented\n");
+   for (int i = myCoEdgeList.size(); i > 0; i--)
+   {
+      DLIList<OCCCoEdge*> coedges = myCoEdgeList;
+      OCCCoEdge* coedge = coedges.get_and_step();
+      box |= coedge->curve()->bounding_box();
+   }
    return box;
 }
 
@@ -160,143 +163,5 @@
    return OCCQueryEngine::instance();
 }                
 
-/*
-void OCCLoop::bodysms(DLIList<BodySM*> &bodies)
-{
-  mySurface->bodysms(bodies);
-}
 
-void OCCLoop::lumps(DLIList<Lump*> &lumps)
-{
-  mySurface->lumps(lumps);
-}
 
-void OCCLoop::shellsms(DLIList<ShellSM*> &shellsms)
-{
-  mySurface->shellsms(shellsms);
-}
-
-void OCCLoop::surfaces(DLIList<Surface*> &surfaces)
-{
-  surfaces.append_unique( mySurface );
-}
-
-void OCCLoop::loopsms(DLIList<LoopSM*> &loopsms)
-{
-  loopsms.append_unique( this );
-}
-void OCCLoop::coedgesms(DLIList<CoEdgeSM*> &coedgesms)
-{
-  int ii;
-  for ( ii = myCoEdges.size(); ii > 0; ii-- )
-  {
-    coedgesms.append_unique(myCoEdges.get_and_step());
-  }
-}
-
-void OCCLoop::curves(DLIList<Curve*> &curves)
-{
-  int ii;
-  for ( ii = myCoEdges.size(); ii > 0; ii-- )
-  {
-    myCoEdges.get_and_step()->curves(curves);
-  }
-}
-void OCCLoop::points(DLIList<Point*> &points)
-{
-  int ii;
-  for ( ii = myCoEdges.size(); ii > 0; ii-- )
-  {
-    myCoEdges.get_and_step()->points(points);
-  }
-}
-*/
-
-
-void OCCLoop::get_parents_virt( DLIList<TopologyBridge*>& parents )
-  { parents.append( mySurface ); }
-void OCCLoop::get_children_virt( DLIList<TopologyBridge*>& children )
-{
-  TopTools_IndexedMapOfShape M;
-  TopExp::MapShapes(*myTopoDSWire, TopAbs_EDGE, M);
-  int ii;
-  for (ii=1; ii<=M.Extent(); ii++) {
-	  TopologyBridge *curve = OCCQueryEngine::occ_to_cgm(M(ii));
-	  children.append_unique(curve);
-  }
-}
-
-
-void OCCLoop::get_lumps( DLIList<OCCLump*>& result_list )
-{
-  DLIList<OCCShell*> shell_list;
-  get_shells( shell_list );
-  shell_list.reset();
-  for ( int i = shell_list.size(); i--; )
-  {
-    OCCShell* shell = shell_list.get_and_step();
-    shell->get_lumps( result_list );
-    OCCLump* lump = dynamic_cast<OCCLump*>(shell->get_lump());
-    if (lump)
-      result_list.append_unique(lump);
-  }
-}
-
-void OCCLoop::get_shells( DLIList<OCCShell*>& result_list )
-{
-  if ( OCCSurface* surf = dynamic_cast<OCCSurface*>(mySurface) )
-    surf->get_shells( result_list );
-}
-
-void OCCLoop::get_coedges( DLIList<OCCCoEdge*>& result_list )
-{
-  TopTools_IndexedMapOfShape M;
-  TopExp::MapShapes(*myTopoDSWire, TopAbs_EDGE, M);
-  int ii;
-  for (ii=1; ii<=M.Extent(); ii++) {
-	  TopologyBridge *curve = OCCQueryEngine::occ_to_cgm(M(ii));
-	  result_list.append_unique(dynamic_cast<OCCCoEdge*>(curve));
-  }
-}
-
-void OCCLoop::get_curves( DLIList<OCCCurve*>& result_list )
-{
-  DLIList<OCCCoEdge*> coedge_list;
-  get_coedges( coedge_list );
-  coedge_list.reset();
-  for ( int i = coedge_list.size(); i--; )
-  {
-    OCCCoEdge* coedge = coedge_list.get_and_step();
-    OCCCurve* curve = dynamic_cast<OCCCurve*>(coedge->curve());
-    if (curve)
-      result_list.append_unique(curve);
-  }
-}
-
-
-//-------------------------------------------------------------------------
-// Purpose       : Tear down topology
-//
-// Special Notes : 
-//
-// Creator       : Jason Kraftcheck
-//
-// Creation Date : 09/29/03
-//-------------------------------------------------------------------------
-void OCCLoop::disconnect_all_coedges()
-{
-  myCoEdges.reset();
-  for (int i = myCoEdges.size(); i--; )
-  {
-    CoEdgeSM* sm_ptr = myCoEdges.get_and_step();
-    OCCCoEdge* coedge = dynamic_cast<OCCCoEdge*>(sm_ptr);
-    if (coedge)
-    {
-      assert(coedge->get_loop() == this);
-      coedge->remove_loop();
-    }
-  }
-  myCoEdges.clean_out();
-}
-
-

Modified: cgm/trunk/geom/OCC/OCCLoop.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCLoop.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCLoop.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -5,23 +5,23 @@
 //
 // Special Notes :
 //
-// Creator       : Steven J. Owen
+// Creator       : Jane Hu 
 //
-// Creation Date : 12/06/00
+// Creation Date : 11/16/07
 //
-// Owner         : Steven J. Owen
+// Owner         : 
 //-------------------------------------------------------------------------
 
-#ifndef LOOP_Facet_HPP
-#define LOOP_Facet_HPP
+#ifndef LOOP_OCC_HP
+#define LOOP_OCC_HPP
 
 #include "CubitDefines.h"
 #include "CubitEntity.hpp"
 #include "LoopSM.hpp"
 #include "DLIList.hpp"
+#include "OCCCoEdge.hpp"
+#include "TopoDS_Wire.hxx"
 
-#include <TopoDS_Wire.hxx>
-
 class GeometryEntity;
 
 class OCCBody;
@@ -36,27 +36,40 @@
 {
 public :
  
-  OCCLoop( TopoDS_Wire *theWire );	
-  OCCLoop( Surface *surf_ptr,
-             DLIList<CoEdgeSM*> &coedge_list );
-    //I- surf_ptr
-    //I- A pointer to the set of CoEdges that bound this loop
-  
-  OCCLoop( DLIList<CoEdgeSM*> &coedge_list );
-    //I- A pointer to the set of CoEdges that bound this loop
+  OCCLoop( TopoDS_Wire *theLoop );	
+  inline void add_coedge(OCCCoEdge * coedge) {myCoEdgeList.append(coedge);}
+  void add_coedges(DLIList<OCCCoEdge *> coedges)
+			{myCoEdgeList = coedges;} 
 
+  void remove_coedge(OCCCoEdge * coedge){myCoEdgeList.remove(coedge);}
+
+  DLIList<OCCCoEdge*> coedges() {return myCoEdgeList;}
+
+  inline TopoDS_Wire* get_TopoDS_Wire() {return myTopoDSWire;}
+
   virtual ~OCCLoop() ;
     //- The destructor
   
+  virtual CubitBox bounding_box() const ;
+    // see comments in GeometryEntity.hpp
+  
+  virtual GeometryQueryEngine* 
+  get_geometry_query_engine() const;
+    //R GeometryQueryEngine*
+    //R- A pointer to the geometric modeling engine associated with
+    //R- the object.
+    //- This function returns a pointer to the geometric modeling engine
+    //- associated with the object.
+
   virtual void append_simple_attribute_virt(CubitSimpleAttrib*);
     //R void
-    //I 
-    //I- 
+    //I
+    //I-
     //I- that is to be appended to this OSME object.
-    //- The purpose of this function is to append a 
-    //- attribute to the OSME. The  is attached to each of the 
+    //- The purpose of this function is to append a
+    //- attribute to the OSME. The  is attached to each of the
     //- underlying solid model entities this one points to.
-  
+
   virtual void remove_simple_attribute_virt(CubitSimpleAttrib*);
     //R void
     //I CubitSimpleAttrib*
@@ -65,13 +78,13 @@
     //- The purpose of this function is to remove a simple
     //- attribute from the OSME. The attribute is attached to each of the
     //- underlying solid model entities this one points to.
-  
+
   virtual void remove_all_simple_attribute_virt();
     //R void
     //I-
     //- The purpose of this function is to remove all simple
-    //- attributes from the OSME. 
-  
+    //- attributes from the OSME.
+
   virtual CubitStatus get_simple_attribute(DLIList<CubitSimpleAttrib*>&);
   virtual CubitStatus get_simple_attribute(const CubitString& name,
                                            DLIList<CubitSimpleAttrib*>&);
@@ -87,54 +100,12 @@
     //- solid modeler being able to propagate attributes across
     //- such operations on its entities. If it cannot, then "names"
     //- of VGI entities will not propagate.
-  
-  virtual CubitBox bounding_box() const ;
-    // see comments in GeometryEntity.hpp
-  
-  virtual GeometryQueryEngine* 
-  get_geometry_query_engine() const;
-    //R GeometryQueryEngine*
-    //R- A pointer to the geometric modeling engine associated with
-    //R- the object.
-    //- This function returns a pointer to the geometric modeling engine
-    //- associated with the object.
-  
-#ifdef BOYD14
-  void get_bodies  ( DLIList<OCCBody   *>& bodies   );
-#endif
-  void get_lumps   ( DLIList<OCCLump   *>& lumps    );
-  void get_shells  ( DLIList<OCCShell  *>& shells   );
-#ifdef BOYD14
-  void get_surfaces( DLIList<OCCSurface*>& surfaces );
-  void get_loops   ( DLIList<OCCLoop   *>& loops    );
-#endif
-  void get_coedges ( DLIList<OCCCoEdge *>& coedges  );
-  void get_curves  ( DLIList<OCCCurve  *>& curves   );
-#ifdef BOYD14
-  void get_points  ( DLIList<OCCPoint  *>& points   );
-#endif
-
-  void get_parents_virt( DLIList<TopologyBridge*>& parents );
-  void get_children_virt( DLIList<TopologyBridge*>& children );
-
-  void add_surface( Surface *new_surface_ptr )
-    { mySurface = new_surface_ptr; }
-
-  void reverse()
-    { myCoEdges.reverse(); }
-    
-  inline Surface* get_surface() const { return mySurface; }
-  
-  inline void remove_surface() { mySurface = 0; }
-  
-  void disconnect_all_coedges();
-
+ 
 protected: 
 
 private:
-  Surface *mySurface;
-  DLIList<CoEdgeSM*> myCoEdges;
   TopoDS_Wire *myTopoDSWire;
+  DLIList<OCCCoEdge *>myCoEdgeList;
 
 };
 

Modified: cgm/trunk/geom/OCC/OCCLump.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCLump.cpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCLump.cpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -256,193 +256,8 @@
   }
 }
 
-void OCCLump::get_bodies( DLIList<OCCBody*>& result_list )
-{
-  OCCBody* body = dynamic_cast<OCCBody*>(myBodyPtr);
-  if (body)
-    result_list.append(body);
-}
 
-void OCCLump::get_shells( DLIList<OCCShell*>& result_list )
-{
-  TopTools_IndexedMapOfShape M;
-  TopExp::MapShapes(*myTopoDSSolid, TopAbs_SHELL, M);
-  int ii;
-  for (ii=1; ii<=M.Extent(); ii++) {
-	  TopologyBridge *shell = OCCQueryEngine::occ_to_cgm(M(ii));
-	  result_list.append_unique(dynamic_cast<OCCShell*>(shell));
-  }
-}
 
-void OCCLump::get_surfaces( DLIList<OCCSurface*>& result_list )
-{
-  DLIList<OCCShell*> shell_list;
-  DLIList<OCCSurface*> tmp_list;
-  get_shells(shell_list);
-  shell_list.reset();
-  for ( int i = 0; i < shell_list.size(); i++ )
-  {
-    tmp_list.clean_out();
-    shell_list.next(i)->get_surfaces( tmp_list );
-    result_list.merge_unique( tmp_list );
-  }
-}
-
-
-void OCCLump::get_coedges( DLIList<OCCCoEdge*>& result_list )
-{
-  DLIList<OCCSurface*> surface_list;
-  get_surfaces( surface_list );
-  surface_list.reset();
-  for ( int i = 0; i < surface_list.size(); i++ )
-    surface_list.next(i)->get_coedges( result_list );
-}
-
-void OCCLump::get_curves( DLIList<OCCCurve*>& result_list )
-{
-  DLIList<OCCCoEdge*> coedge_list;
-  get_coedges( coedge_list );
-  coedge_list.reset();
-  for ( int i = coedge_list.size(); i--; )
-  {
-    OCCCoEdge* coedge = coedge_list.get_and_step();
-    OCCCurve* curve = dynamic_cast<OCCCurve*>(coedge->curve());
-    if (curve)
-      result_list.append_unique(curve);
-  }
-}
-
-
-void OCCLump::add_shell( OCCShell *shell )
-{
-    ShellSM* sm_ptr; 
-    sm_ptr = dynamic_cast<ShellSM*>(shell);
-    
-    if( sm_ptr )
-      myShells.append( sm_ptr );
-
-    shell->add_lump( this );
-}
-
-void OCCLump::remove_shell( OCCShell *shell )
-{
-    ShellSM* sm_ptr; 
-    sm_ptr = dynamic_cast<ShellSM*>(shell);
-    
-    if( sm_ptr )
-      myShells.remove( sm_ptr );
-
-    shell->remove_lump();
-}
-
-//-------------------------------------------------------------------------
-// Purpose       : Tear down topology
-//
-// Special Notes : 
-//
-// Creator       : Jason Kraftcheck
-//
-// Creation Date : 09/29/03
-//-------------------------------------------------------------------------
-void OCCLump::disconnect_all_shells()
-{
-  myShells.reset();
-  for (int i = myShells.size(); i--; )
-  {
-    ShellSM* sm_ptr = myShells.get_and_step();
-    OCCShell* shell = dynamic_cast<OCCShell*>(sm_ptr);
-    if (shell)
-    {
-      assert(shell->get_lump() == this);
-      shell->remove_lump();
-    }
-  }
-  myShells.clean_out();
-}
-
-//-------------------------------------------------------------------------
-// Purpose       : Calculate centroid
-//
-// Special Notes : 
-//
-// Creator       : Jason Kraftcheck
-//
-// Creation Date : 05/12/04
-//-------------------------------------------------------------------------
-#include "GfxDebug.hpp"
-CubitStatus OCCLump::mass_properties( CubitVector& centroid, double& volume )
-{
-  int i;
-  
-  DLIList<OCCShell*> shells( myShells.size() );
-  CAST_LIST( myShells, shells, OCCShell );
-  assert( myShells.size() == shells.size() );
-  
-  DLIList<OCCSurface*> surfaces;
-  DLIList<OCCShell*> surf_shells;
-  get_surfaces( surfaces );
-  
-  DLIList<CubitFacet*> facets, surf_facets;
-  DLIList<CubitPoint*> junk;
-  DLIList<CubitSense> senses;
-  for (i = surfaces.size(); i--; )
-  {
-    OCCSurface* surf = surfaces.step_and_get();
-    surf_shells.clean_out();
-    surf->get_shells( surf_shells );
-    surf_shells.intersect( shells );
-    assert( surf_shells.size() );
-    CubitSense sense = surf->get_shell_sense( surf_shells.get() );
-    if (surf_shells.size() == 1 && CUBIT_UNKNOWN != sense)
-    {
-      surf_facets.clean_out();
-      junk.clean_out();
-      //surf->get_my_facets( surf_facets, junk );
-      facets += surf_facets;
-      
-      for (int j = surf_facets.size(); j--; )
-        senses.append(sense);
-    }
-  }
-  
-  const CubitVector p0 = bounding_box().center();
-  CubitVector p1, p2, p3, normal;
-  centroid.set( 0.0, 0.0, 0.0 );
-  volume = 0.0;
-  
-  facets.reset();
-  senses.reset();
-  for (i = facets.size(); i--; )
-  {
-    CubitFacet* facet = facets.get_and_step();
-    CubitSense sense = senses.get_and_step();
-    p1 = facet->point(0)->coordinates();
-    p2 = facet->point(1)->coordinates();
-    p3 = facet->point(2)->coordinates();
-    normal = (p3 - p1) * (p2 - p1);
-
-    double two_area = normal.length();
-    if (two_area > CUBIT_RESABS )
-    {
-      if (CUBIT_REVERSED == sense)
-        normal = -normal;
-
-      normal /= two_area;
-
-      double height = normal % (p0 - p1);
-      double vol = two_area * height;
-
-      volume += vol;
-      centroid += vol * (p0 + p1 + p2 + p3);
-    }
-  }
-  
-  if (volume > CUBIT_RESABS)
-    centroid /= 4.0 * volume;
-  volume /= 6.0;
-  return CUBIT_SUCCESS;
-}
-
 CubitPointContainment OCCLump::point_containment( const CubitVector &point )
 {
   CubitPointContainment pc_value; 
@@ -463,20 +278,4 @@
   
 }
 
-//Determine whether this lump is really a sheet (that is, sheet-body).
-CubitBoolean OCCLump::is_sheet( )
-{
-  OCCShell *facet_shell;
-  int i;
-    //if any of the shells are sheets, the body is assume to be a sheet
-    // for our purposes...
-  for(i=myShells.size(); i--;)
-  {
-    facet_shell = dynamic_cast<OCCShell*>(myShells.get_and_step()); 
-    if(facet_shell->is_sheet()){
-      return CUBIT_TRUE;
-    }
-  }
-  return CUBIT_FALSE;
-}
 

Modified: cgm/trunk/geom/OCC/OCCPoint.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCPoint.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCPoint.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -64,11 +64,6 @@
 
   TopoDS_Vertex *get_TopoDS_Vertex(){return myTopoDSVertex; }
 
-#ifdef BOYD14
-  OCCPoint *copy();
-    // make a new copy of this point and return it
-#endif
-      
   virtual void append_simple_attribute_virt(CubitSimpleAttrib*);
     //R void
     //I

Modified: cgm/trunk/geom/OCC/OCCQueryEngine.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCQueryEngine.cpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCQueryEngine.cpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -1020,7 +1020,7 @@
 	if (!OCCMap->IsBound(*posolid))
  	{
 		if(PRINT_RESULT)
-			PRINT_INFO("Adding solid\n");
+			PRINT_INFO("Adding solids.\n");
                 iTotalTBCreated++;
 		lump = new OCCLump(posolid);
 		body = new OCCBody(posolid);
@@ -1043,9 +1043,23 @@
 {
 	TopoDS_Shell *poshell = new TopoDS_Shell;
 	*poshell = aShape;
-	OCCShell *shell = new OCCShell(poshell);
-//			CGMList->append(shell);
-//			imported_entities.append(shell);
+	OCCShell *shell ;
+        if (!OCCMap->IsBound(*poshell))
+        {
+                if(PRINT_RESULT)
+                        PRINT_INFO("Adding shells.\n");
+                iTotalTBCreated++;
+		shell = = new OCCShell(poshell)
+                OCCMap->Bind(*poshell, iTotalTBCreated);
+                OccToCGM->insert(valType(iTotalTBCreated,
+                                (TopologyBridge*)shell));
+        }
+        else
+        {
+                int k = OCCMap->Find(*poshell);
+                shell = (OCCBody*)(OccToCGM->find(k))->second;
+        }
+
 	TopExp_Explorer Ex;
         for (Ex.Init(aShape, TopAbs_FACE); Ex.More(); Ex.Next())
            populate_topology_bridge(TopoDS::Face(Ex.Current()));
@@ -1060,11 +1074,9 @@
 	if (!OCCMap->IsBound(*poface))
   	{
 		if(PRINT_RESULT)
-                        PRINT_INFO("Adding face.\n");
+                        PRINT_INFO("Adding faces.\n");
         	iTotalTBCreated++;
 		surface = new OCCSurface(poface);
-//		CGMList->append(surface);
-//			imported_entities.append(surface);
 
 		OCCMap->Bind(*poface, iTotalTBCreated);
   		OccToCGM->insert(valType(iTotalTBCreated,
@@ -1085,37 +1097,56 @@
 {
 	TopoDS_Wire *powire = new TopoDS_Wire;
 	*powire = aShape;
-	OCCLoop *loop = new OCCLoop(powire);
-	TopExp_Explorer Ex;
-        for (Ex.Init(aShape, TopAbs_EDGE); Ex.More(); Ex.Next())         
-           populate_topology_bridge(TopoDS::Edge(Ex.Current())); 
+	OCCLoop *loop ;
+        if (!OCCMap->IsBound(*powire))
+        {
+                if(PRINT_RESULT)
+                        PRINT_INFO("Adding loops.\n");
+                iTotalTBCreated++;
+        	loop = new OCCLoop(powire);
+ 		OCCMap->Bind(*powire, iTotalTBCreated);
+                OccToCGM->insert(valType(iTotalTBCreated,
+                                (TopologyBridge*)loop));
+        }
+        else
+        {
+                int k = OCCMap->Find(*powire);
+                loop = (OCCLoop*)(OccToCGM->find(k))->second;
+        }
+
+	BRepTools_WireExplorer Ex;
+        DLIList <OCCCoEdge*> coedges;
+	for (Ex.Init(aShape); Ex.More(); Ex.Next())
+ 	{
+	   Curve* curve = populate_topology_bridge(Ex.Current()) ;
+           TopoDS_Edge *edge = curve->get_TopoDS_Edge( );
+  	   OCCCoEdge * coedge = new OCCCoEdge(edge, curve, powire, 
+ 	   (Ex.Orientation()== TopAbs_FORWARD ? CUBIT_FORWARD : CUBIT_REVERSE));
+	   coedges.append(coedge);
+	}
+	loop->add_coedges(coedges);
 	return loop;
 }
 
 Curve* OCCQueryEngine::populate_topology_bridge(TopoDS_Edge aShape)
 {
         Curve *curve;
-        OCCCoEdge *coedge;
         TopoDS_Edge *poedge = new TopoDS_Edge;
 	*poedge = aShape;
 	if (!OCCMap->IsBound(*poedge)) 
         {
 		if(PRINT_RESULT)
-                        PRINT_INFO("Adding edge.\n");
+                        PRINT_INFO("Adding edges.\n");
                 iTotalTBCreated++;
                 curve = new OCCCurve(poedge);
-		coedge = new OCCCoEdge(poedge, curve);
-//		CGMList->append(coedge);
-//		CGMList->append(curve);
 		OCCMap->Bind(*poedge, iTotalTBCreated);
                 OccToCGM->insert(valType(iTotalTBCreated,
-				(TopologyBridge*)coedge));
+				(TopologyBridge*)curve));
 	}
         else 
         {
                 int i = OCCMap->Find(*poedge);
-                coedge = (OCCCoEdge*)(OccToCGM->find(i))->second;
-                curve = coedge->curve();
+                curve = (OCCCurve*)(OccToCGM->find(i))->second;
 	}
 
         TopExp_Explorer Ex;
@@ -1132,11 +1163,9 @@
 	if (!OCCMap->IsBound(*povertex)) 
         {
  	  if(PRINT_RESULT)
-                        PRINT_INFO("Adding vertex\n");
+                        PRINT_INFO("Adding vertices.\n");
           iTotalTBCreated++;
  	  point = new OCCPoint(povertex);
-//	  CGMList->append(point);
-//	  imported_entities.append(point);
 	  OCCMap->Bind(*povertex, iTotalTBCreated);
           OccToCGM->insert(valType(iTotalTBCreated,
                           (TopologyBridge*)point));

Modified: cgm/trunk/geom/OCC/OCCShell.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCShell.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCShell.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -5,15 +5,15 @@
 //
 // Special Notes :
 //
-// Creator       : Xuechen Liu
+// Creator       : Jane Hu
 //
-// Creation Date : 08/06/96
+// Creation Date : 11/16/07
 //
-// Owner         : Malcolm J. Panthaki
+// Owner         : 
 //-------------------------------------------------------------------------
 
-#ifndef FACET_SHELL_HPP
-#define FACET_SHELL_HPP
+#ifndef OCC_SHELL_HPP
+#define OCC_SHELL_HPP
 
 // ********** BEGIN STANDARD INCLUDES      **********
 // ********** END STANDARD INCLUDES        **********
@@ -42,17 +42,12 @@
 public:
   
   OCCShell(TopoDS_Shell *theShell);
-  OCCShell(Lump* my_lump,
-             DLIList<Surface*> &my_surfs );
-    //- Constructor with lists of attached lumps and surfaces.
-  
-  OCCShell( DLIList<Surface*> &my_surfs );
-    //- Constructor with lists of attached surfaces.
-  
+  OCCShell(DLIList<OCCSurface *> surfaces);  
+
   virtual ~OCCShell() ;
     //- Destructor.
-  void add_lump(Lump* lump_ptr);
-      
+
+  virtual CubitBox bounding_box() const;
   
   virtual GeometryQueryEngine* 
   get_geometry_query_engine() const;
@@ -102,52 +97,13 @@
     //- such operations on its entities. If it cannot, then "names"
     //- of VGI entities will not propagate.
 
-#ifdef BOYD14
-  void get_bodies  ( DLIList<OCCBody   *>& bodies   );
-#endif
-  void get_lumps   ( DLIList<OCCLump   *>& lumps    );
-#ifdef BOYD14
-  void get_shells  ( DLIList<OCCShell  *>& shells   );
-#endif
-  void get_surfaces( DLIList<OCCSurface*>& surfaces );
-#ifdef BOYD14
-  void get_loops   ( DLIList<OCCLoop   *>& loops    );
-#endif
-  void get_coedges ( DLIList<OCCCoEdge *>& coedges  );
-  void get_curves  ( DLIList<OCCCurve  *>& curves   );
-#ifdef BOYD14
-  void get_points  ( DLIList<OCCPoint  *>& points   );
-#endif
-
-  void get_parents_virt( DLIList<TopologyBridge*>& parents );
-  void get_children_virt( DLIList<TopologyBridge*>& children );
-  
-  inline Lump* get_lump() const { return myLump; }
-  
-  inline void remove_lump() { myLump = 0; }
- 
-  void disconnect_surfaces( DLIList<OCCSurface*> &surfs_to_disconnect );
-  void disconnect_all_surfaces();
-  
-  void reverse(); // invert sense of each surface as used in this shell.
-  void reverse_surfaces(); //Actually flip the surface... do not change sense.
-
   CubitPointContainment point_containment( const CubitVector &point );
   
-    //determine whether this is a sheet shell or not.
-    // This function may have problems with certain non-manifold geometries
-    // It is looking for facets that aren't attached to another facet for
-    // one or more of its edges.
-    // NOTE (mbrewer): this can probably be improved by going to the
-    // curves and checking for the number of co-edges on each curve.
-  CubitBoolean is_sheet();
-
 protected: 
   
 private:
   TopoDS_Shell *myTopoDSShell;
-  Lump* myLump;
-  DLIList<Surface*> mySurfs;
+  DLIList <OCCSurface *> occ_surfaces;
 };
 
 

Modified: cgm/trunk/geom/OCC/OCCSurface.hpp
===================================================================
--- cgm/trunk/geom/OCC/OCCSurface.hpp	2007-11-21 15:22:26 UTC (rev 1418)
+++ cgm/trunk/geom/OCC/OCCSurface.hpp	2007-11-21 18:42:17 UTC (rev 1419)
@@ -5,7 +5,7 @@
 //
 // Special Notes :
 //
-// Creator       : Alexander Danilov
+// Creator       : Jane Hu  
 //
 // Creation Date : 
 //
@@ -38,7 +38,6 @@
 class RefVolume;
 class RefFace;
 class RefVolume;
-//// class FacetEvalTool;
 class OCCShell;
 class OCCAttrib;
 
@@ -48,14 +47,7 @@
 class OCCCoEdge;
 class OCCCurve;
 class OCCPoint;
-//// class CubitFacetEdge;
-//// class CubitFacet;
-//// class CubitPoint;
 //// class CubitTransformMatrix;
-class CubitEvaluator;
-//// class CubitEvaluatorData;
-//// class SphereEvaluatorData;
-//// class CylinderEvaluatorData;
 
 class OCCSurface : public Surface
 {
@@ -64,46 +56,9 @@
   
   OCCSurface(TopoDS_Face *theFace);
 
-  ////  OCCSurface(FacetEvalTool *facet_eval_tool_ptr,
-  ////             DLIList<ShellSM*> &shellsms,DLIList<LoopSM*> &loopsms );
-  ////  //I- facet_eval_tool pointer
-  ////  //I- A pointer to the set of facets that define this surface.
- 
-  //// OCCSurface(FacetEvalTool *facet_eval_tool_ptr,
-  ////             CubitSense sense,
-  ////             CubitSense shell_sense0,
-  ////             CubitBoolean use_facets,
-  ////             DLIList<LoopSM*> &loopsms );
-
-
-  ////  OCCSurface( const CylinderEvaluatorData *cylinder_data,
-  ////              FacetEvalTool *facet_tool,
-  ////              DLIList<ShellSM*> &shellsms,
-  ////              DLIList<LoopSM*> &loopsms );
-  //// //-  Constructor used to create a faceted surface representing a cylinder.
-  //// //I-  eval_data - radius, base, etc. of cylinder.
-  //// //I-  facet_eval_tool_ptr - evaluator to evaluate directly on facets.
-  //// //I-  shellsms - the shells in this facet model
-  //// //I-  loopsms - the loops in this facet model.
-
-  //// OCCSurface( const SphereEvaluatorData *eval_data,
-  ////               FacetEvalTool *facet_eval_tool_ptr,
-  ////               DLIList<ShellSM*> &shellsms,
-  ////               DLIList<LoopSM*> &loopsms );
-  //// //-  Constructor used to create a faceted surface representing a sphere.
-  //// //I-  eval_data - radius, center, etc. of sphere.
-  //// //I-  facet_eval_tool_ptr - evaluator to evaluate directly on facets.
-  //// //I-  shellsms - the shells in this facet model
-  //// //I-  loopsms - the loops in this facet model.
-   
   virtual ~OCCSurface() ;
     //- The destructor
    
-  bool has_parent_shell() ;   //// Not in SurfaceACIS
-      
-    //CubitSense get_relative_surface_sense();
-    //- Return the relative surface sense. (see below)
-
   virtual void append_simple_attribute_virt(CubitSimpleAttrib*);
     //R void
     //I 
@@ -387,22 +342,6 @@
   virtual CubitPointContainment point_containment( const CubitVector &point );
   virtual CubitPointContainment point_containment( double u, double v );
 
-  //// In SurfaceACIS, commented out here!!
-//  virtual CubitPointContainment point_containment( const CubitVector &point, 
-//                                                   double u, double v );
-    //R CubitPointContainment - is the point outside, inside or on the boundary?
-    //R- CUBIT_PNT_OUTSIDE, CUBIT_PNT_INSIDE, CUBIT_PNT_BOUNDARY, 
-    //   CUBIT_PNT_UNKNOWN
-    //I CubitVector
-    //I- position to check, known to be on the Surface
-    //I double
-    //I- u coordinate, if known (significantly faster, if this is known - however
-    //                           if not known let the function figure it out)
-    //I double
-    //I- v coordinate, if known (significantly faster, if this is known - however
-    //                           if not known let the function figure it out)
-    // NOTE: POINT MUST LIE ON THE SURFACE FOR THIS FUNCTION TO WORK PROPERLY.
-  
   GeometryType geometry_type();
     //R GeometryType (enum)
     //R- The enumerated type of the geometric representation
@@ -415,9 +354,6 @@
     //- Returns volume for Lump, area for Surface, length for Curve and 
     //- 1.0 for Point
 
-  ////  void update_measurement();
-  ////    //Make sure we don't retain an out-dated measurement.
-  
   virtual CubitSense get_geometry_sense();
     //- Return the relative surface sense. (see below)
   
@@ -433,60 +369,13 @@
   CubitStatus restore_attribs( FILE* file_ptr, unsigned int endian );
     // Read FactAttribs from file
   
-  void get_bodies  ( DLIList<OCCBody   *>& bodies   );
-  void get_lumps   ( DLIList<OCCLump   *>& lumps    );
-  void get_shells  ( DLIList<OCCShell  *>& shells   );
-#ifdef BOYD14
-  void get_surfaces( DLIList<OCCSurface*>& surfaces );
-#endif
-  void get_loops   ( DLIList<OCCLoop   *>& loops    );
-  void get_coedges ( DLIList<OCCCoEdge *>& coedges  );
-  void get_curves  ( DLIList<OCCCurve  *>& curves   );
-#ifdef BOYD14
-  void get_points  ( DLIList<OCCPoint  *>& points   );
-#endif
-
   void get_parents_virt( DLIList<TopologyBridge*>& parents );
   void get_children_virt( DLIList<TopologyBridge*>& children );
 
-  ////  CubitStatus get_my_facets(DLIList<CubitFacet*>& facet_list,
-  ////                          DLIList<CubitPoint*>& point_list);
-  ////  //- Gets the list of facets describing this surface.
-  //// void tris(DLIList<CubitFacet*> &facet_list);
-  //// void get_my_points(DLIList<CubitPoint*>& point_list);
-  ////  //- Gets the list of points describing this surface.
-  //// void get_my_facetedges(DLIList<CubitFacetEdge*>& edge_list);
-  ////  //- Gets the list of points describing this surface.
-  //// FacetEvalTool *get_eval_tool()
-  ////   { return facetEvalTool; }
-  //// const FacetEvalTool *get_eval_tool() const
-  ////   { return facetEvalTool; }
-  ////   //- return the facet evaluation tool for this surface
-    
-  CubitSense get_shell_sense( ShellSM *facet_shell ) const;
-    // return the sense with respect to the given shell
-  
-  void get_shell_sense( CubitSense &sense0 ); 
-    // return senses 
-    
-  void set_shell_sense( OCCShell *facet_shell, 
-                        CubitSense thesense );
-    // set the sense of the surface with respect to the shell
-
-  ////  CubitStatus copy_facets(DLIList<CubitFacet*>&copy_facet_list,
-  ////                        DLIList<CubitPoint*>&copy_point_list);
-  ////  // create a copy of the points and facets
-
-  //// int interp_order();
-  //// double min_dot();
-
   CubitBoolean is_flat();     //// Not in SurfaceACIS
   CubitBoolean is_spherical(); //// Not in SurfaceACIS
   CubitBoolean is_conical();  //// Not in SurfaceACIS
 
-  ////  const CubitEvaluatorData *evaluator_data();
-  ////  void add_transformation( CubitTransformMatrix &tfmat );
-
 protected: 
 
 private:
@@ -501,22 +390,9 @@
     //- Not only does the RefFace have a sense wrt its Surface, but each
     //- Facet FACE has a sense wrt its underlying "surface" object.
 
-  //sjowen FacetEvalTool *facetEvalTool;
-  ////  FacetEvalTool *facetEvalTool;
-    //For topology traversals we need to have connections to the
-    //entitities connected to this surface.  From these we can get the rest.
-
-  DLIList<LoopSM*> myLoops;
-  DLIList<ShellSM*> myShells;
-
   OCCAttribSet attribSet;
     //List of OCCAttrib*'s instead of CubitSimpleAttribs 
 
-  // the sense of the surface with respect to the shells in the myShells list
-  CubitSense myShellSense;
-
-  CubitEvaluator *myEvaluator;
-
   TopoDS_Face *myTopoDSFace;
 
 };




More information about the cgma-dev mailing list