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

Topological Sweep Algorithm Computes an Sweep shell using a generating wire, an SectionLaw and an LocationLaw. More...

#include <BRepFill_Sweep.hxx>

Public Member Functions

 BRepFill_Sweep (const occ::handle< BRepFill_SectionLaw > &Section, const occ::handle< BRepFill_LocationLaw > &Location, const bool WithKPart)
 
void SetBounds (const TopoDS_Wire &FirstShape, const TopoDS_Wire &LastShape)
 
void SetTolerance (const double Tol3d, const double BoundTol=1.0, const double Tol2d=1.0e-5, const double TolAngular=1.0e-2)
 Set Approximation Tolerance Tol3d : Tolerance to surface approximation Tol2d : Tolerance used to perform curve approximation Normally the 2d curve are approximated with a tolerance given by the resolution on support surfaces, but if this tolerance is too large Tol2d is used. TolAngular : Tolerance (in radian) to control the angle between tangents on the section law and tangent of iso-v on approximated surface.
 
void SetAngularControl (const double AngleMin=0.01, const double AngleMax=6.0)
 Tolerance To controle Corner management.
 
void SetForceApproxC1 (const bool ForceApproxC1)
 Set the flag that indicates attempt to approximate a C1-continuous surface if a swept surface proved to be C0.
 
void Build (NCollection_Map< TopoDS_Shape, TopTools_ShapeMapHasher > &ReversedEdges, NCollection_DataMap< TopoDS_Shape, occ::handle< NCollection_HArray2< TopoDS_Shape > >, TopTools_ShapeMapHasher > &Tapes, NCollection_DataMap< TopoDS_Shape, occ::handle< NCollection_HArray2< TopoDS_Shape > >, TopTools_ShapeMapHasher > &Rails, const BRepFill_TransitionStyle Transition=BRepFill_Modified, const GeomAbs_Shape Continuity=GeomAbs_C2, const GeomFill_ApproxStyle Approx=GeomFill_Location, const int Degmax=11, const int Segmax=30)
 Build the Sweep Surface Transition define Transition strategy Approx define Approximation Strategy.
 
bool IsDone () const
 Say if the Shape is Build.
 
TopoDS_Shape Shape () const
 Returns the Sweeping Shape.
 
double ErrorOnSurface () const
 Get the Approximation error.
 
occ::handle< NCollection_HArray2< TopoDS_Shape > > SubShape () const
 
occ::handle< NCollection_HArray2< TopoDS_Shape > > InterFaces () const
 
occ::handle< NCollection_HArray2< TopoDS_Shape > > Sections () const
 
TopoDS_Shape Tape (const int Index) const
 Returns the Tape corresponding to Index-th edge of section.
 

Protected Member Functions

bool CorrectApproxParameters ()
 
bool BuildWire (const BRepFill_TransitionStyle Transition)
 
bool BuildShell (const BRepFill_TransitionStyle Transition, const int Vf, const int Vl, NCollection_Map< TopoDS_Shape, TopTools_ShapeMapHasher > &ReversedEdges, NCollection_DataMap< TopoDS_Shape, occ::handle< NCollection_HArray2< TopoDS_Shape > >, TopTools_ShapeMapHasher > &Tapes, NCollection_DataMap< TopoDS_Shape, occ::handle< NCollection_HArray2< TopoDS_Shape > >, TopTools_ShapeMapHasher > &Rails, const double ExtendFirst=0.0, const double ExtendLast=0.0)
 
bool PerformCorner (const int Index, const BRepFill_TransitionStyle Transition, const occ::handle< NCollection_HArray2< TopoDS_Shape > > &Bounds)
 
double EvalExtrapol (const int Index, const BRepFill_TransitionStyle Transition) const
 
bool MergeVertex (const TopoDS_Shape &V1, TopoDS_Shape &V2) const
 
void UpdateVertex (const int Ipath, const int Isec, const double Error, const double Param, TopoDS_Shape &V) const
 
void RebuildTopOrBottomEdge (const TopoDS_Edge &aNewEdge, TopoDS_Edge &anEdge, NCollection_Map< TopoDS_Shape, TopTools_ShapeMapHasher > &ReversedEdges) const
 

Detailed Description

Topological Sweep Algorithm Computes an Sweep shell using a generating wire, an SectionLaw and an LocationLaw.

Constructor & Destructor Documentation

◆ BRepFill_Sweep()

BRepFill_Sweep::BRepFill_Sweep ( const occ::handle< BRepFill_SectionLaw > & Section,
const occ::handle< BRepFill_LocationLaw > & Location,
const bool WithKPart )

Member Function Documentation

◆ Build()

