Open CASCADE Technology: BOPAlgo_CheckerSI Class Reference

Open CASCADE Technology 6.8.0

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions | Protected Member Functions | Protected Attributes
BOPAlgo_CheckerSI Class Reference

Checks shape on self-interference. More...

`#include <BOPAlgo_CheckerSI.hxx>`

Inheritance diagram for BOPAlgo_CheckerSI:
[legend]

## Public Member Functions
| BOPAlgo_CheckerSI ()
virtual | ~BOPAlgo_CheckerSI ()
virtual void | Perform ()
void | SetLevelOfCheck (const Standard_Integer theLevel)
| Sets the level of checking shape on self-interference. It defines which interferferences will be checked: 0 - only V/V; 1 - V/V and V/E; 2 - V/V, V/E and E/E; 3 - V/V, V/E, E/E and V/F; 4 - V/V, V/E, E/E, V/F and E/F; 5 - all interferences, default value. More...
void | SetNonDestructive (const Standard_Boolean theFlag)
| Sets the flag <theFlag> that defines the mode of the treatment: the copy of the argument when theFlag is true the argument itself when theFlag is false. More...
Standard_Boolean | NonDestructive () const
| Returns the flag that defines the mode of the treatment: true when the copy of the argument is used false when the argument itself is used. More...
Public Member Functions inherited from BOPAlgo_PaveFiller
| BOPAlgo_PaveFiller ()
virtual | ~BOPAlgo_PaveFiller ()
| BOPAlgo_PaveFiller (const BOPCol_BaseAllocator &theAllocator)
const BOPDS_DS & | DS ()
BOPDS_PDS | PDS ()
const BOPDS_PIterator & | Iterator ()
const BOPCol_ListOfShape & | Arguments () const
void | SetArguments (const BOPCol_ListOfShape &theLS)
Handle< IntTools_Context > | Context ()
void | SetSectionAttribute (const BOPAlgo_SectionAttribute &theSecAttr)
Public Member Functions inherited from BOPAlgo_Algo
Standard_Integer | ErrorStatus () const
Standard_Integer | WarningStatus () const
const BOPCol_BaseAllocator & | Allocator () const
void | SetRunParallel (const Standard_Boolean theFlag)
| Set the flag of parallel processing if <theFlag> is true the parallel processing is switched on if <theFlag> is false the parallel processing is switched off. More...
Standard_Boolean | RunParallel () const
| Returns the flag of parallel processing. More...
void | SetProgressIndicator (const Handle< Message_ProgressIndicator > &theObj)
| Set the Progress Indicator object. More...

