OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKShHealing
ShapeAnalysis


ShapeAnalysis_FreeBoundsProperties Class Reference

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.
.

#include <ShapeAnalysis_FreeBoundsProperties.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT ShapeAnalysis_FreeBoundsProperties ()
 Empty constructor
.
Standard_EXPORT ShapeAnalysis_FreeBoundsProperties (const TopoDS_Shape &shape, const Standard_Real tolerance, const Standard_Boolean splitclosed=Standard_False, const Standard_Boolean splitopen=Standard_False)
 Creates the object and calls corresponding Init.
<shape> should be a compound of faces.
.
Standard_EXPORT ShapeAnalysis_FreeBoundsProperties (const TopoDS_Shape &shape, const Standard_Boolean splitclosed=Standard_False, const Standard_Boolean splitopen=Standard_False)
 Creates the object and calls corresponding Init.
<shape> should be a compound of shells.
.
Standard_EXPORT void Init (const TopoDS_Shape &shape, const Standard_Real tolerance, const Standard_Boolean splitclosed=Standard_False, const Standard_Boolean splitopen=Standard_False)
 Initializes the object with given parameters.
<shape> should be a compound of faces.
.
Standard_EXPORT void Init (const TopoDS_Shape &shape, const Standard_Boolean splitclosed=Standard_False, const Standard_Boolean splitopen=Standard_False)
 Initializes the object with given parameters.
<shape> should be a compound of shells.
.
Standard_EXPORT Standard_Boolean 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.
.
Standard_Boolean IsLoaded () const
 Returns True if shape is loaded
.
TopoDS_Shape Shape () const
 Returns shape
.
Standard_Real Tolerance () const
 Returns tolerance
.
Standard_Integer NbFreeBounds () const
 Returns number of free bounds
.
Standard_Integer NbClosedFreeBounds () const
 Returns number of closed free bounds
.
Standard_Integer NbOpenFreeBounds () const
 Returns number of open free bounds
.
Handle_ShapeAnalysis_HSequenceOfFreeBounds ClosedFreeBounds () const
 Returns all closed free bounds
.
Handle_ShapeAnalysis_HSequenceOfFreeBounds OpenFreeBounds () const
 Returns all open free bounds
.
Handle_ShapeAnalysis_FreeBoundData ClosedFreeBound (const Standard_Integer index) const
 Returns properties of closed free bound specified by its rank
number
.
Handle_ShapeAnalysis_FreeBoundData OpenFreeBound (const Standard_Integer index) const
 Returns properties of open free bound specified by its rank
number
.
Standard_EXPORT Standard_Boolean DispatchBounds ()
Standard_EXPORT Standard_Boolean CheckContours (const Standard_Real prec=0.0)
Standard_EXPORT Standard_Boolean CheckNotches (const Standard_Real prec=0.0)
Standard_EXPORT Standard_Boolean CheckNotches (Handle(ShapeAnalysis_FreeBoundData)&fbData, const Standard_Real prec=0.0)
Standard_EXPORT Standard_Boolean CheckNotches (const TopoDS_Wire &freebound, const Standard_Integer num, TopoDS_Wire &notch, Standard_Real &distMax, const Standard_Real prec=0.0)
Standard_EXPORT Standard_Boolean FillProperties (Handle(ShapeAnalysis_FreeBoundData)&fbData, const Standard_Real prec=0.0)

Private Attributes

TopoDS_Shape myShape
Standard_Real myTolerance
Standard_Boolean mySplitClosed
Standard_Boolean mySplitOpen
Handle_ShapeAnalysis_HSequenceOfFreeBounds myClosedFreeBounds
Handle_ShapeAnalysis_HSequenceOfFreeBounds myOpenFreeBounds


Constructor & Destructor Documentation

Standard_EXPORT ShapeAnalysis_FreeBoundsProperties::ShapeAnalysis_FreeBoundsProperties  ) 
 

Standard_EXPORT ShapeAnalysis_FreeBoundsProperties::ShapeAnalysis_FreeBoundsProperties const TopoDS_Shape &  shape,
const Standard_Real  tolerance,
const Standard_Boolean  splitclosed = Standard_False,
const Standard_Boolean  splitopen = Standard_False
 

