0026619: Tolerances of operands are modified using bop
[occt.git] / src / BRepAlgoAPI / BRepAlgoAPI_BuilderAlgo.cxx
index 97a8257..da28188 100644 (file)
@@ -28,7 +28,8 @@ BRepAlgoAPI_BuilderAlgo::BRepAlgoAPI_BuilderAlgo()
   myEntryType(1),
   myDSFiller(NULL),
   myBuilder(NULL),
-  myFuzzyValue(0.)
+  myFuzzyValue(0.),
+  myNonDestructive(Standard_False)
 {}
 //=======================================================================
 // function: 
@@ -40,7 +41,8 @@ BRepAlgoAPI_BuilderAlgo::BRepAlgoAPI_BuilderAlgo
   BRepAlgoAPI_Algo(),
   myEntryType(0),
   myBuilder(NULL),
-  myFuzzyValue(0.)
+  myFuzzyValue(0.),
+  myNonDestructive(Standard_False)
 {
   BOPAlgo_PaveFiller* pPF=(BOPAlgo_PaveFiller*)&aPF;
   myDSFiller=pPF;
@@ -70,6 +72,22 @@ Standard_Real BRepAlgoAPI_BuilderAlgo::FuzzyValue() const
   return myFuzzyValue;
 }
 //=======================================================================
+//function : SetNonDestructive
+//purpose  : 
+//=======================================================================
+void BRepAlgoAPI_BuilderAlgo::SetNonDestructive(const Standard_Boolean theFlag)
+{
+  myNonDestructive = theFlag;
+}
+//=======================================================================
+//function : NonDestructive
+//purpose  : 
+//=======================================================================
+Standard_Boolean BRepAlgoAPI_BuilderAlgo::NonDestructive() const
+{
+  return myNonDestructive;
+}
+//=======================================================================
 //function : Clear
 //purpose  : 
 //=======================================================================
@@ -125,6 +143,7 @@ void BRepAlgoAPI_BuilderAlgo::Build()
     myDSFiller->SetRunParallel(myRunParallel);
     myDSFiller->SetProgressIndicator(myProgressIndicator);
     myDSFiller->SetFuzzyValue(myFuzzyValue);
+    myDSFiller->SetNonDestructive(myNonDestructive);
     //
     myDSFiller->Perform();
     iErr=myDSFiller->ErrorStatus();