Open CASCADE Technology  7.3.0
Public Member Functions

NCollection_Lerp< gp_Trsf > Class Template Reference

Linear interpolation tool for transformation defined by gp_Trsf. More...

#include <gp_TrsfNLerp.hxx>

Public Member Functions

 NCollection_Lerp ()
 Empty constructor. More...
 
 NCollection_Lerp (const gp_Trsf &theStart, const gp_Trsf &theEnd)
 Main constructor. More...
 
void Init (const gp_Trsf &theStart, const gp_Trsf &theEnd)
 Initialize values. More...
 
void Interpolate (double theT, gp_Trsf &theResult) const
 Compute interpolated value between two values. More...
 

Detailed Description

template<>
class NCollection_Lerp< gp_Trsf >

Linear interpolation tool for transformation defined by gp_Trsf.

In general case, there is a no well-defined interpolation between arbitrary transformations, because desired transient values might vary depending on application needs.

This tool performs independent interpolation of three logical transformation parts - rotation (using gp_QuaternionNLerp), translation and scale factor. Result of such interpolation might be not what application expects, thus this tool might be considered for simple cases or for interpolating between small intervals.

Constructor & Destructor Documentation

◆ NCollection_Lerp() [1/2]

Empty constructor.

◆ NCollection_Lerp() [2/2]

NCollection_Lerp< gp_Trsf >::NCollection_Lerp ( const gp_Trsf theStart,
const gp_Trsf theEnd 
)
inline

Main constructor.

Member Function Documentation

◆ Init()

void NCollection_Lerp< gp_Trsf >::Init ( const gp_Trsf theStart,
const gp_Trsf theEnd 
)
inline

Initialize values.

◆ Interpolate()

void NCollection_Lerp< gp_Trsf >::Interpolate ( double  theT,
gp_Trsf theResult 
) const
inline

Compute interpolated value between two values.

Parameters
theTnormalized interpolation coefficient within [0, 1] range, with 0 pointing to first value and 1 to the second value.
theResult[out] interpolated value

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