OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKBool
TopOpeBRep


TopOpeBRep_ShapeIntersector2d Class Reference

Intersect two shapes.

A GeomShape is a shape with a geometric domain, i.e.
a Face or an Edge.

The purpose of the ShapeIntersector2d is to find
couples of intersecting GeomShape in two Shapes
(which can be any kind of topologies : Compound,
Solid, Shell, etc... )

It is in charge of exploration of the shapes and
rejection. For this it is provided with two tools :

- ShapeExplorer from TopOpeBRepTool.
- ShapeScanner from TopOpeBRep which implements bounding boxes.
.

#include <TopOpeBRep_ShapeIntersector2d.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT TopOpeBRep_ShapeIntersector2d ()
Standard_EXPORT void InitIntersection (const TopoDS_Shape &S1, const TopoDS_Shape &S2)
 Initialize the intersection of shapes S1,S2.
.
Standard_EXPORT const TopoDS_Shape & Shape (const Standard_Integer Index) const
 return the shape <index> ( = 1 or 2) given to
InitIntersection().
Index = 1 will return S1, Index = 2 will return S2.

Standard_EXPORT Standard_Boolean MoreIntersection () const
 returns True if there are more intersection
between two the shapes.

Standard_EXPORT void NextIntersection ()
 search for the next intersection between the two shapes.

Standard_EXPORT TopOpeBRep_EdgesIntersectorChangeEdgesIntersector ()
 return the current intersection of two Edges.

Standard_EXPORT const TopoDS_Shape & CurrentGeomShape (const Standard_Integer Index) const
 return geometric shape <index> ( = 1 or 2 ) of
current intersection.

Standard_EXPORT void DumpCurrent (const Standard_Integer K) const
Standard_EXPORT Standard_Integer Index (const Standard_Integer K) const

Private Member Functions

Standard_EXPORT void Reset ()
Standard_EXPORT void Init (const TopoDS_Shape &S1, const TopoDS_Shape &S2)
Standard_EXPORT void SetIntersectionDone ()
Standard_EXPORT void InitFFIntersection ()
Standard_EXPORT void FindFFIntersection ()
Standard_EXPORT Standard_Boolean MoreFFCouple () const
Standard_EXPORT void NextFFCouple ()
Standard_EXPORT void InitEEFFIntersection ()
Standard_EXPORT void FindEEFFIntersection ()
Standard_EXPORT Standard_Boolean MoreEEFFCouple () const
Standard_EXPORT void NextEEFFCouple ()

Private Attributes

TopoDS_Shape myShape1
TopoDS_Shape myShape2
Handle_TopOpeBRepTool_HBoxTool myHBoxTool
TopOpeBRepTool_ShapeExplorer myFaceExplorer
TopOpeBRep_ShapeScanner myFaceScanner
TopOpeBRepTool_ShapeExplorer myEdgeExplorer
TopOpeBRep_ShapeScanner myEdgeScanner
TopOpeBRep_EdgesIntersector myEEIntersector
Standard_Boolean myIntersectionDone
Standard_Boolean myFFDone
Standard_Boolean myEEFFDone
Standard_Boolean myFFInit
Standard_Boolean myEEFFInit


Constructor & Destructor Documentation

Standard_EXPORT TopOpeBRep_ShapeIntersector2d::TopOpeBRep_ShapeIntersector2d  ) 
 


Member Function Documentation

Standard_EXPORT TopOpeBRep_EdgesIntersector& TopOpeBRep_ShapeIntersector2d::ChangeEdgesIntersector  ) 
 

Standard_EXPORT const TopoDS_Shape& TopOpeBRep_ShapeIntersector2d::CurrentGeomShape const Standard_Integer  Index  )  const
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::DumpCurrent const Standard_Integer  K  )  const
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::FindEEFFIntersection  )  [private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::FindFFIntersection  )  [private]
 

Standard_EXPORT Standard_Integer TopOpeBRep_ShapeIntersector2d::Index const Standard_Integer  K  )  const
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::Init const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2
[private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::InitEEFFIntersection  )  [private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::InitFFIntersection  )  [private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::InitIntersection const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2
 

Standard_EXPORT Standard_Boolean TopOpeBRep_ShapeIntersector2d::MoreEEFFCouple  )  const [private]
 

Standard_EXPORT Standard_Boolean TopOpeBRep_ShapeIntersector2d::MoreFFCouple  )  const [private]
 

Standard_EXPORT Standard_Boolean TopOpeBRep_ShapeIntersector2d::MoreIntersection  )  const
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::NextEEFFCouple  )  [private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::NextFFCouple  )  [private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::NextIntersection  ) 
 

void TopOpeBRep_ShapeIntersector2d::operator delete void *  anAddress  )  [inline]
 

void* TopOpeBRep_ShapeIntersector2d::operator new size_t  size  )  [inline]
 

void* TopOpeBRep_ShapeIntersector2d::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::Reset  )  [private]
 

Standard_EXPORT void TopOpeBRep_ShapeIntersector2d::SetIntersectionDone  )  [private]
 

Standard_EXPORT const TopoDS_Shape& TopOpeBRep_ShapeIntersector2d::Shape const Standard_Integer  Index  )  const
 


Field Documentation

TopOpeBRepTool_ShapeExplorer TopOpeBRep_ShapeIntersector2d::myEdgeExplorer [private]
 

TopOpeBRep_ShapeScanner TopOpeBRep_ShapeIntersector2d::myEdgeScanner [private]
 

Standard_Boolean TopOpeBRep_ShapeIntersector2d::myEEFFDone [private]
 

Standard_Boolean TopOpeBRep_ShapeIntersector2d::myEEFFInit [private]
 

TopOpeBRep_EdgesIntersector TopOpeBRep_ShapeIntersector2d::myEEIntersector [private]
 

TopOpeBRepTool_ShapeExplorer TopOpeBRep_ShapeIntersector2d::myFaceExplorer [private]
 

TopOpeBRep_ShapeScanner TopOpeBRep_ShapeIntersector2d::myFaceScanner [private]
 

Standard_Boolean TopOpeBRep_ShapeIntersector2d::myFFDone [private]
 

Standard_Boolean TopOpeBRep_ShapeIntersector2d::myFFInit [private]
 

Handle_TopOpeBRepTool_HBoxTool TopOpeBRep_ShapeIntersector2d::myHBoxTool [private]
 

Standard_Boolean TopOpeBRep_ShapeIntersector2d::myIntersectionDone [private]
 

TopoDS_Shape TopOpeBRep_ShapeIntersector2d::myShape1 [private]
 

TopoDS_Shape TopOpeBRep_ShapeIntersector2d::myShape2 [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:42:52 2008 for OpenCASCADE by  doxygen 1.4.1