[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*>©_facet_list,
- //// DLIList<CubitPoint*>©_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