Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions
BRepAlgoAPI_Section Class Reference

The algorithm is to build a Section operation between arguments and tools. The result of Section operation consists of vertices and edges. The result of Section operation contains: More...

#include <BRepAlgoAPI_Section.hxx>

Inheritance diagram for BRepAlgoAPI_Section:
Inheritance graph
[legend]

Public Member Functions

 BRepAlgoAPI_Section ()
 Empty constructor.
 
 ~BRepAlgoAPI_Section () override
 
 BRepAlgoAPI_Section (const BOPAlgo_PaveFiller &PF)
 Empty constructor <PF> - PaveFiller object that is carried out.
 
 BRepAlgoAPI_Section (const TopoDS_Shape &S1, const TopoDS_Shape &S2, const bool PerformNow=true)
 Constructor with two shapes <S1> -argument <S2> -tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.
 
 BRepAlgoAPI_Section (const TopoDS_Shape &S1, const TopoDS_Shape &S2, const BOPAlgo_PaveFiller &aDSF, const bool PerformNow=true)
 Constructor with two shapes <S1> -argument <S2> -tool <PF> - PaveFiller object that is carried out <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.
 
 BRepAlgoAPI_Section (const TopoDS_Shape &S1, const gp_Pln &Pl, const bool PerformNow=true)
 Constructor with two shapes <S1> - argument <Pl> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.
 
 BRepAlgoAPI_Section (const TopoDS_Shape &S1, const occ::handle< Geom_Surface > &Sf, const bool PerformNow=true)
 Constructor with two shapes <S1> - argument <Sf> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.
 
 BRepAlgoAPI_Section (const occ::handle< Geom_Surface > &Sf, const TopoDS_Shape &S2, const bool PerformNow=true)
 Constructor with two shapes <Sf> - argument <S2> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.
 
 BRepAlgoAPI_Section (const occ::handle< Geom_Surface > &Sf1, const occ::handle< Geom_Surface > &Sf2, const bool PerformNow=true)
 Constructor with two shapes <Sf1> - argument <Sf2> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.
 
void Init1 (const TopoDS_Shape &S1)
 initialize the argument <S1> - argument Obsolete
 
void Init1 (const gp_Pln &Pl)
 initialize the argument <Pl> - argument Obsolete
 
void Init1 (const occ::handle< Geom_Surface > &Sf)
 initialize the argument <Sf> - argument Obsolete
 
void Init2 (const TopoDS_Shape &S2)
 initialize the tool <S2> - tool Obsolete
 
void Init2 (const gp_Pln &Pl)
 initialize the tool <Pl> - tool Obsolete
 
void Init2 (const occ::handle< Geom_Surface > &Sf)
 initialize the tool <Sf> - tool Obsolete
 
void Approximation (const bool B)
 
void ComputePCurveOn1 (const bool B)
 Indicates whether the P-Curve should be (or not) performed on the argument. By default, no parametric 2D curve (pcurve) is defined for the edges of the result. If ComputePCurve1 equals true, further computations performed to attach an P-Curve in the parametric space of the argument to the constructed edges. Obsolete.
 
void ComputePCurveOn2 (const bool B)
 Indicates whether the P-Curve should be (or not) performed on the tool. By default, no parametric 2D curve (pcurve) is defined for the edges of the result. If ComputePCurve1 equals true, further computations performed to attach an P-Curve in the parametric space of the tool to the constructed edges. Obsolete.
 
void Build (const Message_ProgressRange &theRange=Message_ProgressRange()) override
 Performs the algorithm Filling interference Data Structure (if it is necessary) Building the result of the operation.
 
bool HasAncestorFaceOn1 (const TopoDS_Shape &E, TopoDS_Shape &F) const
 get the face of the first part giving section edge <E>. Returns True on the 3 following conditions : 1/ <E> is an edge returned by the Shape() metwod. 2/ First part of section performed is a shape. 3/ <E> is built on a intersection curve (i.e <E> is not the result of common edges) When False, F remains untouched. Obsolete
 
bool HasAncestorFaceOn2 (const TopoDS_Shape &E, TopoDS_Shape &F) const
 Identifies the ancestor faces of the intersection edge E resulting from the last computation performed in this framework, that is, the faces of the two original shapes on which the edge E lies:
 
- Public Member Functions inherited from BRepAlgoAPI_BooleanOperation
const TopoDS_ShapeShape1 () const
 Returns the second argument involved in this Boolean operation. Obsolete.
 
const TopoDS_ShapeShape2 () const
 Returns the second argument involved in this Boolean operation. Obsolete.
 
