Open CASCADE Technology 7.8.2.dev
BOPAlgo_ArgumentAnalyzer Class Reference

check the validity of argument(s) for Boolean Operations More...

#include <BOPAlgo_ArgumentAnalyzer.hxx>

Inheritance diagram for BOPAlgo_ArgumentAnalyzer:

Public Member Functions

 BOPAlgo_ArgumentAnalyzer ()
 empty constructor
 
virtual ~BOPAlgo_ArgumentAnalyzer ()
 
void SetShape1 (const TopoDS_Shape &TheShape)
 sets object shape
 
void SetShape2 (const TopoDS_Shape &TheShape)
 sets tool shape
 
const TopoDS_ShapeGetShape1 () const
 returns object shape;
 
const TopoDS_ShapeGetShape2 () const
 returns tool shape
 
BOPAlgo_OperationOperationType ()
 returns ref
 
Standard_BooleanStopOnFirstFaulty ()
 returns ref
 
Standard_BooleanArgumentTypeMode ()
 Returns (modifiable) mode that means checking types of shapes.
 
Standard_BooleanSelfInterMode ()
 Returns (modifiable) mode that means checking of self-intersection of shapes.
 
Standard_BooleanSmallEdgeMode ()
 Returns (modifiable) mode that means checking of small edges.
 
Standard_BooleanRebuildFaceMode ()
 Returns (modifiable) mode that means checking of possibility to split or rebuild faces.
 
Standard_BooleanTangentMode ()
 Returns (modifiable) mode that means checking of tangency between subshapes.
 
Standard_BooleanMergeVertexMode ()
 Returns (modifiable) mode that means checking of problem of merging vertices.
 
Standard_BooleanMergeEdgeMode ()
 Returns (modifiable) mode that means checking of problem of merging edges.
 
Standard_BooleanContinuityMode ()
 Returns (modifiable) mode that means checking of problem of continuity of the shape.
 
Standard_BooleanCurveOnSurfaceMode ()
 Returns (modifiable) mode that means checking of problem of invalid curve on surface.
 
void Perform (const Message_ProgressRange &theRange=Message_ProgressRange())
 performs analysis
 
Standard_Boolean HasFaulty () const
 result of test
 
const BOPAlgo_ListOfCheckResultGetCheckResult () const
 returns a result of test
 
- Public Member Functions inherited from BOPAlgo_Algo
- Public Member Functions inherited from BOPAlgo_Options
 BOPAlgo_Options ()
 Empty constructor.
 
 BOPAlgo_Options (const Handle< NCollection_BaseAllocator > &theAllocator)
 Constructor with allocator.
 
virtual ~BOPAlgo_Options ()
 Destructor.
 
const Handle< NCollection_BaseAllocator > & Allocator () const
 Returns allocator.
 
virtual void Clear ()
 Clears all warnings and errors, and any data cached by the algorithm. User defined options are not cleared.
 
void AddError (const Handle< Message_Alert > &theAlert)
 Adds the alert as error (fail)
 
void AddWarning (const Handle< Message_Alert > &theAlert)
 Adds the alert as warning.
 
Standard_Boolean HasErrors () const
 Returns true if algorithm has failed.
 
Standard_Boolean HasError (const Handle< Standard_Type > &theType) const
 Returns true if algorithm has generated error of specified type.
 
Standard_Boolean HasWarnings () const
 Returns true if algorithm has generated some warning alerts.
 
Standard_Boolean HasWarning (const Handle< Standard_Type > &theType) const
 Returns true if algorithm has generated warning of specified type.
 
const Handle< Message_Report > & GetReport () const
 Returns report collecting all errors and warnings.
 
void DumpErrors (Standard_OStream &theOS) const
 Dumps the error status into the given stream.
 
void DumpWarnings (Standard_OStream &theOS) const
 Dumps the warning statuses into the given stream.
 
