Open CASCADE Technology 6.6.0
|
#include <BOPTools_AlgoTools.hxx>
Static Public Member Functions | |
static Standard_Integer | ComputeVV (const TopoDS_Vertex &aV1, const gp_Pnt &aP2, const Standard_Real aTolP2) |
static Standard_Integer | ComputeVV (const TopoDS_Vertex &aV1, const TopoDS_Vertex &aV2) |
static void | MakeVertex (BOPCol_ListOfShape &aLV, TopoDS_Vertex &aV) |
static void | MakeEdge (const IntTools_Curve &theCurve, const TopoDS_Vertex &theV1, const Standard_Real theT1, const TopoDS_Vertex &theV2, const Standard_Real theT2, const Standard_Real theTolR3D, TopoDS_Edge &theE) |
static void | MakePCurve (const TopoDS_Edge &theE, const TopoDS_Face &theF1, const TopoDS_Face &theF2, const IntTools_Curve &theCurve, const Standard_Boolean thePC1, const Standard_Boolean thePC2) |
static void | MakeContainer (const TopAbs_ShapeEnum theType, TopoDS_Shape &theShape) |
static Standard_Boolean | IsHole (const TopoDS_Shape &aW, const TopoDS_Shape &aF) |
static Standard_Boolean | IsSplitToReverse (const TopoDS_Shape &theSplit, const TopoDS_Shape &theShape, Handle< BOPInt_Context > &theContext) |
Returns True if the shape theSplit has opposite direction than theShape theContext - cashed geometrical tools | |
static Standard_Boolean | IsSplitToReverse (const TopoDS_Face &theSplit, const TopoDS_Face &theShape, Handle< BOPInt_Context > &theContext) |
Returns True if normal direction of the face theShape is not the same as for the face theSplit theContext - cashed geometrical tools | |
static Standard_Boolean | IsSplitToReverse (const TopoDS_Edge &aE1, const TopoDS_Edge &aE2, Handle< BOPInt_Context > &aContext) |
static Standard_Boolean | AreFacesSameDomain (const TopoDS_Face &theF1, const TopoDS_Face &theF2, Handle< BOPInt_Context > &theContext) |
static Standard_Boolean | CheckSameGeom (const TopoDS_Face &theF1, const TopoDS_Face &theF2, Handle< BOPInt_Context > &theContext) |
static Standard_Integer | Sense (const TopoDS_Face &theF1, const TopoDS_Face &theF2) |
static Standard_Boolean | GetEdgeOff (const TopoDS_Edge &theEdge, const TopoDS_Face &theFace, TopoDS_Edge &theEdgeOff) |
Returns True if the face theFace contains the edge theEdge but with opposite orientation. If the method returns True theEdgeOff is the edge founded | |
static void | GetFaceOff (const TopoDS_Edge &theEdge, const TopoDS_Face &theFace, BOPTools_ListOfCoupleOfShape &theLCEF, TopoDS_Face &theFaceOff, Handle< BOPInt_Context > &theContext) |
For the face theFace and its edge theEdge finds the face suitable to produce shell. theLCEF - set of faces to search. All faces from theLCEF must share edge theEdge | |
static Standard_Boolean | IsInternalFace (const TopoDS_Face &theFace, const TopoDS_Edge &theEdge, const TopoDS_Face &theFace1, const TopoDS_Face &theFace2, Handle< BOPInt_Context > &theContext) |
Returns True if the face theFace is inside of the couple of faces theFace1, theFace2. The faces theFace, theFace1, theFace2 must share the edge theEdge | |
static Standard_Boolean | IsInternalFace (const TopoDS_Face &theFace, const TopoDS_Edge &theEdge, BOPCol_ListOfShape &theLF, Handle< BOPInt_Context > &theContext) |
Returns True if the face theFace is inside of the appropriate couple of faces (from the set theLF) . The faces of the set theLF and theFace must share the edge theEdge | |
static Standard_Boolean | IsInternalFace (const TopoDS_Face &theFace, const TopoDS_Solid &theSolid, BOPCol_IndexedDataMapOfShapeListOfShape &theMEF, const Standard_Real theTol, Handle< BOPInt_Context > &theContext) |
Returns True if the face theFace is inside the solid theSolid. theMEF - Map Edge/Faces for theSolid theTol - value of precision of computation theContext- cahed geometrical tools | |
static Standard_Boolean | GetEdgeOnFace (const TopoDS_Edge &theEdge, const TopoDS_Face &theFace, TopoDS_Edge &theEdgeOnF) |
For the face theFace gets the edge theEdgeOnF that is the same as theEdge Returns True if such edge exists Returns False if there is no such edge | |
static TopAbs_State | ComputeState (const gp_Pnt &thePoint, const TopoDS_Solid &theSolid, const Standard_Real theTol, Handle< BOPInt_Context > &theContext) |
Computes the 3-D state of the point thePoint toward solid theSolid. theTol - value of precision of computation theContext- cahed geometrical tools Returns 3-D state. | |
static TopAbs_State | ComputeState (const TopoDS_Vertex &theVertex, const TopoDS_Solid &theSolid, const Standard_Real theTol, Handle< BOPInt_Context > &theContext) |
Computes the 3-D state of the vertex theVertex toward solid theSolid. theTol - value of precision of computation theContext- cahed geometrical tools Returns 3-D state. | |
static TopAbs_State | ComputeState (const TopoDS_Edge &theEdge, const TopoDS_Solid &theSolid, const Standard_Real theTol, Handle< BOPInt_Context > &theContext) |
Computes the 3-D state of the edge theEdge toward solid theSolid. theTol - value of precision of computation theContext- cahed geometrical tools Returns 3-D state. | |
static TopAbs_State | ComputeState (const TopoDS_Face &theFace, const TopoDS_Solid &theSolid, const Standard_Real theTol, BOPCol_IndexedMapOfShape &theBounds, Handle< BOPInt_Context > &theContext) |
Computes the 3-D state of the face theFace toward solid theSolid. theTol - value of precision of computation theBounds - set of edges of theFace to avoid theContext- cahed geometrical tools Returns 3-D state. | |
static TopAbs_State | ComputeStateByOnePoint (const TopoDS_Shape &theShape, const TopoDS_Solid &theSolid, const Standard_Real theTol, Handle< BOPInt_Context > &theContext) |
Computes the 3-D state of the shape theShape toward solid theSolid. theTol - value of precision of computation theContext- cahed geometrical tools Returns 3-D state. | |
static void | MakeConnexityBlock (BOPCol_ListOfShape &theLS, BOPCol_IndexedMapOfShape &theMapAvoid, BOPCol_ListOfShape &theLSCB, const BOPCol_BaseAllocator &theAllocator) |
For the list of faces theLS build block theLSCB in terms of connexity by edges theMapAvoid - set of edges to avoid for the treatment | |
static void | MakeConnexityBlocks (const TopoDS_Shape &theS, const TopAbs_ShapeEnum theType1, const TopAbs_ShapeEnum theType2, BOPCol_ListOfShape &theLCB) |
For the compound theS build the blocks theLCB (as list of compounds) in terms of connexity by the shapes of theType | |
static void | OrientFacesOnShell (TopoDS_Shape &theS) |
static void | CorrectTolerances (const TopoDS_Shape &theS, const Standard_Real theTolMax=0.0001) |
Provides valid values of tolerances for the shape <theS> <theTolMax> is max value of the tolerance that can be accepted for correction. If real value of the tolerance will be greater than <aTolMax>, the correction does not perform. | |
static void | CorrectCurveOnSurface (const TopoDS_Shape &theS, const Standard_Real theTolMax=0.0001) |
Provides valid values of tolerances for the shape <theS> in terms of BRepCheck_InvalidCurveOnSurface. | |
static void | CorrectPointOnCurve (const TopoDS_Shape &theS, const Standard_Real theTolMax=0.0001) |
Provides valid values of tolerances for the shape <theS> in terms of BRepCheck_InvalidPointOnCurve. | |
static void | MakeNewVertex (const gp_Pnt &aP1, const Standard_Real aTol, TopoDS_Vertex &aNewVertex) |
Make a vertex using 3D-point <aP1> and 3D-tolerance value <aTol> | |
static void | MakeNewVertex (const TopoDS_Vertex &aV1, const TopoDS_Vertex &aV2, TopoDS_Vertex &aNewVertex) |
Make a vertex using couple of vertices <aV1, aV2> | |
static void | MakeNewVertex (const TopoDS_Edge &aE1, const Standard_Real aP1, const TopoDS_Edge &aE2, const Standard_Real aP2, TopoDS_Vertex &aNewVertex) |
Make a vertex in place of intersection between two edges <aE1, aE2> with parameters <aP1, aP2> | |
static void | MakeNewVertex (const TopoDS_Edge &aE1, const Standard_Real aP1, const TopoDS_Face &aF2, TopoDS_Vertex &aNewVertex) |
Make a vertex in place of intersection between the edge <aE1> with parameter <aP1> and the face <aF2> | |
static void | PointOnEdge (const TopoDS_Edge &aEdge, const Standard_Real aPrm, gp_Pnt &aP) |
Compute a 3D-point on the edge <aEdge> at parameter <aPrm> | |
static void | MakeSplitEdge (const TopoDS_Edge &aE1, const TopoDS_Vertex &aV1, const Standard_Real aP1, const TopoDS_Vertex &aV2, const Standard_Real aP2, TopoDS_Edge &aNewEdge) |
Make the edge from base edge <aE1> and two vertices <aV1,aV2> at parameters <aP1,aP2> | |
static void | MakeSectEdge (const IntTools_Curve &aIC, const TopoDS_Vertex &aV1, const Standard_Real aP1, const TopoDS_Vertex &aV2, const Standard_Real aP2, TopoDS_Edge &aNewEdge) |
Make the edge from 3D-Curve <aIC> and two vertices <aV1,aV2> at parameters <aP1,aP2> | |
static void | UpdateVertex (const IntTools_Curve &aIC, const Standard_Real aT, const TopoDS_Vertex &aV) |
Update the tolerance value for vertex <aV> taking into account the fact that <aV> lays on the curve <aIC> | |
static void | UpdateVertex (const TopoDS_Edge &aE, const Standard_Real aT, const TopoDS_Vertex &aV) |
Update the tolerance value for vertex <aV> taking into account the fact that <aV> lays on the edge <aE> | |
static void | UpdateVertex (const TopoDS_Vertex &aVF, const TopoDS_Vertex &aVN) |
Update the tolerance value for vertex <aVN> taking into account the fact that <aVN> should cover tolerance zone of <aVF> | |
static void | CorrectRange (const TopoDS_Edge &aE1, const TopoDS_Edge &aE2, const IntTools_Range &aSR, IntTools_Range &aNewSR) |
Correct shrunk range <aSR> taking into account 3D-curve resolution and corresp. tolerances' values of <aE1>, <aE2> | |
static void | CorrectRange (const TopoDS_Edge &aE, const TopoDS_Face &aF, const IntTools_Range &aSR, IntTools_Range &aNewSR) |
Correct shrunk range <aSR> taking into account 3D-curve resolution and corresp. tolerances' values of <aE>, <aF> | |
static Standard_Boolean | IsBlockInOnFace (const IntTools_Range &aShR, const TopoDS_Face &aF, const TopoDS_Edge &aE, Handle< BOPInt_Context > &aContext) |
Returns TRUE if PaveBlock <aPB> lays on the face <aF>, i.e the <PB> is IN or ON in 2D of <aF> | |
static Standard_Boolean | IsMicroEdge (const TopoDS_Edge &theEdge, const Handle< BOPInt_Context > &theContext) |
Checks if it is possible to compute shrunk range for the edge <aE>. | |
static void | CorrectShapeTolerances (const TopoDS_Shape &theS) |
Corrects tolerance values of the sub-shapes of the shape <theS> if needed. | |
static Standard_Integer | Dimension (const TopoDS_Shape &theS) |
Retutns dimension of the shape <theS>. |
static Standard_Boolean BOPTools_AlgoTools::AreFacesSameDomain | ( | const TopoDS_Face & | theF1, |
const TopoDS_Face & | theF2, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::CheckSameGeom | ( | const TopoDS_Face & | theF1, |
const TopoDS_Face & | theF2, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static TopAbs_State BOPTools_AlgoTools::ComputeState | ( | const gp_Pnt & | thePoint, |
const TopoDS_Solid & | theSolid, | ||
const Standard_Real | theTol, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static TopAbs_State BOPTools_AlgoTools::ComputeState | ( | const TopoDS_Vertex & | theVertex, |
const TopoDS_Solid & | theSolid, | ||
const Standard_Real | theTol, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static TopAbs_State BOPTools_AlgoTools::ComputeState | ( | const TopoDS_Edge & | theEdge, |
const TopoDS_Solid & | theSolid, | ||
const Standard_Real | theTol, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static TopAbs_State BOPTools_AlgoTools::ComputeState | ( | const TopoDS_Face & | theFace, |
const TopoDS_Solid & | theSolid, | ||
const Standard_Real | theTol, | ||
BOPCol_IndexedMapOfShape & | theBounds, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static TopAbs_State BOPTools_AlgoTools::ComputeStateByOnePoint | ( | const TopoDS_Shape & | theShape, |
const TopoDS_Solid & | theSolid, | ||
const Standard_Real | theTol, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Integer BOPTools_AlgoTools::ComputeVV | ( | const TopoDS_Vertex & | aV1, |
const gp_Pnt & | aP2, | ||
const Standard_Real | aTolP2 | ||
) | [static] |
static Standard_Integer BOPTools_AlgoTools::ComputeVV | ( | const TopoDS_Vertex & | aV1, |
const TopoDS_Vertex & | aV2 | ||
) | [static] |
static void BOPTools_AlgoTools::CorrectCurveOnSurface | ( | const TopoDS_Shape & | theS, |
const Standard_Real | theTolMax = 0.0001 |
||
) | [static] |
static void BOPTools_AlgoTools::CorrectPointOnCurve | ( | const TopoDS_Shape & | theS, |
const Standard_Real | theTolMax = 0.0001 |
||
) | [static] |
static void BOPTools_AlgoTools::CorrectRange | ( | const TopoDS_Edge & | aE1, |
const TopoDS_Edge & | aE2, | ||
const IntTools_Range & | aSR, | ||
IntTools_Range & | aNewSR | ||
) | [static] |
static void BOPTools_AlgoTools::CorrectRange | ( | const TopoDS_Edge & | aE, |
const TopoDS_Face & | aF, | ||
const IntTools_Range & | aSR, | ||
IntTools_Range & | aNewSR | ||
) | [static] |
static void BOPTools_AlgoTools::CorrectShapeTolerances | ( | const TopoDS_Shape & | theS | ) | [static] |
static void BOPTools_AlgoTools::CorrectTolerances | ( | const TopoDS_Shape & | theS, |
const Standard_Real | theTolMax = 0.0001 |
||
) | [static] |
static Standard_Integer BOPTools_AlgoTools::Dimension | ( | const TopoDS_Shape & | theS | ) | [static] |
static Standard_Boolean BOPTools_AlgoTools::GetEdgeOff | ( | const TopoDS_Edge & | theEdge, |
const TopoDS_Face & | theFace, | ||
TopoDS_Edge & | theEdgeOff | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::GetEdgeOnFace | ( | const TopoDS_Edge & | theEdge, |
const TopoDS_Face & | theFace, | ||
TopoDS_Edge & | theEdgeOnF | ||
) | [static] |
static void BOPTools_AlgoTools::GetFaceOff | ( | const TopoDS_Edge & | theEdge, |
const TopoDS_Face & | theFace, | ||
BOPTools_ListOfCoupleOfShape & | theLCEF, | ||
TopoDS_Face & | theFaceOff, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsBlockInOnFace | ( | const IntTools_Range & | aShR, |
const TopoDS_Face & | aF, | ||
const TopoDS_Edge & | aE, | ||
Handle< BOPInt_Context > & | aContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsHole | ( | const TopoDS_Shape & | aW, |
const TopoDS_Shape & | aF | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsInternalFace | ( | const TopoDS_Face & | theFace, |
const TopoDS_Edge & | theEdge, | ||
BOPCol_ListOfShape & | theLF, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsInternalFace | ( | const TopoDS_Face & | theFace, |
const TopoDS_Edge & | theEdge, | ||
const TopoDS_Face & | theFace1, | ||
const TopoDS_Face & | theFace2, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsInternalFace | ( | const TopoDS_Face & | theFace, |
const TopoDS_Solid & | theSolid, | ||
BOPCol_IndexedDataMapOfShapeListOfShape & | theMEF, | ||
const Standard_Real | theTol, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsMicroEdge | ( | const TopoDS_Edge & | theEdge, |
const Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsSplitToReverse | ( | const TopoDS_Shape & | theSplit, |
const TopoDS_Shape & | theShape, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsSplitToReverse | ( | const TopoDS_Face & | theSplit, |
const TopoDS_Face & | theShape, | ||
Handle< BOPInt_Context > & | theContext | ||
) | [static] |
static Standard_Boolean BOPTools_AlgoTools::IsSplitToReverse | ( | const TopoDS_Edge & | aE1, |
const TopoDS_Edge & | aE2, | ||
Handle< BOPInt_Context > & | aContext | ||
) | [static] |
static void BOPTools_AlgoTools::MakeConnexityBlock | ( | BOPCol_ListOfShape & | theLS, |
BOPCol_IndexedMapOfShape & | theMapAvoid, | ||
BOPCol_ListOfShape & | theLSCB, | ||
const BOPCol_BaseAllocator & | theAllocator | ||
) | [static] |
static void BOPTools_AlgoTools::MakeConnexityBlocks | ( | const TopoDS_Shape & | theS, |
const TopAbs_ShapeEnum | theType1, | ||
const TopAbs_ShapeEnum | theType2, | ||
BOPCol_ListOfShape & | theLCB | ||
) | [static] |
static void BOPTools_AlgoTools::MakeContainer | ( | const TopAbs_ShapeEnum | theType, |
TopoDS_Shape & | theShape | ||
) | [static] |
static void BOPTools_AlgoTools::MakeEdge | ( | const IntTools_Curve & | theCurve, |
const TopoDS_Vertex & | theV1, | ||
const Standard_Real | theT1, | ||
const TopoDS_Vertex & | theV2, | ||
const Standard_Real | theT2, | ||
const Standard_Real | theTolR3D, | ||
TopoDS_Edge & | theE | ||
) | [static] |
static void BOPTools_AlgoTools::MakeNewVertex | ( | const TopoDS_Vertex & | aV1, |
const TopoDS_Vertex & | aV2, | ||
TopoDS_Vertex & | aNewVertex | ||
) | [static] |
static void BOPTools_AlgoTools::MakeNewVertex | ( | const TopoDS_Edge & | aE1, |
const Standard_Real | aP1, | ||
const TopoDS_Face & | aF2, | ||
TopoDS_Vertex & | aNewVertex | ||
) | [static] |
static void BOPTools_AlgoTools::MakeNewVertex | ( | const TopoDS_Edge & | aE1, |
const Standard_Real | aP1, | ||
const TopoDS_Edge & | aE2, | ||
const Standard_Real | aP2, | ||
TopoDS_Vertex & | aNewVertex | ||
) | [static] |
static void BOPTools_AlgoTools::MakeNewVertex | ( | const gp_Pnt & | aP1, |
const Standard_Real | aTol, | ||
TopoDS_Vertex & | aNewVertex | ||
) | [static] |
static void BOPTools_AlgoTools::MakePCurve | ( | const TopoDS_Edge & | theE, |
const TopoDS_Face & | theF1, | ||
const TopoDS_Face & | theF2, | ||
const IntTools_Curve & | theCurve, | ||
const Standard_Boolean | thePC1, | ||
const Standard_Boolean | thePC2 | ||
) | [static] |
static void BOPTools_AlgoTools::MakeSectEdge | ( | const IntTools_Curve & | aIC, |
const TopoDS_Vertex & | aV1, | ||
const Standard_Real | aP1, | ||
const TopoDS_Vertex & | aV2, | ||
const Standard_Real | aP2, | ||
TopoDS_Edge & | aNewEdge | ||
) | [static] |
static void BOPTools_AlgoTools::MakeSplitEdge | ( | const TopoDS_Edge & | aE1, |
const TopoDS_Vertex & | aV1, | ||
const Standard_Real | aP1, | ||
const TopoDS_Vertex & | aV2, | ||
const Standard_Real | aP2, | ||
TopoDS_Edge & | aNewEdge | ||
) | [static] |
static void BOPTools_AlgoTools::MakeVertex | ( | BOPCol_ListOfShape & | aLV, |
TopoDS_Vertex & | aV | ||
) | [static] |
static void BOPTools_AlgoTools::OrientFacesOnShell | ( | TopoDS_Shape & | theS | ) | [static] |
static void BOPTools_AlgoTools::PointOnEdge | ( | const TopoDS_Edge & | aEdge, |
const Standard_Real | aPrm, | ||
gp_Pnt & | aP | ||
) | [static] |
static Standard_Integer BOPTools_AlgoTools::Sense | ( | const TopoDS_Face & | theF1, |
const TopoDS_Face & | theF2 | ||
) | [static] |
static void BOPTools_AlgoTools::UpdateVertex | ( | const TopoDS_Edge & | aE, |
const Standard_Real | aT, | ||
const TopoDS_Vertex & | aV | ||
) | [static] |
static void BOPTools_AlgoTools::UpdateVertex | ( | const IntTools_Curve & | aIC, |
const Standard_Real | aT, | ||
const TopoDS_Vertex & | aV | ||
) | [static] |
static void BOPTools_AlgoTools::UpdateVertex | ( | const TopoDS_Vertex & | aVF, |
const TopoDS_Vertex & | aVN | ||
) | [static] |