1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176
|
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _BOPAlgo_ArgumentAnalyzer_HeaderFile
#define _BOPAlgo_ArgumentAnalyzer_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>
#include <TopoDS_Shape.hxx>
#include <Standard_Boolean.hxx>
#include <BOPAlgo_Operation.hxx>
#include <BOPAlgo_ListOfCheckResult.hxx>
#include <Standard_Real.hxx>
#include <BOPCol_DataMapOfShapeReal.hxx>
#include <BOPAlgo_Algo.hxx>
#include <TopAbs_ShapeEnum.hxx>
class TopoDS_Shape;
//! check the validity of argument(s) for Boolean Operations
class BOPAlgo_ArgumentAnalyzer : public BOPAlgo_Algo
{
public:
DEFINE_STANDARD_ALLOC
//! empty constructor
Standard_EXPORT BOPAlgo_ArgumentAnalyzer();
Standard_EXPORT virtual ~BOPAlgo_ArgumentAnalyzer();
//! sets object shape
Standard_EXPORT void SetShape1 (const TopoDS_Shape& TheShape) ;
//! sets tool shape
Standard_EXPORT void SetShape2 (const TopoDS_Shape& TheShape) ;
//! returns object shape;
Standard_EXPORT const TopoDS_Shape& GetShape1() const;
//! returns tool shape
Standard_EXPORT const TopoDS_Shape& GetShape2() const;
//! returns ref
Standard_EXPORT BOPAlgo_Operation& OperationType() ;
//! returns ref
Standard_EXPORT Standard_Boolean& StopOnFirstFaulty() ;
//! Returns (modifiable) mode
//! that means checking types of shapes.
Standard_Boolean& ArgumentTypeMode() ;
//! Returns (modifiable) mode that means
//! checking of self-intersection of shapes.
Standard_Boolean& SelfInterMode() ;
//! Returns (modifiable) mode that means
//! checking of small edges.
Standard_Boolean& SmallEdgeMode() ;
//! Returns (modifiable) mode that means
//! checking of possibility to split or rebuild faces.
Standard_Boolean& RebuildFaceMode() ;
//! Returns (modifiable) mode that means
//! checking of tangency between subshapes.
Standard_Boolean& TangentMode() ;
//! Returns (modifiable) mode that means
//! checking of problem of merging vertices.
Standard_Boolean& MergeVertexMode() ;
//! Returns (modifiable) mode that means
//! checking of problem of merging edges.
Standard_Boolean& MergeEdgeMode() ;
//! Returns (modifiable) mode that means
//! checking of problem of continuity of the shape.
Standard_Boolean& ContinuityMode() ;
//! Returns (modifiable) mode that means
//! checking of problem of invalid curve on surface.
Standard_Boolean& CurveOnSurfaceMode() ;
//! performs analysis
Standard_EXPORT void Perform() ;
//! result of test
Standard_EXPORT Standard_Boolean HasFaulty() const;
//! returns a result of test
Standard_EXPORT const BOPAlgo_ListOfCheckResult& GetCheckResult() const;
//! Sets the additional tolerance
void SetFuzzyValue (const Standard_Real theFuzz) ;
//! Returns the additional tolerance
Standard_Real FuzzyValue() const;
protected:
//! Prepares data;
Standard_EXPORT void Prepare() ;
Standard_EXPORT void TestTypes() ;
Standard_EXPORT void TestSelfInterferences() ;
Standard_EXPORT void TestSmallEdge() ;
Standard_EXPORT void TestRebuildFace() ;
Standard_EXPORT void TestTangent() ;
Standard_EXPORT void TestMergeSubShapes (const TopAbs_ShapeEnum theType) ;
Standard_EXPORT void TestMergeVertex() ;
Standard_EXPORT void TestMergeEdge() ;
Standard_EXPORT void TestContinuity() ;
Standard_EXPORT void TestCurveOnSurface() ;
//! Updates the shapes tolerance values.
Standard_EXPORT void UpdateTolerances() ;
//! Reverts the tolerance values for all entities to default values.
Standard_EXPORT void SetDefaultTolerances() ;
private:
TopoDS_Shape myShape1;
TopoDS_Shape myShape2;
Standard_Boolean myStopOnFirst;
BOPAlgo_Operation myOperation;
Standard_Boolean myArgumentTypeMode;
Standard_Boolean mySelfInterMode;
Standard_Boolean mySmallEdgeMode;
Standard_Boolean myRebuildFaceMode;
Standard_Boolean myTangentMode;
Standard_Boolean myMergeVertexMode;
Standard_Boolean myMergeEdgeMode;
Standard_Boolean myContinuityMode;
Standard_Boolean myCurveOnSurfaceMode;
Standard_Boolean myEmpty1;
Standard_Boolean myEmpty2;
BOPAlgo_ListOfCheckResult myResult;
Standard_Real myFuzzyValue;
BOPCol_DataMapOfShapeReal myToleranceMap;
};
#include <BOPAlgo_ArgumentAnalyzer.lxx>
#endif // _BOPAlgo_ArgumentAnalyzer_HeaderFile
|