void SetTools (const NCollection_List< TopoDS_Shape > &theLS)
 Sets the Tool arguments.
 
const NCollection_List< TopoDS_Shape > & Tools () const
 Returns the Tools arguments.
 
void SetOperation (const BOPAlgo_Operation theBOP)
 Returns the type of Boolean Operation.
 
BOPAlgo_Operation Operation () const
 Returns the type of Boolean Operation.
 
 BRepAlgoAPI_BooleanOperation ()
 Constructor with precomputed intersections of arguments.
 
 BRepAlgoAPI_BooleanOperation (const BOPAlgo_PaveFiller &thePF)
 Constructor with precomputed intersections of arguments.
 
- Public Member Functions inherited from BRepAlgoAPI_BuilderAlgo
 BRepAlgoAPI_BuilderAlgo ()
 Constructor with prepared Filler object.
 
 ~BRepAlgoAPI_BuilderAlgo () override
 Constructor with prepared Filler object.
 
 BRepAlgoAPI_BuilderAlgo (const BOPAlgo_PaveFiller &thePF)
 Constructor with prepared Filler object.
 
 BRepAlgoAPI_BuilderAlgo (const BRepAlgoAPI_BuilderAlgo &)=delete
 Copy constructor is not allowed.
 
 BRepAlgoAPI_BuilderAlgo (BRepAlgoAPI_BuilderAlgo &&)=delete
 Move constructor is not allowed.
 
BRepAlgoAPI_BuilderAlgooperator= (const BRepAlgoAPI_BuilderAlgo &)=delete
 Copy assignment is not allowed.
 
BRepAlgoAPI_BuilderAlgooperator= (BRepAlgoAPI_BuilderAlgo &&)=delete
 Move assignment is not allowed.
 
void SetArguments (const NCollection_List< TopoDS_Shape > &theLS)
 Gets the arguments.
 
const NCollection_List< TopoDS_Shape > & Arguments () const
 Gets the arguments.
 
void SetNonDestructive (const bool theFlag)
 Returns the flag that defines the mode of treatment. In non-destructive mode the argument shapes are not modified. Instead a copy of a sub-shape is created in the result if it is needed to be updated.
 
bool NonDestructive () const
 Returns the flag that defines the mode of treatment. In non-destructive mode the argument shapes are not modified. Instead a copy of a sub-shape is created in the result if it is needed to be updated.
 
void SetGlue (const BOPAlgo_GlueEnum theGlue)
 Sets the glue option for the algorithm, which allows increasing performance of the intersection of the input shapes.
 
BOPAlgo_GlueEnum Glue () const
 Returns the glue option of the algorithm.
 
void SetCheckInverted (const bool theCheck)
 Enables/Disables the check of the input solids for inverted status.
 
bool CheckInverted () const
 Returns the flag defining whether the check for input solids on inverted status should be performed or not.
 
void SimplifyResult (const bool theUnifyEdges=true, const bool theUnifyFaces=true, const double theAngularTol=Precision::Angular())
 
const NCollection_List< TopoDS_Shape > & Modified (const TopoDS_Shape &theS) override
 Returns the list of shapes generated from the shape <theS>. In frames of Boolean Operations algorithms only Edges and Faces could have Generated elements, as only they produce new elements during intersection:
 
const NCollection_List< TopoDS_Shape > & Generated (const TopoDS_Shape &theS) override
 Returns the list of shapes generated from the shape <theS>. In frames of Boolean Operations algorithms only Edges and Faces could have Generated elements, as only they produce new elements during intersection:
 
bool IsDeleted (const TopoDS_Shape &aS) override
 Checks if the shape <theS> has been completely removed from the result, i.e. the result does not contain the shape itself and any of its splits. Returns TRUE if the shape has been deleted.
 
virtual bool HasModified () const
 Returns true if any of the input shapes has been modified during operation.
 
virtual bool HasGenerated () const
 Returns true if any of the input shapes has generated shapes during operation.
 
virtual bool HasDeleted () const
 Returns true if any of the input shapes has been deleted during operation. Normally, General Fuse operation should not have Deleted elements, but all derived operation can have.
 
void SetToFillHistory (const bool theHistFlag)
 Returns flag of history availability.
 
bool HasHistory () const
 Returns flag of history availability.
 
const NCollection_List< TopoDS_Shape > & SectionEdges ()
 
const BOPAlgo_PPaveFillerDSFiller () const
 Returns the Building tool.
 
const BOPAlgo_PBuilderBuilder () const
 Returns the Building tool.
 