Build the Sweep Surface Transition define Transition strategy Approx define Approximation Strategy.

  • GeomFill_Section : The composed Function Location X Section is directly approximated.
  • GeomFill_Location : The location law is approximated, and the SweepSurface builds an algebraic composition of approximated location law and section law This option is Ok, if Section.Surface() methode is effective. Continuity : The continuity in v waiting on the surface Degmax : The maximum degree in v required on the surface Segmax : The maximum number of span in v required on the surface.

◆ BuildShell()

bool BRepFill_Sweep::BuildShell ( const BRepFill_TransitionStyle Transition,
const int Vf,
const int Vl,
NCollection_Map< TopoDS_Shape, TopTools_ShapeMapHasher > & ReversedEdges,
NCollection_DataMap< TopoDS_Shape, occ::handle< NCollection_HArray2< TopoDS_Shape > >, TopTools_ShapeMapHasher > & Tapes,
NCollection_DataMap< TopoDS_Shape, occ::handle< NCollection_HArray2< TopoDS_Shape > >, TopTools_ShapeMapHasher > & Rails,
const double ExtendFirst = 0.0,
const double ExtendLast = 0.0 )
protected

◆ BuildWire()

bool BRepFill_Sweep::BuildWire ( const BRepFill_TransitionStyle Transition)
protected

◆ CorrectApproxParameters()

bool BRepFill_Sweep::CorrectApproxParameters ( )
protected

◆ ErrorOnSurface()

double BRepFill_Sweep::ErrorOnSurface ( ) const

Get the Approximation error.

◆ EvalExtrapol()

double BRepFill_Sweep::EvalExtrapol ( const int Index,
const BRepFill_TransitionStyle Transition ) const
protected

◆ InterFaces()

occ::handle< NCollection_HArray2< TopoDS_Shape > > BRepFill_Sweep::InterFaces ( ) const

◆ IsDone()

bool BRepFill_Sweep::IsDone ( ) const

Say if the Shape is Build.

◆ MergeVertex()

bool BRepFill_Sweep::MergeVertex ( const TopoDS_Shape & V1,
TopoDS_Shape & V2 ) const
protected

◆ PerformCorner()

bool BRepFill_Sweep::PerformCorner ( const int Index,
const BRepFill_TransitionStyle Transition,
const occ::handle< NCollection_HArray2< TopoDS_Shape > > & Bounds )
protected

◆ RebuildTopOrBottomEdge()

void BRepFill_Sweep::RebuildTopOrBottomEdge ( const TopoDS_Edge & aNewEdge,
TopoDS_Edge & anEdge,
NCollection_Map< TopoDS_Shape, TopTools_ShapeMapHasher > & ReversedEdges ) const
protected

◆ Sections()

occ::handle< NCollection_HArray2< TopoDS_Shape > > BRepFill_Sweep::Sections ( ) const

◆ SetAngularControl()

void BRepFill_Sweep::SetAngularControl ( const double AngleMin = 0.01,
const double AngleMax = 6.0 )

Tolerance To controle Corner management.

If the discontinuity is lesser than <AngleMin> in radian The Transition Performed will be always "Modified"

◆ SetBounds()

void BRepFill_Sweep::SetBounds ( const TopoDS_Wire & FirstShape,
const TopoDS_Wire & LastShape )

◆ SetForceApproxC1()

void BRepFill_Sweep::SetForceApproxC1 ( const bool ForceApproxC1)

Set the flag that indicates attempt to approximate a C1-continuous surface if a swept surface proved to be C0.

◆ SetTolerance()

void BRepFill_Sweep::SetTolerance ( const double Tol3d,
const double BoundTol = 1.0,
const double Tol2d = 1.0e-5,
const double TolAngular = 1.0e-2 )

Set Approximation Tolerance Tol3d : Tolerance to surface approximation Tol2d : Tolerance used to perform curve approximation Normally the 2d curve are approximated with a tolerance given by the resolution on support surfaces, but if this tolerance is too large Tol2d is used. TolAngular : Tolerance (in radian) to control the angle between tangents on the section law and tangent of iso-v on approximated surface.

◆ Shape()

TopoDS_Shape BRepFill_Sweep::Shape ( ) const

Returns the Sweeping Shape.

◆ SubShape()

occ::handle< NCollection_HArray2< TopoDS_Shape > > BRepFill_Sweep::SubShape ( ) const

◆ Tape()

TopoDS_Shape BRepFill_Sweep::Tape ( const int Index) const

Returns the Tape corresponding to Index-th edge of section.

◆ UpdateVertex()

void BRepFill_Sweep::UpdateVertex ( const int Ipath,
const int Isec,
const double Error,
const double Param,
TopoDS_Shape & V ) const
protected

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