mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +03:00
0025614: Provide API access to the new fuctionalities of Boolean Components
I. New features: 1.1. class BOPAlgo_PaveFiller method: void BOPAlgo_PaveFiller::SetArguments(const TopTools_ListOfShape& theLS) has been added to provide the setting argumemts through TopTools_ListOfShape 1.2. class BOPAlgo_Builder method: void BOPAlgo_Builder::SetArguments(const TopTools_ListOfShape& theLS) has been added to provide the setting argumemts through TopTools_ListOfShape 1.3. class BOPAlgo_BOP method: void BOPAlgo_BOP::SetTools(const TopTools_ListOfShape& theLS) has been added to provide the setting tools through TopTools_ListOfShape 1.4. class BRepAlgoAPI_BuilderAlgo construcror: BRepAlgoAPI_BuilderAlgo::BRepAlgoAPI_BuilderAlgo (const BOPAlgo_PaveFiller& aPF) has been added to provide the construction of the object using BOPAlgo_PaveFiller object method: void BRepAlgoAPI_BuilderAlgo::SetArguments (const TopTools_ListOfShape& theLS) has been added to provide the setting argumemts method: const TopTools_ListOfShape& BRepAlgoAPI_BuilderAlgo::Arguments()const has been added to provide access to the argumemts 1.5. class BRepAlgoAPI_BooleanOperation method: void BRepAlgoAPI_BooleanOperation::SetTools (const TopTools_ListOfShape& theLS) has been added to provide the setting tools method: const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::Tools()const has been added to provide access to the tools 1.6. class BRepAlgoAPI_Common construcror: BRepAlgoAPI_Common::BRepAlgoAPI_Common (const BOPAlgo_PaveFiller& aPF) has been added to provide the construction of the object using BOPAlgo_PaveFiller object 1.7. class BRepAlgoAPI_Cut construcror: BRepAlgoAPI_Cut::BRepAlgoAPI_Cut (const BOPAlgo_PaveFiller& aPF) has been added to provide the construction of the object using BOPAlgo_PaveFiller object 1.8. class BRepAlgoAPI_Fuse construcror: BRepAlgoAPI_Fuse::BRepAlgoAPI_Fuse (const BOPAlgo_PaveFiller& aPF) has been added to provide the construction of the object using BOPAlgo_PaveFiller object 1.9. class BRepAlgoAPI_Section construcror: BRepAlgoAPI_Section::BRepAlgoAPI_Section (const BOPAlgo_PaveFiller& aPF) has been added to provide the construction of the object using BOPAlgo_PaveFiller object 1.10. class BOPTest method: void BOPTest::APICommands(Draw_Interpretor& theCommands) has been added to provide tcl commands to launch the algorithms implemented in BRepAlgoAPI package using DRAWEXE application. Commands: >bapibuild r performs General Fuse algorithm. r -the result of the operation >bapibop r type performs Boolean Operation agorithm r -the result of the operation type -type of the operation: 0-common 1-fuse 2-cut 3-cut21 4-section method: void BOPTest::OptionCommands(Draw_Interpretor& theCommands) has been added to provide tcl commands to set/get the options that is necessary for the algorithms implemented in BRepAlgoAPI package. Commands: >boptions dump the state of current options >brunparallel [0/1] 1 -sets the parallel mode of the computations 0 -sets the sequential mode of the computations >bfuzzyvalue value sets the fuzzy value ------------------------------------------------------------------------------------------------------------- II. Changes: II.1. class BRepAlgoAPI_BuilderAlgo methods: const TopTools_ListOfShape& BRepAlgoAPI_BuilderAlgo::Generated (const TopoDS_Shape& aS) const TopTools_ListOfShape& BRepAlgoAPI_BuilderAlgo::Modified (const TopoDS_Shape& aS) Standard_Boolean BRepAlgoAPI_BuilderAlgo::IsDeleted (const TopoDS_Shape& aS) Standard_Boolean BRepAlgoAPI_BuilderAlgo::HasModified() const Standard_Boolean BRepAlgoAPI_BuilderAlgo::HasGenerated() const Standard_Boolean BRepAlgoAPI_BuilderAlgo::HasDeleted() const has been redefined to provide access to the history II.1. class BOPTest method: void BOPTest::APICommands(Draw_Interpretor& theCommands) has been added to provide tcl commands to launch the algorithms implemented in BRepAlgoAPI package using DRAWEXE application. method: void BOPTest::OptionCommands(Draw_Interpretor& theCommands) has been added to provide tcl commands to set/get the options that is necessary for the algorithms implemented in BRepAlgoAPI package. II.2. class BRepAlgoAPI method: void BRepAlgoAPI::DumpOper(const Standard_CString theFilePath, const TopoDS_Shape& theShape1, const TopoDS_Shape& theShape2, const TopoDS_Shape& theResult, BOPAlgo_Operation theOperation, Standard_Boolean isNonValidArgs) has been removed. The contents has been shifted into the file: BRepAlgoAPI_BooleanOperation.cxx II.3. classes QANewModTopOpe_Glue, QANewModTopOpe_Intersection the modifications have been done to provide the consistency with the modifications in BRepAlgoAPI package [I]. ------------------------------------------------------------------------------------------------------------- III. Modified entities: packages: BOPAlgo BRepAlgoAPI BOPTest QANewModTopOpe Test cases for issue CR25614
This commit is contained in:
@@ -49,8 +49,16 @@ is
|
||||
AddTool (me:out;
|
||||
theShape: Shape from TopoDS)
|
||||
---Purpose: Adds Tool argument of the operation
|
||||
is virtual;
|
||||
|
||||
SetTools (me:out;
|
||||
theShapes: ListOfShape from TopTools)
|
||||
is virtual;
|
||||
|
||||
SetTools (me:out;
|
||||
theShapes: ListOfShape from BOPCol)
|
||||
is virtual;
|
||||
|
||||
|
||||
SetOperation(me:out;
|
||||
theOperation: Operation from BOPAlgo);
|
||||
|
||||
|
@@ -43,6 +43,7 @@
|
||||
#include <BOPTools_Set.hxx>
|
||||
#include <BOPTools_SetMapHasher.hxx>
|
||||
#include <NCollection_DataMap.hxx>
|
||||
#include <TopTools_ListIteratorOfListOfShape.hxx>
|
||||
|
||||
typedef NCollection_DataMap
|
||||
<BOPTools_Set,
|
||||
@@ -129,6 +130,36 @@ void BOPAlgo_BOP::AddTool(const TopoDS_Shape& theShape)
|
||||
}
|
||||
}
|
||||
//=======================================================================
|
||||
//function : SetTools
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_BOP::SetTools(const TopTools_ListOfShape& theShapes)
|
||||
{
|
||||
TopTools_ListIteratorOfListOfShape aIt;
|
||||
//
|
||||
myTools.Clear();
|
||||
aIt.Initialize(theShapes);
|
||||
for (; aIt.More(); aIt.Next()) {
|
||||
const TopoDS_Shape& aS = aIt.Value();
|
||||
AddTool(aS);
|
||||
}
|
||||
}
|
||||
//=======================================================================
|
||||
//function : SetTools
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_BOP::SetTools(const BOPCol_ListOfShape& theShapes)
|
||||
{
|
||||
BOPCol_ListIteratorOfListOfShape aIt;
|
||||
//
|
||||
myTools.Clear();
|
||||
aIt.Initialize(theShapes);
|
||||
for (; aIt.More(); aIt.Next()) {
|
||||
const TopoDS_Shape& aS = aIt.Value();
|
||||
AddTool(aS);
|
||||
}
|
||||
}
|
||||
//=======================================================================
|
||||
//function : CheckData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
@@ -59,15 +59,18 @@ is
|
||||
returns PDS from BOPDS;
|
||||
|
||||
AddArgument (me:out;
|
||||
theShape: Shape from TopoDS)
|
||||
is virtual;
|
||||
theShape: Shape from TopoDS)
|
||||
is virtual;
|
||||
|
||||
SetArguments(me:out;
|
||||
theLS:ListOfShape from TopTools);
|
||||
|
||||
SetArguments (me:out;
|
||||
theShapes: ListOfShape from BOPCol)
|
||||
is virtual;
|
||||
theLS: ListOfShape from BOPCol)
|
||||
is virtual;
|
||||
|
||||
Arguments(me)
|
||||
returns ListOfShape from BOPCol;
|
||||
returns ListOfShape from BOPCol;
|
||||
---C++: return const &
|
||||
|
||||
|
||||
|
@@ -26,6 +26,7 @@
|
||||
#include <BRep_Builder.hxx>
|
||||
|
||||
#include <BOPTools_AlgoTools.hxx>
|
||||
#include <TopTools_ListIteratorOfListOfShape.hxx>
|
||||
|
||||
//=======================================================================
|
||||
//function :
|
||||
@@ -106,10 +107,28 @@ void BOPAlgo_Builder::AddArgument(const TopoDS_Shape& theShape)
|
||||
//function : SetArguments
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_Builder::SetArguments(const TopTools_ListOfShape& theShapes)
|
||||
{
|
||||
TopTools_ListIteratorOfListOfShape aIt;
|
||||
//
|
||||
myArguments.Clear();
|
||||
//
|
||||
aIt.Initialize(theShapes);
|
||||
for (; aIt.More(); aIt.Next()) {
|
||||
const TopoDS_Shape& aS = aIt.Value();
|
||||
AddArgument(aS);
|
||||
}
|
||||
}
|
||||
//=======================================================================
|
||||
//function : SetArguments
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_Builder::SetArguments(const BOPCol_ListOfShape& theShapes)
|
||||
{
|
||||
BOPCol_ListIteratorOfListOfShape aIt;
|
||||
//
|
||||
myArguments.Clear();
|
||||
//
|
||||
aIt.Initialize(theShapes);
|
||||
for (; aIt.More(); aIt.Next()) {
|
||||
const TopoDS_Shape& aS = aIt.Value();
|
||||
|
@@ -24,7 +24,9 @@ uses
|
||||
ShapeEnum from TopAbs,
|
||||
Vertex from TopoDS,
|
||||
Face from TopoDS,
|
||||
Edge from TopoDS,
|
||||
Edge from TopoDS,
|
||||
|
||||
ListOfShape from TopTools,
|
||||
|
||||
BaseAllocator from BOPCol,
|
||||
ListOfShape from BOPCol,
|
||||
@@ -81,10 +83,15 @@ is
|
||||
returns PIterator from BOPDS;
|
||||
---C++:return const &
|
||||
|
||||
SetArguments(me:out;
|
||||
theLS:ListOfShape from BOPCol);
|
||||
|
||||
SetArguments(me:out;
|
||||
theLS:ListOfShape from TopTools);
|
||||
|
||||
Arguments(me)
|
||||
returns ListOfShape from BOPCol;
|
||||
---C++: return const &
|
||||
---C++: alias "Standard_EXPORT void SetArguments(const BOPCol_ListOfShape& theLS);"
|
||||
|
||||
Context(me:out)
|
||||
returns Context from IntTools;
|
||||
@@ -127,7 +134,6 @@ is
|
||||
PerformFF(me:out)
|
||||
is virtual protected;
|
||||
|
||||
--modified by NIZNHY-PKV Fri Sep 12 07:05:37 2014f
|
||||
PerformVZ(me:out)
|
||||
is virtual protected;
|
||||
--Purpose: Computes Vertex/Solid interferences
|
||||
@@ -142,7 +148,6 @@ is
|
||||
PerformZZ(me:out)
|
||||
is virtual protected;
|
||||
--Purpose: Computes Solid/Solid interferences
|
||||
--modified by NIZNHY-PKV Fri Sep 12 07:05:45 2014t
|
||||
|
||||
TreatVerticesEE(me:out)
|
||||
is protected;
|
||||
|
@@ -25,6 +25,7 @@
|
||||
#include <IntTools_Context.hxx>
|
||||
#include <BOPDS_DS.hxx>
|
||||
#include <BOPDS_Iterator.hxx>
|
||||
#include <TopTools_ListIteratorOfListOfShape.hxx>
|
||||
|
||||
|
||||
//=======================================================================
|
||||
@@ -112,6 +113,21 @@ void BOPAlgo_PaveFiller::SetSectionAttribute
|
||||
//function : SetArguments
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_PaveFiller::SetArguments(const TopTools_ListOfShape& theLS)
|
||||
{
|
||||
TopTools_ListIteratorOfListOfShape aItLS;
|
||||
//
|
||||
myArguments.Clear();
|
||||
aItLS.Initialize(theLS);
|
||||
for (; aItLS.More(); aItLS.Next()) {
|
||||
const TopoDS_Shape& aS=aItLS.Value();
|
||||
myArguments.Append(aS);
|
||||
}
|
||||
}
|
||||
//=======================================================================
|
||||
//function : SetArguments
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_PaveFiller::SetArguments(const BOPCol_ListOfShape& theLS)
|
||||
{
|
||||
myArguments=theLS;
|
||||
|
Reference in New Issue
Block a user