Open CASCADE Technology 7.8.0
|
Intersect two shapes. More...
#include <TopOpeBRep_ShapeIntersector.hxx>
Public Member Functions | |
TopOpeBRep_ShapeIntersector () | |
void | InitIntersection (const TopoDS_Shape &S1, const TopoDS_Shape &S2) |
Initialize the intersection of shapes S1,S2. | |
void | InitIntersection (const TopoDS_Shape &S1, const TopoDS_Shape &S2, const TopoDS_Face &F1, const TopoDS_Face &F2) |
Initialize the intersection of shapes S1,S2. | |
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_Boolean | MoreIntersection () const |
returns True if there are more intersection between two the shapes. | |
void | NextIntersection () |
search for the next intersection between the two shapes. | |
TopOpeBRep_FacesIntersector & | ChangeFacesIntersector () |
return the current intersection of two Faces. | |
TopOpeBRep_EdgesIntersector & | ChangeEdgesIntersector () |
return the current intersection of two Edges. | |
TopOpeBRep_FaceEdgeIntersector & | ChangeFaceEdgeIntersector () |
return the current intersection of a Face and an Edge. | |
const TopoDS_Shape & | CurrentGeomShape (const Standard_Integer Index) const |
return geometric shape <Index> ( = 1 or 2 ) of current intersection. | |
void | GetTolerances (Standard_Real &tol1, Standard_Real &tol2) const |
return MAX of intersection tolerances with which FacesIntersector from TopOpeBRep was working. | |
void | DumpCurrent (const Standard_Integer K) const |
Standard_Integer | Index (const Standard_Integer K) const |
void | RejectedFaces (const TopoDS_Shape &anObj, const TopoDS_Shape &aReference, TopTools_ListOfShape &aListOfShape) |
Intersect two shapes.
A GeomShape is a shape with a geometric domain, i.e. a Face or an Edge.
The purpose of the ShapeIntersector 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 :
Let S1,S2 the shapes sent to InitIntersection(S1,S2) method :
TopOpeBRep_ShapeIntersector::TopOpeBRep_ShapeIntersector | ( | ) |
TopOpeBRep_EdgesIntersector & TopOpeBRep_ShapeIntersector::ChangeEdgesIntersector | ( | ) |
return the current intersection of two Edges.
TopOpeBRep_FaceEdgeIntersector & TopOpeBRep_ShapeIntersector::ChangeFaceEdgeIntersector | ( | ) |
return the current intersection of a Face and an Edge.
TopOpeBRep_FacesIntersector & TopOpeBRep_ShapeIntersector::ChangeFacesIntersector | ( | ) |
return the current intersection of two Faces.
const TopoDS_Shape & TopOpeBRep_ShapeIntersector::CurrentGeomShape | ( | const Standard_Integer | Index | ) | const |
return geometric shape <Index> ( = 1 or 2 ) of current intersection.
void TopOpeBRep_ShapeIntersector::DumpCurrent | ( | const Standard_Integer | K | ) | const |
void TopOpeBRep_ShapeIntersector::GetTolerances | ( | Standard_Real & | tol1, |
Standard_Real & | tol2 | ||
) | const |
return MAX of intersection tolerances with which FacesIntersector from TopOpeBRep was working.
Standard_Integer TopOpeBRep_ShapeIntersector::Index | ( | const Standard_Integer | K | ) | const |
void TopOpeBRep_ShapeIntersector::InitIntersection | ( | const TopoDS_Shape & | S1, |
const TopoDS_Shape & | S2 | ||
) |
Initialize the intersection of shapes S1,S2.
void TopOpeBRep_ShapeIntersector::InitIntersection | ( | const TopoDS_Shape & | S1, |
const TopoDS_Shape & | S2, | ||
const TopoDS_Face & | F1, | ||
const TopoDS_Face & | F2 | ||
) |
Initialize the intersection of shapes S1,S2.
Standard_Boolean TopOpeBRep_ShapeIntersector::MoreIntersection | ( | ) | const |
returns True if there are more intersection between two the shapes.
void TopOpeBRep_ShapeIntersector::NextIntersection | ( | ) |
search for the next intersection between the two shapes.
void TopOpeBRep_ShapeIntersector::RejectedFaces | ( | const TopoDS_Shape & | anObj, |
const TopoDS_Shape & | aReference, | ||
TopTools_ListOfShape & | aListOfShape | ||
) |
const TopoDS_Shape & TopOpeBRep_ShapeIntersector::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.