occ::handle< BRepTools_HistoryHistory () const
 History tool.
 
- Public Member Functions inherited from BRepAlgoAPI_Algo
const TopoDS_ShapeShape () override
 Returns a shape built by the shape construction algorithm. Does not check if the shape is built.
 
void ClearWarnings ()
 Clears the warnings of the algorithm.
 
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.
 
double FuzzyValue () const
 Returns the additional tolerance.
 
const occ::handle< Message_Report > & GetReport () const
 Returns report collecting all errors and warnings.
 
bool HasError (const occ::handle< Standard_Type > &theType) const
 Returns true if algorithm has generated error of specified type.
 
bool HasErrors () const
 Returns true if algorithm has failed.
 
bool HasWarning (const occ::handle< Standard_Type > &theType) const
 Returns true if algorithm has generated warning of specified type.
 
bool HasWarnings () const
 Returns true if algorithm has generated some warning alerts.
 
bool RunParallel () const
 Returns the flag of parallel processing.
 
void SetFuzzyValue (const double theFuzz)
 Sets the additional tolerance.
 
void SetRunParallel (const bool 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.
 
void SetUseOBB (const bool theUseOBB)
 Enables/Disables the usage of OBB.
 
- Public Member Functions inherited from BRepBuilderAPI_MakeShape
 operator TopoDS_Shape ()
 
- Public Member Functions inherited from BRepBuilderAPI_Command
virtual ~BRepBuilderAPI_Command ()
 
virtual bool IsDone () const
 
void Check () const
 Raises NotDone if done is false.
 

Protected Member Functions

void Init (const bool PerformNow)
 
void SetAttributes () override
 
- Protected Member Functions inherited from BRepAlgoAPI_BooleanOperation
 BRepAlgoAPI_BooleanOperation (const TopoDS_Shape &theS1, const TopoDS_Shape &theS2, const BOPAlgo_Operation theOperation)
 Constructor with precomputed intersections of arguments.
 
 BRepAlgoAPI_BooleanOperation (const TopoDS_Shape &theS1, const TopoDS_Shape &theS2, const BOPAlgo_PaveFiller &thePF, const BOPAlgo_Operation theOperation)
 Constructor to perform Boolean operation on only two arguments with precomputed intersection results. Obsolete.
 
- Protected Member Functions inherited from BRepAlgoAPI_BuilderAlgo
void IntersectShapes (const NCollection_List< TopoDS_Shape > &theArgs, const Message_ProgressRange &theRange)
 Builds the resulting shape.
 
void BuildResult (const Message_ProgressRange &theRange=Message_ProgressRange())
 Builds the resulting shape.
 
void Clear () override
 Clears all warnings and errors, and any data cached by the algorithm. User defined options are not cleared.
 
- Protected Member Functions inherited from BRepAlgoAPI_Algo
 BRepAlgoAPI_Algo ()
 Empty constructor.
 
 ~BRepAlgoAPI_Algo () override
 Destructor.
 
 BRepAlgoAPI_Algo (const occ::handle< NCollection_BaseAllocator > &theAllocator)
 Empty constructor.
 
- Protected Member Functions inherited from BRepBuilderAPI_MakeShape
 BRepBuilderAPI_MakeShape ()
 
- Protected Member Functions inherited from BRepBuilderAPI_Command
 BRepBuilderAPI_Command ()
 Set done to False.
 
void Done ()
 Set done to true.
 
void NotDone ()
 Set done to false.
 
- Protected Member Functions inherited from BOPAlgo_Options
bool UserBreak (const Message_ProgressScope &thePS)
 Adds error to the report if the break signal was caught. Returns true in this case, false otherwise.
 
 BOPAlgo_Options ()
 Empty constructor.
 
 BOPAlgo_Options (const occ::handle< NCollection_BaseAllocator > &theAllocator)
 Constructor with allocator.
 
virtual ~BOPAlgo_Options ()
 Destructor.
 
const occ::handle< NCollection_BaseAllocator > & Allocator () const
 Returns allocator.
 
void AddError (const occ::handle< Message_Alert > &theAlert)
 Adds the alert as error (fail)
 
void AddWarning (const occ::handle< Message_Alert > &theAlert)
 Adds the alert as warning.
 
bool HasErrors () const
 Returns true if algorithm has failed.
 
bool HasError (const occ::handle< Standard_Type > &theType) const
 Returns true if algorithm has generated error of specified type.
 
bool HasWarnings () const
 Returns true if algorithm has generated some warning alerts.
 
bool HasWarning (const occ::handle< Standard_Type > &theType) const
 Returns true if algorithm has generated warning of specified type.
 
const occ::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 double theFuzz)
 Sets the additional tolerance.
 
