Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Static Public Member Functions
ShapeFix Class Reference

This package provides algorithms for fixing problematic (violating Open CASCADE requirements) shapes. Tools from package ShapeAnalysis are used for detecting the problems. The detecting and fixing is done taking in account various criteria implemented in BRepCheck package. Each class of package ShapeFix deals with one certain type of shapes or with some family of problems. More...

#include <ShapeFix.hxx>

Static Public Member Functions

static bool SameParameter (const TopoDS_Shape &shape, const bool enforce, const double preci=0.0, const Message_ProgressRange &theProgress=Message_ProgressRange(), const occ::handle< ShapeExtend_BasicMsgRegistrator > &theMsgReg=nullptr)
 Runs SameParameter from BRepLib with these adaptations : <enforce> forces computations, else they are made only on Edges with flag SameParameter false <preci>, if not precised, is taken for each EDge as its own Tolerance Returns True when done, False if an exception has been raised In case of exception anyway, as many edges as possible have been processed. The passed progress indicator allows user to consult the current progress stage and abort algorithm if needed.
 
static void EncodeRegularity (const TopoDS_Shape &shape, const double tolang=1.0e-10)
 Runs EncodeRegularity from BRepLib taking into account shared components of assemblies, so that each component is processed only once.
 
static TopoDS_Shape RemoveSmallEdges (TopoDS_Shape &shape, const double Tolerance, occ::handle< ShapeBuild_ReShape > &context)
 Removes edges which are less than given tolerance from shape with help of ShapeFix_Wire::FixSmall()
 
static bool FixVertexPosition (TopoDS_Shape &theshape, const double theTolerance, const occ::handle< ShapeBuild_ReShape > &thecontext)
 Fix position of the vertices having tolerance more tnan specified one.;.
 
static double LeastEdgeSize (TopoDS_Shape &theshape)
 Calculate size of least edge;.
 

Detailed Description

This package provides algorithms for fixing problematic (violating Open CASCADE requirements) shapes. Tools from package ShapeAnalysis are used for detecting the problems. The detecting and fixing is done taking in account various criteria implemented in BRepCheck package. Each class of package ShapeFix deals with one certain type of shapes or with some family of problems.

Member Function Documentation

◆ EncodeRegularity()

static void ShapeFix::EncodeRegularity ( const TopoDS_Shape & shape,
const double tolang = 1.0e-10 )
static

Runs EncodeRegularity from BRepLib taking into account shared components of assemblies, so that each component is processed only once.

◆ FixVertexPosition()

static bool ShapeFix::FixVertexPosition ( TopoDS_Shape & theshape,
const double theTolerance,
const occ::handle< ShapeBuild_ReShape > & thecontext )
static

Fix position of the vertices having tolerance more tnan specified one.;.

◆ LeastEdgeSize()

static double ShapeFix::LeastEdgeSize ( TopoDS_Shape & theshape)
static

Calculate size of least edge;.

◆ RemoveSmallEdges()

static TopoDS_Shape ShapeFix::RemoveSmallEdges ( TopoDS_Shape & shape,
const double Tolerance,
occ::handle< ShapeBuild_ReShape > & context )
static

Removes edges which are less than given tolerance from shape with help of ShapeFix_Wire::FixSmall()

◆ SameParameter()

static bool ShapeFix::SameParameter ( const TopoDS_Shape & shape,
const bool enforce,
const double preci = 0.0,
const Message_ProgressRange & theProgress = Message_ProgressRange(),
const occ::handle< ShapeExtend_BasicMsgRegistrator > & theMsgReg = nullptr )
static

Runs SameParameter from BRepLib with these adaptations : <enforce> forces computations, else they are made only on Edges with flag SameParameter false <preci>, if not precised, is taken for each EDge as its own Tolerance Returns True when done, False if an exception has been raised In case of exception anyway, as many edges as possible have been processed. The passed progress indicator allows user to consult the current progress stage and abort algorithm if needed.


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