mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-04 13:13:25 +03:00
0021264: Modeling Algorithms - Progress indicator for Boolean operations
Update BOP commands to use progress indicator Deleted wrong usage of progress indicator from bop operations Added UserBreak() method to break execution boolean operation if progress indicator is used Added method AnalyzeProgress() to calculate steps of progress indicator Introduce BOPAlgo_ParallelAlgo which has myRange as a field to be used in parallel vector. Provide suitable way of keeping the progress steps of operations. Give meaningful names to progress scopes. Propagate progress indicator into deeper methods of BOA. Add progress indicator to BOPAlgo_BuilderFace and BOPAlgo_WireSplitter, BOPAlgo_BuilderSolid and BOPAlgo_ShellSplitter
This commit is contained in:
@@ -391,7 +391,7 @@ Handle(TopOpeBRepBuild_HBuilder) BRepFilletAPI_MakeChamfer::Builder()const
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
void BRepFilletAPI_MakeChamfer::Build()
|
||||
void BRepFilletAPI_MakeChamfer::Build(const Message_ProgressRange& /*theRange*/)
|
||||
{
|
||||
myBuilder.Compute();
|
||||
if (myBuilder.IsDone()){
|
||||
|
@@ -250,7 +250,7 @@ public:
|
||||
//! intersection of 4 or more edges of the shape, or
|
||||
//! - the intersection of the chamfer with a face which
|
||||
//! limits the contour is not fully contained in this face.
|
||||
Standard_EXPORT virtual void Build() Standard_OVERRIDE;
|
||||
Standard_EXPORT virtual void Build(const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
|
||||
|
||||
//! Reinitializes this algorithm, thus canceling the effects of the Build function.
|
||||
//! This function allows modifications to be made to the
|
||||
|
@@ -528,7 +528,7 @@ Handle(TopOpeBRepBuild_HBuilder) BRepFilletAPI_MakeFillet::Builder()const
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
void BRepFilletAPI_MakeFillet::Build()
|
||||
void BRepFilletAPI_MakeFillet::Build(const Message_ProgressRange& /*theRange*/)
|
||||
{
|
||||
myBuilder.Compute();
|
||||
if(myBuilder.IsDone()) {
|
||||
|
@@ -293,7 +293,7 @@ public:
|
||||
//! intersection of 4 or more edges of the shape, or
|
||||
//! - the intersection of the fillet with a face which limits
|
||||
//! the contour is not fully contained in this face.
|
||||
Standard_EXPORT virtual void Build() Standard_OVERRIDE;
|
||||
Standard_EXPORT virtual void Build(const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
|
||||
|
||||
//! Reinitializes this algorithm, thus canceling the effects of the Build function.
|
||||
//! This function allows modifications to be made to the
|
||||
|
@@ -155,7 +155,7 @@ const TopoDS_Edge& BRepFilletAPI_MakeFillet2d::BasisEdge(const TopoDS_Edge& E) c
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
void BRepFilletAPI_MakeFillet2d::Build()
|
||||
void BRepFilletAPI_MakeFillet2d::Build(const Message_ProgressRange& /*theRange*/)
|
||||
{
|
||||
// test if the operation is done
|
||||
if (Status() == ChFi2d_IsDone) {
|
||||
|
@@ -282,7 +282,7 @@ public:
|
||||
ChFi2d_ConstructionError Status() const;
|
||||
|
||||
//! Update the result and set the Done flag
|
||||
Standard_EXPORT virtual void Build() Standard_OVERRIDE;
|
||||
Standard_EXPORT virtual void Build(const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user