#include <BOPTools_PaveFiller.hxx>
Inheritance diagram for BOPTools_PaveFiller:
Public Member Functions | |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
Standard_EXPORT | BOPTools_PaveFiller () |
Empty Contructor . | |
Standard_EXPORT | BOPTools_PaveFiller (const BOPTools_InterferencePool &aIP) |
Constructor . | |
Standard_EXPORT | BOPTools_PaveFiller (const BOPTools_InterferencePool &theIP, const BOPTools_SSIntersectionAttribute &theSectionAttribute) |
Constructor . | |
virtual Standard_EXPORT void | Destroy () |
Destructor . | |
virtual Standard_EXPORT | ~BOPTools_PaveFiller () |
virtual Standard_EXPORT void | Perform () |
Fills the DS . | |
virtual Standard_EXPORT void | PartialPerform (const TColStd_SetOfInteger &anObjSubSet, const TColStd_SetOfInteger &aToolSubSet) |
virtual Standard_EXPORT void | ToCompletePerform () |
Standard_EXPORT const IntTools_Context & | Context () const |
Selector . | |
Standard_EXPORT IntTools_Context & | ChangeContext () |
Selector . | |
Standard_EXPORT void | SetInterferencePool (const BOPTools_InterferencePool &aPool) |
Selector . | |
Standard_EXPORT Standard_Boolean | IsDone () const |
Selector . | |
Standard_EXPORT const BOPTools_PavePool & | PavePool () const |
Selector . | |
Standard_EXPORT BOPTools_PavePool & | ChangePavePool () |
Selector . | |
Standard_EXPORT const BOPTools_CommonBlockPool & | CommonBlockPool () const |
Selector . | |
Standard_EXPORT BOPTools_CommonBlockPool & | ChangeCommonBlockPool () |
Selector . | |
Standard_EXPORT const BOPTools_SplitShapesPool & | SplitShapesPool () const |
Selector . | |
Standard_EXPORT BOPTools_SplitShapesPool & | ChangeSplitShapesPool () |
Selector . | |
Standard_EXPORT BooleanOperations_PShapesDataStructure | DS () |
Selector . | |
Standard_EXPORT BOPTools_PInterferencePool | InterfPool () |
Selector . | |
Standard_EXPORT const BOPTools_IteratorOfCoupleOfShape & | IteratorOfCoupleOfShape () const |
Selector . | |
Standard_EXPORT const BOPTools_SSIntersectionAttribute & | SectionAttribute () const |
Selector . | |
Standard_EXPORT void | SetSectionAttribute (const BOPTools_SSIntersectionAttribute &anAtt) |
Selector . | |
Standard_EXPORT Standard_Integer | SplitsInFace (const Standard_Integer aBid, const Standard_Integer nF1, const Standard_Integer nF2, TColStd_ListOfInteger &aLs) |
For the face <nf1> get all splits that are IN-2D to the face <nf2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsInFace (const Standard_Integer nE1, const Standard_Integer nF2, TColStd_ListOfInteger &aLs) |
For the edge <ne1> get all splits that are IN-2D to the face <nf1>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsOnEdge (const Standard_Integer nE1, const Standard_Integer nE2, TColStd_ListOfInteger &aLs) |
For the edge <ne1> get all splits that are ON-3D to the edge <ne2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsOnFace (const Standard_Integer nE1, const Standard_Integer nF2, TColStd_ListOfInteger &aLs) |
For the edge <ne1> get all splits that are ON-3D to the face <nf2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsOnFace (const Standard_Integer aBid, const Standard_Integer nF1, const Standard_Integer nF2, TColStd_ListOfInteger &aLs) |
For the face <nf1> get all splits that are ON-3D to the face <nf2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsInFace (const Standard_Integer aBid, const Standard_Integer nF1, const Standard_Integer nF2, BOPTools_ListOfPaveBlock &aLs) |
For the face <nf1> get all PaveBlocks that are IN-2D to the face <nf2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsInFace (const Standard_Integer nE1, const Standard_Integer nF2, BOPTools_ListOfPaveBlock &aLs) |
For the edge <ne1> get all PaveBlocks that are IN-2D to the face <nf1>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsOnEdge (const Standard_Integer nE1, const Standard_Integer nE2, BOPTools_ListOfPaveBlock &aLs) |
For the edge <ne1> get all PaveBlocks that are ON-3D to the edge <ne2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsOnFace (const Standard_Integer nE1, const Standard_Integer nF2, BOPTools_ListOfPaveBlock &aLs) |
For the edge <ne1> get all PaveBlocks that are ON-3D to the face <nf2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | SplitsOnFace (const Standard_Integer aBid, const Standard_Integer nF1, const Standard_Integer nF2, BOPTools_ListOfPaveBlock &aLs) |
For the face <nf1> get all PaveBlocks that are ON-3D to the face <nf2>; The result is in <als> Returns 0 if OK; . | |
Standard_EXPORT Standard_Integer | FindSDVertex (const Standard_Integer nV) const |
Find for the vertex <nv> SD-vertex (if possible) and return its DS-index. Otherwise it returns 0. . | |
Standard_EXPORT void | PrepareSetForFace (const Standard_Integer nF1, const Standard_Integer nF2, BOPTools_PaveSet &aPaveSet) |
For couple of faces <nf1>, <nf2> prepare set of all paves of all edges <apaveset> . | |
Protected Member Functions | |
virtual Standard_EXPORT void | PerformVV () |
Computes Vertex/Vertex interferences . | |
virtual Standard_EXPORT void | PerformVE () |
Computes Vertex/Edge interferences . | |
virtual Standard_EXPORT void | PerformVF () |
Computes Vertex/Face interferences . | |
virtual Standard_EXPORT void | PerformEE () |
Computes Edge/Edge interferences . | |
virtual Standard_EXPORT void | PerformEF () |
Computes Edge/Face interferences . | |
virtual Standard_EXPORT void | PerformFF () |
Computes Face/Face interferences . | |
Standard_EXPORT void | SortTypes (Standard_Integer &anInd1, Standard_Integer &anInd2) const |
Sorts the types of shapes with DS-indices <anind1> and <anind2> in increasing order of types of the shapes . | |
Standard_EXPORT void | PerformNewVertices () |
Standard_EXPORT Standard_Boolean | IsSuccesstorsComputed (const Standard_Integer iF1, const Standard_Integer iF2) const |
virtual Standard_EXPORT void | PrepareEdges () |
Prepare end paves for each edge . | |
virtual Standard_EXPORT void | PreparePaveBlocks (const TopAbs_ShapeEnum aType1, const TopAbs_ShapeEnum aType2) |
Prepare PaveBlocks for each edge (EE-interferences) . | |
virtual Standard_EXPORT void | PreparePaveBlocks (const Standard_Integer anE) |
Prepare PaveBlocks for given edge (EE-interferences) . | |
Standard_EXPORT void | RefinePavePool () |
Refines myPavePool taking into account new Paves obtained from EE algo . | |
Standard_EXPORT void | MakeSplitEdges () |
Makes split edges from source edges . | |
Standard_EXPORT void | DoSDEdges () |
Update Lists of PaveBlocks with info about indices of split edges that are Same Domain with other splits or faces . | |
Standard_EXPORT void | CorrectShrunkRanges (const Standard_Integer aSide, const BOPTools_Pave &aPave, IntTools_ShrunkRange &aSR) |
Update Shrunk Range <asr> for Pave <apave> . | |
Standard_EXPORT Standard_Integer | SplitIndex (const BOPTools_PaveBlock &aPB) |
Returns the Index of Split edge for the PaveBlock <apb> in DS. If the PaveBlock is not found, returns 0; . | |
Standard_EXPORT Standard_Boolean | IsBlocksCoinside (const BOPTools_PaveBlock &aPB1, const BOPTools_PaveBlock &aPB2) const |
Returns TRUE if the two PaveBlocks have vertices that touch each other in terms of Tolerances of the vertices . | |
Standard_EXPORT void | MakeBlocks () |
Make Pave Blocks for intersection curves . | |
Standard_EXPORT void | MakeAloneVertices () |
Make vertices that are place of intersection between faces . | |
Standard_EXPORT void | PutPaveOnCurve (const BOPTools_PaveSet &aPaveSet, const Standard_Real aTolR3D, BOPTools_Curve &aBCurve) |
Among Paves from <apaveset> find ones that belong to intersection curve <abcurve> with 3D-tolerance value <atolr3d> . | |
Standard_EXPORT void | PutPaveOnCurve (const BOPTools_Pave &aPave, const Standard_Real aTolR3D, BOPTools_Curve &aBCurve) |
Try to put Pave <apave> on intersection curve <abcurve> with 3D-tolerance value <atolr3d> . | |
Standard_EXPORT void | PutPavesOnCurves () |
Standard_EXPORT void | MakeSectionEdges () |
For all inrefered faces make section edges from intersection curves and corresp. Paves on them . | |
Standard_EXPORT void | PutBoundPaveOnCurve (BOPTools_Curve &aBC, BOPTools_SSInterference &aFF) |
Try to put own bounds of the curve on the curve <abc> . | |
Standard_EXPORT void | PutBoundPaveOnCurve (const gp_Pnt &aP, const Standard_Real aT, BOPTools_Curve &aBC, BOPTools_SSInterference &aFF) |
Try to put 3D-point <ap> (parameter aT) on the curve <abc> . | |
Standard_EXPORT void | PutBoundPaveOnCurveSpec (BOPTools_Curve &aBC, BOPTools_SSInterference &aFF) |
Try to put own bounds of the curve on the curve <abc> . | |
Standard_EXPORT void | PutBoundPaveOnCurveSpec (const gp_Pnt &aP, const Standard_Real aT, BOPTools_Curve &aBC, BOPTools_SSInterference &aFF) |
Try to put 3D-point <ap> (parameter aT) on the curve <abc> . | |
Standard_EXPORT Standard_Boolean | FindPave (const gp_Pnt &aP, const Standard_Real aTpV, const BOPTools_PaveSet &aPS, BOPTools_Pave &aPV) |
Returns TRUE if 3D-point <ap> coinsides with some Pave from <aps> (with 3D-tolerance value <atpv>); In TRUE case <apv> will contain the Pave . . | |
Standard_EXPORT Standard_Boolean | CheckCoincidence (const BOPTools_PaveBlock &aPB, const BOPTools_SSInterference &aFF) |
Returns TRUE if PaveBlock <apb> lays on the faces from FF-interference <aff> . | |
Standard_EXPORT Standard_Integer | CheckIntermediatePoint (const BOPTools_PaveBlock &aPB, const BOPTools_PaveBlock &aPBR, const Standard_Real aTol) |
Returns 0 if some arbitrary intermediate point from PaveBlock <apb> lays on the PaveBlock <apbr> (with 3D-tolerance value <atol>) . | |
Standard_EXPORT Standard_Integer | CheckFacePaves (const TopoDS_Vertex &aV, const Standard_Integer nF) |
Internal usage . | |
Standard_EXPORT void | StickVertices (const Standard_Integer nF1, const Standard_Integer nF2, TColStd_IndexedMapOfInteger &aMV) |
Internal usage . | |
Standard_EXPORT Standard_Integer | ExpectedPoolLength () const |
Returns the value of expected length of array of interferences . | |
Standard_EXPORT Standard_Boolean | ExtendedTolerance (const Standard_Integer nV, Standard_Real &aTolExt) |
Protected Attributes | |
BOPTools_PInterferencePool | myIntrPool |
BooleanOperations_PShapesDataStructure | myDS |
BOPTools_PavePool | myPavePool |
BOPTools_PavePool | myPavePoolNew |
BOPTools_CommonBlockPool | myCommonBlockPool |
BOPTools_SplitShapesPool | mySplitShapesPool |
BOPTools_SSIntersectionAttribute | mySectionAttribute |
Standard_Integer | myNbSources |
Standard_Integer | myNbEdges |
Standard_Boolean | myIsDone |
BOPTools_IteratorOfCoupleOfShape | myDSIt |
IntTools_Context | myContext |
Private Member Functions | |
Standard_EXPORT void | RestrictCurveIn2d (const Standard_Integer nE, const Standard_Integer nF1, const Standard_Integer nF2, const Standard_Real theTolerance, BOPTools_Curve &theBC) |
Standard_EXPORT void | RecomputeCommonBlocks (const Standard_Integer nE) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reimplemented in BOPTools_Checker. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
|
|
|
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
|
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
Reimplemented in BOPTools_Checker. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|