## Protected Member Functions
virtual void | Init ()
void | PostTreat ()
| Provides post-treatment actions. More...
virtual void | PrepareCopy ()
void | PostTreatCopy ()
| Provides post-treatment actions for the copy. More...
Protected Member Functions inherited from BOPAlgo_PaveFiller
virtual void | PerformInternal ()
virtual void | Clear ()
void | Prepare ()
virtual void | PerformVV ()
virtual void | PerformVE ()
virtual void | PerformVF ()
virtual void | PerformEE ()
virtual void | PerformEF ()
virtual void | PerformFF ()
virtual void | PerformVZ ()
virtual void | PerformEZ ()
virtual void | PerformFZ ()
virtual void | PerformZZ ()
void | TreatVerticesEE ()
void | MakeSplitEdges ()
void | MakeBlocks ()
void | MakePCurves ()
void | ProcessDE ()
void | FillShrunkData (Handle< BOPDS_PaveBlock > &thePB)
void | FillShrunkData (const TopAbs_ShapeEnum theType1, const TopAbs_ShapeEnum theType2)
Standard_Integer | PerformVerticesEE (BOPDS_IndexedDataMapOfShapeCoupleOfPaveBlocks &theMVCPB, BOPCol_BaseAllocator &theAllocator)
Standard_Integer | PerformVerticesEF (BOPDS_IndexedDataMapOfShapeCoupleOfPaveBlocks &theMVCPB, BOPCol_BaseAllocator &theAllocator)
Standard_Boolean | CheckFacePaves (const TopoDS_Vertex &theVnew, const BOPCol_MapOfInteger &theMIF)
Standard_Boolean | IsExistingVertex (const gp_Pnt &theP, const Standard_Real theTol, const BOPCol_MapOfInteger &theMVOn) const
void | PutPavesOnCurve (const BOPCol_MapOfInteger &theMVOn, const Standard_Real theTolR3D, BOPDS_Curve &theNC, const Standard_Integer nF1, const Standard_Integer nF2, const BOPCol_MapOfInteger &theMI, const BOPCol_MapOfInteger &theMVEF, BOPCol_DataMapOfIntegerReal &theMVTol)
| Checks and puts paves from <theMVOn> on the curve <theNC>. More...
Standard_Boolean | ExtendedTolerance (const Standard_Integer nV, const BOPCol_MapOfInteger &aMI, Standard_Real &aTolVExt, const Standard_Integer aType=0)
| Depending on the parameter aType it checks whether the vertex nV was created in EE or EF intersections. If so, it increases aTolVExt from tolerance value of vertex to the max distance from vertex nV to the ends of the range of common part. Possible values of aType: 1 - checks only EE; 2 - checks only EF; other - checks both types of intersections. More...
void | PutBoundPaveOnCurve (const TopoDS_Face &theF1, const TopoDS_Face &theF2, const Standard_Real theTolR3D, BOPDS_Curve &theNC, BOPCol_MapOfInteger &theMVB)
Standard_Boolean | IsExistingPaveBlock (const Handle< BOPDS_PaveBlock > &thePB, const BOPDS_Curve &theNC, const Standard_Real theTolR3D, const BOPDS_IndexedMapOfPaveBlock &theMPB, Handle< BOPDS_PaveBlock > &thePBOut)
Standard_Boolean | IsExistingPaveBlock (const Handle< BOPDS_PaveBlock > &thePB, const BOPDS_Curve &theNC, const Standard_Real theTolR3D, const BOPCol_ListOfInteger &theLSE)
Standard_Integer | PostTreatFF (BOPDS_IndexedDataMapOfShapeCoupleOfPaveBlocks &theMSCPB, BOPCol_DataMapOfShapeInteger &theMVI, BOPDS_DataMapOfPaveBlockListOfPaveBlock &theDMExEdges, BOPCol_DataMapOfIntegerInteger &theDMI, BOPCol_BaseAllocator &theAllocator)
| Treatment of section edges. More...
void | FindPaveBlocks (const Standard_Integer theV, const Standard_Integer theF, BOPDS_ListOfPaveBlock &theLPB)
void | FillPaves (const Standard_Integer theV, const Standard_Integer theE, const Standard_Integer theF, const BOPDS_ListOfPaveBlock &theLPB, const Handle< BOPDS_PaveBlock > &thePB)
void | MakeSplitEdge (const Standard_Integer theV, const Standard_Integer theF)
void | GetEFPnts (const Standard_Integer nF1, const Standard_Integer nF2, IntSurf_ListOfPntOn2S &aListOfPnts)
void | PutEFPavesOnCurve (BOPDS_Curve &theNC, const BOPCol_MapOfInteger &theMI, const BOPCol_MapOfInteger &theMVEF, BOPCol_DataMapOfIntegerReal &theMVTol)
| Checks and puts paves created in EF intersections on the curve <theNC>. More...
void | PutStickPavesOnCurve (const TopoDS_Face &aF1, const TopoDS_Face &aF2, const BOPCol_MapOfInteger &theMI, BOPDS_Curve &theNC, const BOPCol_MapOfInteger &theMVStick, BOPCol_DataMapOfIntegerReal &theMVTol)
| Puts stick paves on the curve <theNC> More...
void | GetStickVertices (const Standard_Integer nF1, const Standard_Integer nF2, BOPCol_MapOfInteger &theMVStick, BOPCol_MapOfInteger &theMVEF, BOPCol_MapOfInteger &theMI)
| Collects indices of vertices created in all intersections between two faces (<nF1> and <nF2>) to the map <theMVStick>. Also, it collects indices of EF vertices to the <theMVEF> map and indices of all subshapes of these two faces to the <theMI> map. More...
void | GetFullShapeMap (const Standard_Integer nF, BOPCol_MapOfInteger &theMI)
| Collects index nF and indices of all subshapes of the shape with index <nF> to the map <theMI>. More...
void | RemoveUsedVertices (BOPDS_Curve &theNC, BOPCol_MapOfInteger &theMV)
| Removes indices of vertices that are already on the curve <theNC> from the map <theMV>. It is used in PutEFPavesOnCurve and PutStickPavesOnCurve methods. More...
void | PutPaveOnCurve (const Standard_Integer nV, const Standard_Real theTolR3D, BOPDS_Curve &theNC, const BOPCol_MapOfInteger &theMI, BOPCol_DataMapOfIntegerReal &theMVTol, const Standard_Integer aType=0)
| Puts the pave nV on the curve theNC. Parameter aType defines whether to check the pave with extended tolerance: 0 - do not perform the check; other - perform the check (aType goes to ExtendedTolerance). More...
void | ProcessExistingPaveBlocks (const Standard_Integer theInt, const BOPDS_IndexedMapOfPaveBlock &theMPBOnIn, BOPDS_IndexedDataMapOfShapeCoupleOfPaveBlocks &theMSCPB, BOPCol_DataMapOfShapeInteger &theMVI, const BOPCol_MapOfInteger &theMVB, BOPDS_MapOfPaveBlock &theMPB)
| Adds the existing edges from the map <theMPBOnIn> which interfere with the vertices from <theMVB> map to the post treatment of section edges. More...
void | UpdateExistingPaveBlocks (const Handle< BOPDS_PaveBlock > &thePB, BOPDS_ListOfPaveBlock &theLPB, const Standard_Integer nF1, const Standard_Integer nF2)
| Replaces existing pave block <thePB> with new pave blocks <theLPB>. The list <theLPB> contains images of <thePB> which were created in the post treatment of section edges. More...
void | TreatNewVertices (const BOPCol_IndexedDataMapOfShapeInteger &theMVI, BOPCol_IndexedDataMapOfShapeListOfShape &theImages)
| Treatment of vertices that were created in EE intersections. More...
void | PutClosingPaveOnCurve (BOPDS_Curve &aNC)
| Put paves on the curve <aBC> in case when <aBC> is closed 3D-curve. More...
void | PreparePostTreatFF (const Standard_Integer aInt, const Handle< BOPDS_PaveBlock > &aPB, BOPDS_IndexedDataMapOfShapeCoupleOfPaveBlocks &aMSCPB, BOPCol_DataMapOfShapeInteger &aMVI, BOPDS_VectorOfCurve &aVC)
| Keeps data for post treatment. More...
void | RefineFaceInfoOn ()
| Refines the state On for the all faces having state information. More...
void | UpdateFaceInfo (BOPDS_DataMapOfPaveBlockListOfPaveBlock &theDME)
| Updates the information about faces. More...
void | ForceInterfVE (const Standard_Integer nV, Handle< BOPDS_PaveBlock > &aPB, BOPDS_MapOfPaveBlock &aMPB)
| Updates tolerance of vertex with index <nV> to make it interfere with edge. More...
Standard_Boolean | ForceInterfVF (const Standard_Integer nV, const Standard_Integer nF)
| Updates tolerance of vertex with index <nV> to make it interfere with face with index <nF> More...
Standard_Boolean | CheckPlanes (const Standard_Integer nF1, const Standard_Integer nF2) const
| Checks if there are any common or intersecting sub shapes between two planar faces. More...
Standard_Integer | SplitEdge (const Standard_Integer nE, const Standard_Integer nV1, const Standard_Real aT1, const Standard_Integer nV2, const Standard_Real aT2)
| Creates new edge from the edge nE with vertices nV1 and nV2 and returns the index of that new edge in the DS. More...
void | UpdatePaveBlocks (const BOPCol_DataMapOfIntegerInteger &theDMI)
| Updates pave blocks which have the paves with indices contained in the map <theDMI>. More...
Protected Member Functions inherited from BOPAlgo_Algo
| BOPAlgo_Algo ()
virtual | ~BOPAlgo_Algo ()
| BOPAlgo_Algo (const BOPCol_BaseAllocator &theAllocator)
virtual void | CheckData ()
virtual void | CheckResult ()
void | UserBreak () const
| Breaks the execution if the break signal is indicated by myProgressIndicator. More...

