Open CASCADE Technology 7.8.2.dev
NCollection_Lerp< gp_Trsf > Class Reference

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

#include <gp_TrsfNLerp.hxx>

Public Member Functions

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

Detailed Description

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: