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

ModelingAlgorithms
TKGeomAlgo
Law


Law_BSplineKnotSplitting Class Reference

For a B-spline curve the discontinuities are localised at the
knot values and between two knots values the B-spline is
infinitely continuously differentiable.
At a knot of range index the continuity is equal to :
Degree - Mult (Index) where Degree is the degree of the
basis B-spline functions and Mult the multiplicity of the knot
of range Index.
If for your computation you need to have B-spline curves with a
minima of continuity it can be interesting to know between which
knot values, a B-spline curve arc, has a continuity of given order.
This algorithm computes the indexes of the knots where you should
split the curve, to obtain arcs with a constant continuity given
at the construction time. The splitting values are in the range
[FirstUKnotValue, LastUKnotValue] (See class B-spline curve from
package Geom).
If you just want to compute the local derivatives on the curve you
don't need to create the B-spline curve arcs, you can use the
functions LocalD1, LocalD2, LocalD3, LocalDN of the class
BSplineCurve.
.

#include <Law_BSplineKnotSplitting.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT Law_BSplineKnotSplitting (const Handle(Law_BSpline)&BasisLaw, const Standard_Integer ContinuityRange)
 Locates the knot values which correspond to the segmentation of
the curve into arcs with a continuity equal to ContinuityRange.
Raised if ContinuityRange is not greater or equal zero.
.
Standard_EXPORT Standard_Integer NbSplits () const
 Returns the number of knots corresponding to the splitting.
.
Standard_EXPORT void Splitting (TColStd_Array1OfInteger &SplitValues) const
 Returns the indexes of the BSpline curve knots corresponding to
the splitting.
Raised if the length of SplitValues is not equal to NbSPlit.
.
Standard_EXPORT Standard_Integer SplitValue (const Standard_Integer Index) const
 Returns the index of the knot corresponding to the splitting
of range Index.
Raised if Index < 1 or Index > NbSplits
.

Private Attributes

Handle_TColStd_HArray1OfInteger splitIndexes


Constructor & Destructor Documentation

Standard_EXPORT Law_BSplineKnotSplitting::Law_BSplineKnotSplitting const Handle(Law_BSpline)&  BasisLaw,
const Standard_Integer  ContinuityRange
 


Member Function Documentation

Standard_EXPORT Standard_Integer Law_BSplineKnotSplitting::NbSplits  )  const
 

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

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

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

Standard_EXPORT void Law_BSplineKnotSplitting::Splitting TColStd_Array1OfInteger &  SplitValues  )  const
 

Standard_EXPORT Standard_Integer Law_BSplineKnotSplitting::SplitValue const Standard_Integer  Index  )  const
 


Field Documentation

Handle_TColStd_HArray1OfInteger Law_BSplineKnotSplitting::splitIndexes [private]
 


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