void ClearWarnings ()
 Clears the warnings of the algorithm.
 
void SetFuzzyValue (const Standard_Real theFuzz)
 Sets the additional tolerance.
 
Standard_Real FuzzyValue () const
 Returns the additional tolerance.
 
void SetUseOBB (const Standard_Boolean theUseOBB)
 Enables/Disables the usage of OBB.
 
Standard_Boolean UseOBB () const
 Returns the flag defining usage of OBB.
 
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.
 
Standard_Boolean RunParallel () const
 Returns the flag of parallel processing.
 

Protected Member Functions

void Prepare ()
 Prepares data;.
 
void TestTypes ()
 
void TestSelfInterferences (const Message_ProgressRange &theRange)
 
void TestSmallEdge ()
 
void TestRebuildFace ()
 
void TestTangent ()
 
void TestMergeSubShapes (const TopAbs_ShapeEnum theType)
 
void TestMergeVertex ()
 
void TestMergeEdge ()
 
void TestContinuity ()
 
void TestCurveOnSurface ()
 
- Protected Member Functions inherited from BOPAlgo_Algo
 BOPAlgo_Algo ()
 Default constructor.
 
virtual ~BOPAlgo_Algo ()
 
 BOPAlgo_Algo (const Handle< NCollection_BaseAllocator > &theAllocator)
 
virtual void CheckData ()
 Checks input data.
 
virtual void CheckResult ()
 Checks the obtained result.
 
void analyzeProgress (const Standard_Real theWhole, BOPAlgo_PISteps &theSteps) const
 Analyze progress steps of the whole operation.
 
virtual void fillPIConstants (const Standard_Real theWhole, BOPAlgo_PISteps &theSteps) const
 Fills the values for constant operations - the operations having constant relative running time.
 
virtual void fillPISteps (BOPAlgo_PISteps &theSteps) const
 Fills the values for the operations dependent on the inputs. Filled values may not be normalized to represent percentage of total running time. The values should just correlate to each other. E.g. if progress depends on the number of input shapes, the values may look like this: step1 = number_of_input_vertices; step2 = 2 * number_of_input_edges; step3 = 10 * number_of_input_faces. Normalization of these values will be done automatically in analyzeProgress() method.
 
- Protected Member Functions inherited from BOPAlgo_Options
Standard_Boolean UserBreak (const Message_ProgressScope &thePS)
 Adds error to the report if the break signal was caught. Returns true in this case, false otherwise.
 

Additional Inherited Members

- Static Public Member Functions inherited from BOPAlgo_Options
static Standard_Boolean GetParallelMode ()
 Gets the global parallel mode.
 
static void SetParallelMode (const Standard_Boolean theNewMode)
 Sets the global parallel mode.
 
- Protected Attributes inherited from BOPAlgo_Options
Handle< NCollection_BaseAllocatormyAllocator
 Enables/Disables the usage of OBB.
 
Handle< Message_ReportmyReport
 Enables/Disables the usage of OBB.
 
Standard_Boolean myRunParallel
 Enables/Disables the usage of OBB.
 
Standard_Real myFuzzyValue
 Enables/Disables the usage of OBB.
 
Standard_Boolean myUseOBB
 Enables/Disables the usage of OBB.
 

Detailed Description

check the validity of argument(s) for Boolean Operations

Constructor & Destructor Documentation

◆ BOPAlgo_ArgumentAnalyzer()

BOPAlgo_ArgumentAnalyzer::BOPAlgo_ArgumentAnalyzer ( )

empty constructor

◆ ~BOPAlgo_ArgumentAnalyzer()

virtual BOPAlgo_ArgumentAnalyzer::~BOPAlgo_ArgumentAnalyzer ( )
virtual

Member Function Documentation

◆ ArgumentTypeMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::ArgumentTypeMode ( )

Returns (modifiable) mode that means checking types of shapes.

◆ ContinuityMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::ContinuityMode ( )