double FuzzyValue () const
 Returns the additional tolerance.
 
void SetUseOBB (const bool theUseOBB)
 Enables/Disables the usage of OBB.
 
bool UseOBB () const
 Returns the flag defining usage of OBB.
 
void SetRunParallel (const bool 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.
 
bool RunParallel () const
 Returns the flag of parallel processing.
 

Additional Inherited Members

- Static Protected Member Functions inherited from BOPAlgo_Options
static bool GetParallelMode ()
 Gets the global parallel mode.
 
static void SetParallelMode (const bool theNewMode)
 Sets the global parallel mode.
 
- Protected Attributes inherited from BRepAlgoAPI_BooleanOperation
NCollection_List< TopoDS_ShapemyTools
 Tool arguments of operation.
 
BOPAlgo_Operation myOperation
 Type of Boolean Operation.
 
- Protected Attributes inherited from BRepAlgoAPI_BuilderAlgo
NCollection_List< TopoDS_ShapemyArguments
 Arguments of the operation.
 
bool myNonDestructive
 Non-destructive mode management.
 
BOPAlgo_GlueEnum myGlue
 Gluing mode management.
 
bool myCheckInverted
 Check for inverted solids management.
 
bool myFillHistory
 Controls the history collection.
 
bool myIsIntersectionNeeded
 Flag to control whether the intersection of arguments should be performed or not.
 
BOPAlgo_PPaveFiller myDSFiller
 Intersection tool performs intersection of the argument shapes.
 
BOPAlgo_PBuilder myBuilder
 Building tool performs construction of the result basing on the results of intersection.
 
occ::handle< BRepTools_HistorymyHistory
 General History tool, containing all History of shapes modifications during the operation (including result simplification)
 
occ::handle< BRepTools_HistorymySimplifierHistory
 History of result shape simplification.
 
- Protected Attributes inherited from BRepBuilderAPI_MakeShape
TopoDS_Shape myShape
 
NCollection_List< TopoDS_ShapemyGenerated
 
- Protected Attributes inherited from BOPAlgo_Options
occ::handle< NCollection_BaseAllocatormyAllocator
 Enables/Disables the usage of OBB.
 
occ::handle< Message_ReportmyReport
 Enables/Disables the usage of OBB.
 
bool myRunParallel
 Enables/Disables the usage of OBB.
 
double myFuzzyValue
 Enables/Disables the usage of OBB.
 
bool myUseOBB
 Enables/Disables the usage of OBB.
 

Detailed Description

The algorithm is to build a Section operation between arguments and tools. The result of Section operation consists of vertices and edges. The result of Section operation contains:

  1. new vertices that are subjects of V/V, E/E, E/F, F/F interferences
  2. vertices that are subjects of V/E, V/F interferences
  3. new edges that are subjects of F/F interferences
  4. edges that are Common Blocks

Constructor & Destructor Documentation

◆ BRepAlgoAPI_Section() [1/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( )

Empty constructor.

◆ ~BRepAlgoAPI_Section()

BRepAlgoAPI_Section::~BRepAlgoAPI_Section ( )
override

◆ BRepAlgoAPI_Section() [2/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const BOPAlgo_PaveFiller & PF)

Empty constructor <PF> - PaveFiller object that is carried out.

◆ BRepAlgoAPI_Section() [3/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const TopoDS_Shape & S1,
const TopoDS_Shape & S2,
const bool PerformNow = true )

Constructor with two shapes <S1> -argument <S2> -tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.

◆ BRepAlgoAPI_Section() [4/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const TopoDS_Shape & S1,
const TopoDS_Shape & S2,
const BOPAlgo_PaveFiller & aDSF,
const bool PerformNow = true )

Constructor with two shapes <S1> -argument <S2> -tool <PF> - PaveFiller object that is carried out <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.

◆ BRepAlgoAPI_Section() [5/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const TopoDS_Shape & S1,
const gp_Pln & Pl,
const bool PerformNow = true )

Constructor with two shapes <S1> - argument <Pl> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.

◆ BRepAlgoAPI_Section() [6/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const TopoDS_Shape & S1,
const occ::handle< Geom_Surface > & Sf,
const bool PerformNow = true )

Constructor with two shapes <S1> - argument <Sf> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.

◆ BRepAlgoAPI_Section() [7/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const occ::handle< Geom_Surface > & Sf,
const TopoDS_Shape & S2,
const bool PerformNow = true )

Constructor with two shapes <Sf> - argument <S2> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.

◆ BRepAlgoAPI_Section() [8/8]

BRepAlgoAPI_Section::BRepAlgoAPI_Section ( const occ::handle< Geom_Surface > & Sf1,
const occ::handle< Geom_Surface > & Sf2,
const bool PerformNow = true )

Constructor with two shapes <Sf1> - argument <Sf2> - tool <PerformNow> - the flag: if <PerformNow>=True - the algorithm is performed immediately Obsolete.

Member Function Documentation

◆ Approximation()

void BRepAlgoAPI_Section::Approximation ( const bool B)

◆ Build()

void BRepAlgoAPI_Section::Build ( const Message_ProgressRange & theRange = Message_ProgressRange())
overridevirtual

Performs the algorithm Filling interference Data Structure (if it is necessary) Building the result of the operation.

Reimplemented from BRepAlgoAPI_BooleanOperation.

◆ ComputePCurveOn1()

void BRepAlgoAPI_Section::ComputePCurveOn1 ( const bool B)

Indicates whether the P-Curve should be (or not) performed on the argument. By default, no parametric 2D curve (pcurve) is defined for the edges of the result. If ComputePCurve1 equals true, further computations performed to attach an P-Curve in the parametric space of the argument to the constructed edges. Obsolete.

◆ ComputePCurveOn2()

void BRepAlgoAPI_Section::ComputePCurveOn2 ( const bool B)

Indicates whether the P-Curve should be (or not) performed on the tool. By default, no parametric 2D curve (pcurve) is defined for the edges of the result. If ComputePCurve1 equals true, further computations performed to attach an P-Curve in the parametric space of the tool to the constructed edges. Obsolete.

◆ HasAncestorFaceOn1()

bool BRepAlgoAPI_Section::HasAncestorFaceOn1 ( const TopoDS_Shape & E,
TopoDS_Shape & F ) const

get the face of the first part giving section edge <E>. Returns True on the 3 following conditions : 1/ <E> is an edge returned by the Shape() metwod. 2/ First part of section performed is a shape. 3/ <E> is built on a intersection curve (i.e <E> is not the result of common edges) When False, F remains untouched. Obsolete

◆ HasAncestorFaceOn2()

bool BRepAlgoAPI_Section::HasAncestorFaceOn2 ( const TopoDS_Shape & E,
TopoDS_Shape & F ) const

Identifies the ancestor faces of the intersection edge E resulting from the last computation performed in this framework, that is, the faces of the two original shapes on which the edge E lies:

  • HasAncestorFaceOn1 gives the ancestor face in the first shape, and
  • HasAncestorFaceOn2 gives the ancestor face in the second shape. These functions return true if an ancestor face F is found, or false if not. An ancestor face is identifiable for the edge E if the following conditions are satisfied:
  • the first part on which this algorithm performed its last computation is a shape, that is, it was not given as a surface or a plane at the time of construction of this algorithm or at a later time by the Init1 function,
  • E is one of the elementary edges built by the last computation of this section algorithm. To use these functions properly, you have to test the returned Boolean value before using the ancestor face: F is significant only if the returned Boolean value equals true. Obsolete

◆ Init()

void BRepAlgoAPI_Section::Init ( const bool PerformNow)
protected

◆ Init1() [1/3]

void BRepAlgoAPI_Section::Init1 ( const gp_Pln & Pl)

initialize the argument <Pl> - argument Obsolete

◆ Init1() [2/3]

void BRepAlgoAPI_Section::Init1 ( const occ::handle< Geom_Surface > & Sf)

initialize the argument <Sf> - argument Obsolete

◆ Init1() [3/3]

void BRepAlgoAPI_Section::Init1 ( const TopoDS_Shape & S1)

initialize the argument <S1> - argument Obsolete

◆ Init2() [1/3]

void BRepAlgoAPI_Section::Init2 ( const gp_Pln & Pl)

initialize the tool <Pl> - tool Obsolete

◆ Init2() [2/3]

void BRepAlgoAPI_Section::Init2 ( const occ::handle< Geom_Surface > & Sf)

initialize the tool <Sf> - tool Obsolete

◆ Init2() [3/3]

void BRepAlgoAPI_Section::Init2 ( const TopoDS_Shape & S2)

initialize the tool <S2> - tool Obsolete

◆ SetAttributes()

void BRepAlgoAPI_Section::SetAttributes ( )
overrideprotectedvirtual

Reimplemented from BRepAlgoAPI_BuilderAlgo.


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