Open CASCADE Technology  7.7.0.dev
Public Member Functions

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

#include <Law_Interpolate.hxx>

Public Member Functions

 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. More...
 
 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. More...
 
void Load (const Standard_Real InitialTangent, const Standard_Real FinalTangent)
 loads initial and final tangents if any. More...
 
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. More...
 
void ClearTangents ()
 Clears the tangents if any. More...
 
void Perform ()
 Makes the interpolation. More...
 
const Handle< Law_BSpline > & Curve () const
 
Standard_Boolean IsDone () const
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ Law_Interpolate() [1/2]

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

◆ Law_Interpolate() [2/2]

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

Member Function Documentation

◆ ClearTangents()

void Law_Interpolate::ClearTangents ( )

Clears the tangents if any.

◆ Curve()

const Handle< Law_BSpline >& Law_Interpolate::Curve ( ) const

◆ IsDone()

Standard_Boolean Law_Interpolate::IsDone ( ) const

◆ Load() [1/2]

void Law_Interpolate::Load ( const Standard_Real  InitialTangent,
const Standard_Real  FinalTangent 
)

loads initial and final tangents if any.

◆ Load() [2/2]

void Law_Interpolate::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.

◆ Perform()

void Law_Interpolate::Perform ( )

Makes the interpolation.


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