## Protected Attributes
Standard_Integer | myLevelOfCheck
Standard_Boolean | myNonDestructive
BOPCol_DataMapOfShapeShape | myNewOldMap
Protected Attributes inherited from BOPAlgo_PaveFiller
BOPCol_ListOfShape | myArguments
BOPDS_PDS | myDS
BOPDS_PIterator | myIterator
Handle< IntTools_Context > | myContext
BOPAlgo_SectionAttribute | mySectionAttribute
Protected Attributes inherited from BOPAlgo_Algo
BOPCol_BaseAllocator | myAllocator
Standard_Integer | myErrorStatus
Standard_Integer | myWarningStatus
Standard_Boolean | myRunParallel
Handle< Message_ProgressIndicator > | myProgressIndicator

## Additional Inherited Members
Static Public Member Functions inherited from BOPAlgo_Algo
static Standard_Boolean | GetParallelMode ()
static void | SetParallelMode (const Standard_Boolean theNewMode)
Static Protected Member Functions inherited from BOPAlgo_PaveFiller
static Standard_Boolean | CheckFacePaves (const Standard_Integer theN, const BOPCol_MapOfInteger &theMIFOn, const BOPCol_MapOfInteger &theMIFIn)

## Detailed Description

Checks shape on self-interference.

## Constructor & Destructor Documentation