Standard_EXPORT ShapeAnalysis_FreeBoundsProperties::ShapeAnalysis_FreeBoundsProperties const TopoDS_Shape &  shape,
const Standard_Boolean  splitclosed = Standard_False,
const Standard_Boolean  splitopen = Standard_False
 


Member Function Documentation

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::CheckContours const Standard_Real  prec = 0.0  ) 
 

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::CheckNotches const TopoDS_Wire &  freebound,
const Standard_Integer  num,
TopoDS_Wire &  notch,
Standard_Real &  distMax,
const Standard_Real  prec = 0.0
 

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::CheckNotches Handle(ShapeAnalysis_FreeBoundData)&  fbData,
const Standard_Real  prec = 0.0
 

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::CheckNotches const Standard_Real  prec = 0.0  ) 
 

Handle_ShapeAnalysis_FreeBoundData ShapeAnalysis_FreeBoundsProperties::ClosedFreeBound const Standard_Integer  index  )  const
 

Handle_ShapeAnalysis_HSequenceOfFreeBounds ShapeAnalysis_FreeBoundsProperties::ClosedFreeBounds  )  const
 

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::DispatchBounds  ) 
 

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::FillProperties Handle(ShapeAnalysis_FreeBoundData)&  fbData,
const Standard_Real  prec = 0.0
 

Standard_EXPORT void ShapeAnalysis_FreeBoundsProperties::Init const TopoDS_Shape &  shape,
const Standard_Boolean  splitclosed = Standard_False,
const Standard_Boolean  splitopen = Standard_False
 

Standard_EXPORT void ShapeAnalysis_FreeBoundsProperties::Init const TopoDS_Shape &  shape,
const Standard_Real  tolerance,
const Standard_Boolean  splitclosed = Standard_False,
const Standard_Boolean  splitopen = Standard_False
 

Standard_Boolean ShapeAnalysis_FreeBoundsProperties::IsLoaded  )  const [inline]
 

Standard_Integer ShapeAnalysis_FreeBoundsProperties::NbClosedFreeBounds  )  const [inline]
 

Standard_Integer ShapeAnalysis_FreeBoundsProperties::NbFreeBounds  )  const [inline]
 

Standard_Integer ShapeAnalysis_FreeBoundsProperties::NbOpenFreeBounds  )  const [inline]
 

Handle_ShapeAnalysis_FreeBoundData ShapeAnalysis_FreeBoundsProperties::OpenFreeBound const Standard_Integer  index  )  const
 

Handle_ShapeAnalysis_HSequenceOfFreeBounds ShapeAnalysis_FreeBoundsProperties::OpenFreeBounds  )  const
 

void ShapeAnalysis_FreeBoundsProperties::operator delete void *  anAddress  )  [inline]
 

void* ShapeAnalysis_FreeBoundsProperties::operator new size_t  size  )  [inline]
 

void* ShapeAnalysis_FreeBoundsProperties::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT Standard_Boolean ShapeAnalysis_FreeBoundsProperties::Perform  ) 
 

TopoDS_Shape ShapeAnalysis_FreeBoundsProperties::Shape  )  const [inline]
 

Standard_Real ShapeAnalysis_FreeBoundsProperties::Tolerance  )  const [inline]
 


Field Documentation

Handle_ShapeAnalysis_HSequenceOfFreeBounds ShapeAnalysis_FreeBoundsProperties::myClosedFreeBounds [private]
 

Handle_ShapeAnalysis_HSequenceOfFreeBounds ShapeAnalysis_FreeBoundsProperties::myOpenFreeBounds [private]
 

TopoDS_Shape ShapeAnalysis_FreeBoundsProperties::myShape [private]
 

Standard_Boolean ShapeAnalysis_FreeBoundsProperties::mySplitClosed [private]
 

Standard_Boolean ShapeAnalysis_FreeBoundsProperties::mySplitOpen [private]
 

Standard_Real ShapeAnalysis_FreeBoundsProperties::myTolerance [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:42:33 2008 for OpenCASCADE by  doxygen 1.4.1