OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    ShapeAnalysis_FreeBoundsProperties Class Reference

    This class is intended to calculate shape free bounds properties. This class provides the following functionalities: More...

    #include <ShapeAnalysis_FreeBoundsProperties.hxx>

    Public Member Functions

     ShapeAnalysis_FreeBoundsProperties ()
     Empty constructor.
     ShapeAnalysis_FreeBoundsProperties (const TopoDS_Shape &shape, const double tolerance, const bool splitclosed=false, const bool splitopen=false)
     Creates the object and calls corresponding Init. <shape> should be a compound of faces.
     ShapeAnalysis_FreeBoundsProperties (const TopoDS_Shape &shape, const bool splitclosed=false, const bool splitopen=false)
     Creates the object and calls corresponding Init. <shape> should be a compound of shells.
    void Init (const TopoDS_Shape &shape, const double tolerance, const bool splitclosed=false, const bool splitopen=false)
     Initializes the object with given parameters. <shape> should be a compound of faces.
    void Init (const TopoDS_Shape &shape, const bool splitclosed=false, const bool splitopen=false)
     Initializes the object with given parameters. <shape> should be a compound of shells.
    bool Perform ()
     Builds and analyzes free bounds of the shape. First calls ShapeAnalysis_FreeBounds for building free bounds. Then on each free bound computes its properties:
    bool IsLoaded () const
     Returns True if shape is loaded.
    TopoDS_Shape Shape () const
     Returns shape.
    double Tolerance () const
     Returns tolerance.
    int NbFreeBounds () const
     Returns number of free bounds.
    int NbClosedFreeBounds () const
     Returns number of closed free bounds.
    int NbOpenFreeBounds () const
     Returns number of open free bounds.
    occ::handle< NCollection_HSequence< occ::handle< ShapeAnalysis_FreeBoundData > > > ClosedFreeBounds () const
     Returns all closed free bounds.
    occ::handle< NCollection_HSequence< occ::handle< ShapeAnalysis_FreeBoundData > > > OpenFreeBounds () const
     Returns all open free bounds.
    occ::handle< ShapeAnalysis_FreeBoundDataClosedFreeBound (const int indexindex) const
     Returns properties of closed free bound specified by its rank number.
    occ::handle< ShapeAnalysis_FreeBoundDataOpenFreeBound (const int indexindex) const
     Returns properties of open free bound specified by its rank number.
    bool DispatchBounds ()
    bool CheckContours (const double prec=0.0)
    bool CheckNotches (const double prec=0.0)
    bool CheckNotches (occ::handle< ShapeAnalysis_FreeBoundData > &fbData, const double prec=0.0)
    bool CheckNotches (const TopoDS_Wire &freebound, const int numnum, TopoDS_Wire &notch, double &distMax, const double prec=0.0)
    bool FillProperties (occ::handle< ShapeAnalysis_FreeBoundData > &fbData, const double prec=0.0)

    Detailed Description

    This class is intended to calculate shape free bounds properties. This class provides the following functionalities:

    • calculates area of the contour,
    • calculates perimeter of the contour,
    • calculates ratio of average length to average width of the contour,
    • estimates average width of contour,
    • finds the notches (narrow 'V'-like sub-contour) on the contour.

    For getting free bounds this class uses ShapeAnalysis_FreeBounds class.

    For description of parameters used for initializing this class refer to CDL of ShapeAnalysis_FreeBounds.

    Properties of each contour are stored in the data structure ShapeAnalysis_FreeBoundData.

    Constructor & Destructor Documentation

    ◆ ShapeAnalysis_FreeBoundsProperties() [1/3]

    ShapeAnalysis_FreeBoundsProperties::ShapeAnalysis_FreeBoundsProperties ( )

    Empty constructor.

    ◆ ShapeAnalysis_FreeBoundsProperties() [2/3]

    ShapeAnalysis_FreeBoundsProperties::ShapeAnalysis_FreeBoundsProperties ( const TopoDS_Shape & shape,
    const double tolerance,
    const bool splitclosed = false,
    const bool splitopen = false )

    Creates the object and calls corresponding Init. <shape> should be a compound of faces.

    ◆ ShapeAnalysis_FreeBoundsProperties() [3/3]

    ShapeAnalysis_FreeBoundsProperties::ShapeAnalysis_FreeBoundsProperties ( const TopoDS_Shape & shape,
    const bool splitclosed = false,
    const bool splitopen = false )

    Creates the object and calls corresponding Init. <shape> should be a compound of shells.

    Member Function Documentation

    ◆ CheckContours()

    bool ShapeAnalysis_FreeBoundsProperties::CheckContours ( const double prec = 0.0)

    ◆ CheckNotches() [1/3]

    bool ShapeAnalysis_FreeBoundsProperties::CheckNotches ( const double prec = 0.0)

    ◆ CheckNotches() [2/3]

    bool ShapeAnalysis_FreeBoundsProperties::CheckNotches ( const TopoDS_Wire & freebound,
    const int num,
    TopoDS_Wire & notch,
    double & distMax,
    const double prec = 0.0 )

    ◆ CheckNotches() [3/3]

    bool ShapeAnalysis_FreeBoundsProperties::CheckNotches ( occ::handle< ShapeAnalysis_FreeBoundData > & fbData,
    const double prec = 0.0 )

    ◆ ClosedFreeBound()

    occ::handle< ShapeAnalysis_FreeBoundData > ShapeAnalysis_FreeBoundsProperties::ClosedFreeBound ( const int index) const

    Returns properties of closed free bound specified by its rank number.

    ◆ ClosedFreeBounds()

    occ::handle< NCollection_HSequence< occ::handle< ShapeAnalysis_FreeBoundData > > > ShapeAnalysis_FreeBoundsProperties::ClosedFreeBounds ( ) const

    Returns all closed free bounds.

    ◆ DispatchBounds()

    bool ShapeAnalysis_FreeBoundsProperties::DispatchBounds ( )

    ◆ FillProperties()

    bool ShapeAnalysis_FreeBoundsProperties::FillProperties ( occ::handle< ShapeAnalysis_FreeBoundData > & fbData,
    const double prec = 0.0 )

    ◆ Init() [1/2]

    void ShapeAnalysis_FreeBoundsProperties::Init ( const TopoDS_Shape & shape,
    const bool splitclosed = false,
    const bool splitopen = false )

    Initializes the object with given parameters. <shape> should be a compound of shells.

    ◆ Init() [2/2]

    void ShapeAnalysis_FreeBoundsProperties::Init ( const TopoDS_Shape & shape,
    const double tolerance,
    const bool splitclosed = false,
    const bool splitopen = false )

    Initializes the object with given parameters. <shape> should be a compound of faces.

    ◆ IsLoaded()

    bool ShapeAnalysis_FreeBoundsProperties::IsLoaded ( ) const

    Returns True if shape is loaded.

    ◆ NbClosedFreeBounds()

    int ShapeAnalysis_FreeBoundsProperties::NbClosedFreeBounds ( ) const

    Returns number of closed free bounds.

    ◆ NbFreeBounds()

    int ShapeAnalysis_FreeBoundsProperties::NbFreeBounds ( ) const

    Returns number of free bounds.

    ◆ NbOpenFreeBounds()

    int ShapeAnalysis_FreeBoundsProperties::NbOpenFreeBounds ( ) const

    Returns number of open free bounds.

    ◆ OpenFreeBound()

    occ::handle< ShapeAnalysis_FreeBoundData > ShapeAnalysis_FreeBoundsProperties::OpenFreeBound ( const int index) const

    Returns properties of open free bound specified by its rank number.

    ◆ OpenFreeBounds()

    occ::handle< NCollection_HSequence< occ::handle< ShapeAnalysis_FreeBoundData > > > ShapeAnalysis_FreeBoundsProperties::OpenFreeBounds ( ) const

    Returns all open free bounds.

    ◆ Perform()

    bool ShapeAnalysis_FreeBoundsProperties::Perform ( )

    Builds and analyzes free bounds of the shape. First calls ShapeAnalysis_FreeBounds for building free bounds. Then on each free bound computes its properties:

    • area of the contour,
    • perimeter of the contour,
    • ratio of average length to average width of the contour,
    • average width of contour,
    • notches on the contour and for each notch
    • maximum width of the notch.

    ◆ Shape()

    TopoDS_Shape ShapeAnalysis_FreeBoundsProperties::Shape ( ) const

    Returns shape.

    ◆ Tolerance()

    double ShapeAnalysis_FreeBoundsProperties::Tolerance ( ) const

    Returns tolerance.


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