BOPAlgo_CheckerSI::BOPAlgo_CheckerSI | ( |  | ) |

virtual BOPAlgo_CheckerSI::~BOPAlgo_CheckerSI | ( |  | ) |
| virtual

## Member Function Documentation

virtual void BOPAlgo_CheckerSI::Init | ( |  | ) |
| protectedvirtual

Reimplemented from BOPAlgo_PaveFiller.

Standard_Boolean BOPAlgo_CheckerSI::NonDestructive | ( |  | ) | const

Returns the flag that defines the mode of the treatment: true when the copy of the argument is used false when the argument itself is used.

virtual void BOPAlgo_CheckerSI::Perform | ( |  | ) |
| virtual

Reimplemented from BOPAlgo_PaveFiller.

void BOPAlgo_CheckerSI::PostTreat | ( |  | ) |
| protected

Provides post-treatment actions.

void BOPAlgo_CheckerSI::PostTreatCopy | ( |  | ) |
| protected

Provides post-treatment actions for the copy.

virtual void BOPAlgo_CheckerSI::PrepareCopy | ( |  | ) |
| protectedvirtual

void BOPAlgo_CheckerSI::SetLevelOfCheck | ( | const Standard_Integer | theLevel | ) |

Sets the level of checking shape on self-interference. It defines which interferferences will be checked: 0 - only V/V; 1 - V/V and V/E; 2 - V/V, V/E and E/E; 3 - V/V, V/E, E/E and V/F; 4 - V/V, V/E, E/E, V/F and E/F; 5 - all interferences, default value.

void BOPAlgo_CheckerSI::SetNonDestructive | ( | const Standard_Boolean | theFlag | ) |

Sets the flag <theFlag> that defines the mode of the treatment: the copy of the argument when theFlag is true the argument itself when theFlag is false.

## Field Documentation

Standard_Integer BOPAlgo_CheckerSI::myLevelOfCheck
| protected

BOPCol_DataMapOfShapeShape BOPAlgo_CheckerSI::myNewOldMap
| protected

Standard_Boolean BOPAlgo_CheckerSI::myNonDestructive
| protected

The documentation for this class was generated from the following file:

- BOPAlgo_CheckerSI.hxx