Returns (modifiable) mode that means checking of problem of continuity of the shape.

◆ CurveOnSurfaceMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::CurveOnSurfaceMode ( )

Returns (modifiable) mode that means checking of problem of invalid curve on surface.

◆ GetCheckResult()

const BOPAlgo_ListOfCheckResult & BOPAlgo_ArgumentAnalyzer::GetCheckResult ( ) const

returns a result of test

◆ GetShape1()

const TopoDS_Shape & BOPAlgo_ArgumentAnalyzer::GetShape1 ( ) const

returns object shape;

◆ GetShape2()

const TopoDS_Shape & BOPAlgo_ArgumentAnalyzer::GetShape2 ( ) const

returns tool shape

◆ HasFaulty()

Standard_Boolean BOPAlgo_ArgumentAnalyzer::HasFaulty ( ) const

result of test

◆ MergeEdgeMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::MergeEdgeMode ( )

Returns (modifiable) mode that means checking of problem of merging edges.

◆ MergeVertexMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::MergeVertexMode ( )

Returns (modifiable) mode that means checking of problem of merging vertices.

◆ OperationType()

BOPAlgo_Operation & BOPAlgo_ArgumentAnalyzer::OperationType ( )

returns ref

◆ Perform()

void BOPAlgo_ArgumentAnalyzer::Perform ( const Message_ProgressRange & theRange = Message_ProgressRange())
virtual

performs analysis

Implements BOPAlgo_Algo.

◆ Prepare()

void BOPAlgo_ArgumentAnalyzer::Prepare ( )
protected

Prepares data;.

◆ RebuildFaceMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::RebuildFaceMode ( )

Returns (modifiable) mode that means checking of possibility to split or rebuild faces.

◆ SelfInterMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::SelfInterMode ( )

Returns (modifiable) mode that means checking of self-intersection of shapes.

◆ SetShape1()

void BOPAlgo_ArgumentAnalyzer::SetShape1 ( const TopoDS_Shape & TheShape)

sets object shape

◆ SetShape2()

void BOPAlgo_ArgumentAnalyzer::SetShape2 ( const TopoDS_Shape & TheShape)

sets tool shape

◆ SmallEdgeMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::SmallEdgeMode ( )

Returns (modifiable) mode that means checking of small edges.

◆ StopOnFirstFaulty()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::StopOnFirstFaulty ( )

returns ref

◆ TangentMode()

Standard_Boolean & BOPAlgo_ArgumentAnalyzer::TangentMode ( )

Returns (modifiable) mode that means checking of tangency between subshapes.

◆ TestContinuity()

void BOPAlgo_ArgumentAnalyzer::TestContinuity ( )
protected

◆ TestCurveOnSurface()

void BOPAlgo_ArgumentAnalyzer::TestCurveOnSurface ( )
protected

◆ TestMergeEdge()

void BOPAlgo_ArgumentAnalyzer::TestMergeEdge ( )
protected

◆ TestMergeSubShapes()

void BOPAlgo_ArgumentAnalyzer::TestMergeSubShapes ( const TopAbs_ShapeEnum theType)
protected

◆ TestMergeVertex()

void BOPAlgo_ArgumentAnalyzer::TestMergeVertex ( )
protected

◆ TestRebuildFace()

void BOPAlgo_ArgumentAnalyzer::TestRebuildFace ( )
protected

◆ TestSelfInterferences()

void BOPAlgo_ArgumentAnalyzer::TestSelfInterferences ( const Message_ProgressRange & theRange)
protected

◆ TestSmallEdge()

void BOPAlgo_ArgumentAnalyzer::TestSmallEdge ( )
protected

◆ TestTangent()

void BOPAlgo_ArgumentAnalyzer::TestTangent ( )
protected

◆ TestTypes()

void BOPAlgo_ArgumentAnalyzer::TestTypes ( )
protected

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