Visualization Library 2.0.0
A lightweight C++ OpenGL middleware for 2D/3D graphics
|
[Download] [Tutorials] [All Classes] [Grouped Classes] |
The LinearInterpolator class is a template class that implements linear interpolation. More...
#include <LinearInterpolator.hpp>
Public Member Functions | |
LinearInterpolator () | |
LinearInterpolator (const std::vector< T > &path) | |
T | computePoint (float t) const |
Samples the path at the given point. The t parameter must be in the range 0.0 ... 1.0 included. More... | |
void | setPath (const std::vector< T > &path) |
The control points defining the Catmull-Rom spline. More... | |
const std::vector< T > & | path () const |
The control points defining the Catmull-Rom spline. More... | |
std::vector< T > & | path () |
The control points defining the Catmull-Rom spline. More... | |
Public Member Functions inherited from vl::Object | |
Object () | |
Constructor. More... | |
Object (const Object &other) | |
Copy constructor: copies the name, ref count mutex and user data. More... | |
Object & | operator= (const Object &other) |
Copy operator: copies the object's name, ref count mutex and user data. More... | |
const std::string & | objectName () const |
The name of the object, by default set to the object's class name. More... | |
void | setObjectName (const char *name) |
The name of the object, by default set to the object's class name in debug builds. More... | |
void | setObjectName (const std::string &name) |
The name of the object, by default set to the object's class name in debug builds. More... | |
void | setRefCountMutex (IMutex *mutex) |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
IMutex * | refCountMutex () |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
const IMutex * | refCountMutex () const |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
int | referenceCount () const |
Returns the number of references of an object. More... | |
void | incReference () const |
Increments the reference count of an object. More... | |
void | decReference () |
Decrements the reference count of an object and deletes it if both automaticDelete() is true the count reaches 0. More... | |
void | setAutomaticDelete (bool autodel_on) |
If set to true the Object is deleted when its reference count reaches 0. More... | |
bool | automaticDelete () const |
If set to true the Object is deleted when its reference count reaches 0. More... | |
template<class T > | |
T * | as () |
Casts an Object to the specified class. More... | |
template<class T > | |
const T * | as () const |
Casts an Object to the specified class. More... | |
Protected Attributes | |
std::vector< T > | mPath |
std::vector< T > | mLinearSpline |
Protected Attributes inherited from vl::Object | |
std::string | mObjectName |
IMutex * | mRefCountMutex |
int | mReferenceCount |
bool | mAutomaticDelete |
Additional Inherited Members | |
Protected Member Functions inherited from vl::Object | |
virtual | ~Object () |
The LinearInterpolator class is a template class that implements linear interpolation.
Definition at line 44 of file LinearInterpolator.hpp.
|
inline |
Definition at line 49 of file LinearInterpolator.hpp.
|
inline |
Definition at line 54 of file LinearInterpolator.hpp.
|
inline |
Samples the path at the given point. The t
parameter must be in the range 0.0 ... 1.0 included.
Definition at line 57 of file LinearInterpolator.hpp.
References vl::clamp(), and vl::LinearInterpolator< T >::mPath.
|
inline |
The control points defining the Catmull-Rom spline.
Definition at line 77 of file LinearInterpolator.hpp.
References vl::LinearInterpolator< T >::mPath.
Referenced by vl::LinearInterpolator< T >::setPath().
|
inline |
The control points defining the Catmull-Rom spline.
Definition at line 79 of file LinearInterpolator.hpp.
References vl::LinearInterpolator< T >::mPath.
|
inline |
The control points defining the Catmull-Rom spline.
Because of the Catmull-Rom formula the interpolated path must start and end with an extra control point (one on each side) and cannot have less than 4 control points.
Definition at line 75 of file LinearInterpolator.hpp.
References vl::LinearInterpolator< T >::mPath, and vl::LinearInterpolator< T >::path().
|
protected |
Definition at line 83 of file LinearInterpolator.hpp.
|
protected |
Definition at line 82 of file LinearInterpolator.hpp.
Referenced by vl::LinearInterpolator< T >::computePoint(), vl::LinearInterpolator< T >::path(), and vl::LinearInterpolator< T >::setPath().
Visualization Library 2.0.0 Reference Documentation
Updated on Wed Dec 23 2020 12:44:09.
© Copyright Michele Bosi. All rights reserved.