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

ModelingAlgorithms
TKGeomAlgo
Law


Law_Interpolate Class Reference

This class is used to interpolate a BsplineCurve
passing through an array of points, with a C2
Continuity if tangency is not requested at the point.
If tangency is requested at the point the continuity
will be C1. If Perodicity is requested the curve will
be closed and the junction will be the first point
given. The curve will than be only C1


.

#include <Law_Interpolate.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_Interpolate (const Handle(TColStd_HArray1OfReal)&Points, const Standard_Boolean PeriodicFlag, const Standard_Real Tolerance)
 Tolerance is to check if the points are not too close
to one an other. It is also used to check if the
tangent vector is not too small. There should be at
least 2 points. If PeriodicFlag is True then the curve
will be periodic be periodic
.
Standard_EXPORT Law_Interpolate (const Handle(TColStd_HArray1OfReal)&Points, const Handle(TColStd_HArray1OfReal)&Parameters, const Standard_Boolean PeriodicFlag, const Standard_Real Tolerance)
 Tolerance is to check if the points are not too close
to one an other. It is also used to check if the
tangent vector is not too small. There should be at
least 2 points. If PeriodicFlag is True then the curve
will be periodic be periodic
.
Standard_EXPORT void Load (const Standard_Real InitialTangent, const Standard_Real FinalTangent)
 loads initial and final tangents if any.

Standard_EXPORT void Load (const TColStd_Array1OfReal &Tangents, const Handle(TColStd_HArray1OfBoolean)&TangentFlags)
 loads the tangents. We should have as many tangents as
they are points in the array if TangentFlags.Value(i)
is Standard_True use the tangent Tangents.Value(i)
otherwise the tangent is not constrained.


Standard_EXPORT void ClearTangents ()
 Clears the tangents if any
.
Standard_EXPORT void Perform ()
 Makes the interpolation
.
Standard_EXPORT const Handle_Law_BSpline & Curve () const
Standard_EXPORT Standard_Boolean IsDone () const

Private Member Functions

Standard_EXPORT void PerformNonPeriodic ()
 Interpolates in a non periodic fashion.
.
Standard_EXPORT void PerformPeriodic ()
 Interpolates in a C1 periodic fashion.
.

Private Attributes

Standard_Real myTolerance
Handle_TColStd_HArray1OfReal myPoints
Standard_Boolean myIsDone
Handle_Law_BSpline myCurve
Handle_TColStd_HArray1OfReal myTangents
Handle_TColStd_HArray1OfBoolean myTangentFlags
Handle_TColStd_HArray1OfReal myParameters
Standard_Boolean myPeriodic
Standard_Boolean myTangentRequest


Constructor & Destructor Documentation

Standard_EXPORT Law_Interpolate::Law_Interpolate const Handle(TColStd_HArray1OfReal)&  Points,
const Standard_Boolean  PeriodicFlag,
const Standard_Real  Tolerance
 

Standard_EXPORT Law_Interpolate::Law_Interpolate const Handle(TColStd_HArray1OfReal)&  Points,
const Handle(TColStd_HArray1OfReal)&  Parameters,
const Standard_Boolean  PeriodicFlag,
const Standard_Real  Tolerance
 


Member Function Documentation

Standard_EXPORT void Law_Interpolate::ClearTangents  ) 
 

Standard_EXPORT const Handle_Law_BSpline& Law_Interpolate::Curve  )  const
 

Standard_EXPORT Standard_Boolean Law_Interpolate::IsDone  )  const
 

Standard_EXPORT void Law_Interpolate::Load const TColStd_Array1OfReal &  Tangents,
const Handle(TColStd_HArray1OfBoolean)&  TangentFlags
 

Standard_EXPORT void Law_Interpolate::Load const Standard_Real  InitialTangent,
const Standard_Real  FinalTangent
 

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

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

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

Standard_EXPORT void Law_Interpolate::Perform  ) 
 

Standard_EXPORT void Law_Interpolate::PerformNonPeriodic  )  [private]
 

Standard_EXPORT void Law_Interpolate::PerformPeriodic  )  [private]
 


Field Documentation

Handle_Law_BSpline Law_Interpolate::myCurve [private]
 

Standard_Boolean Law_Interpolate::myIsDone [private]
 

Handle_TColStd_HArray1OfReal Law_Interpolate::myParameters [private]
 

Standard_Boolean Law_Interpolate::myPeriodic [private]
 

Handle_TColStd_HArray1OfReal Law_Interpolate::myPoints [private]
 

Handle_TColStd_HArray1OfBoolean Law_Interpolate::myTangentFlags [private]
 

Standard_Boolean Law_Interpolate::myTangentRequest [private]
 

Handle_TColStd_HArray1OfReal Law_Interpolate::myTangents [private]
 

Standard_Real Law_Interpolate::myTolerance [private]
 


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