Affine rotation. More...
#include <vcsl_displacement.h>

Public Member Functions | |
| vcsl_displacement ()=default | |
| ~vcsl_displacement () override=default | |
| bool | is_valid () const override |
| Is ‘this’ correctly set ?. More... | |
| void | set_static_point (vnl_vector< double > const &new_point) |
| Set the point for a static displacement. More... | |
| void | set_point (list_of_vectors const &new_point) |
| Set the variation of the point of the axis along the time. More... | |
| list_of_vectors | point () const |
| Return the variation of the point of the axis along the time. More... | |
| vnl_vector< double > | execute (const vnl_vector< double > &v, double time) const override |
| Image of ‘v’ by ‘this’. More... | |
| vnl_vector< double > | inverse (const vnl_vector< double > &v, double time) const override |
| Image of ‘v’ by the inverse of ‘this’. More... | |
| bool | is_invertible (double) const override |
| Is ‘this’ invertible at time ‘time’?. More... | |
| bool | are_unit_axes (list_of_vectors const &new_axis) const |
| Are ‘new_vector’ a list of unit vectors ?. More... | |
| bool | is_2d () const |
| Is ‘this’ a 2D rotation ?. More... | |
| bool | is_3d () const |
| Is ‘this’ a 3D rotation ?. More... | |
| void | set_2d () |
| Set ‘this’ as a 2D rotation. More... | |
| void | set_3d () |
| Set ‘this’ as a 3D rotation. More... | |
| void | set_static_2d (double new_angle) |
| Set the parameters of a static 2D rotation. More... | |
| void | set_static (double new_angle, vnl_vector< double > const &new_axis) |
| Set the parameters of a static rotation. More... | |
| void | set_static () |
| Empty the time clock and interpolators, thereby making the transf static. More... | |
| void | set_angle (list_of_scalars const &new_angle) |
| Set the angle variation along the time in radians. More... | |
| list_of_scalars | angle () const |
| Return the angle variation along the time in radians. More... | |
| void | set_axis (list_of_vectors const &new_axis) |
| Set the direction vector variation along the time. More... | |
| list_of_vectors | axis () const |
| Return the direction variation along the time. More... | |
| std::vector< double > | beat () const |
| Return the list of time clocks. More... | |
| unsigned int | duration () const |
| Return the time duration. More... | |
| std::vector< vcsl_interpolator > | interpolators () const |
| Return the list of interpolators. More... | |
| bool | valid_time (double time) const |
| Is ‘time’ between the two time bounds ?. More... | |
| int | matching_interval (double time) const |
| Return the index of the beat inferior or equal to ‘time’. More... | |
| void | set_beat (std::vector< double > const &new_beat) |
| Set the list of time clocks. More... | |
| void | set_interpolators (std::vector< vcsl_interpolator > const &i) |
| Set the list of interpolators. More... | |
| double | lsi (double v0, double v1, int index, double time) const |
| Linear interpolation on scalar values. More... | |
| vnl_vector< double > | lvi (const vnl_vector< double > &v0, const vnl_vector< double > &v1, int index, double time) const |
| Linear interpolation on vnl_vectors. More... | |
| vnl_matrix< double > | lmi (const vnl_matrix< double > &m0, const vnl_matrix< double > &m1, int index, double time) const |
| Linear interpolation on vnl_matrices. More... | |
| vnl_quaternion< double > | lqi (const vnl_quaternion< double > &v0, const vnl_quaternion< double > &v1, int index, double time) const |
| Linear interpolation on quaternions. More... | |
| void | ref () |
| void | unref () |
| long | get_references () const |
| bool | is_referenced () const |
Protected Member Functions | |
| vnl_vector< double > | vector_value (double time) const |
| Compute the value of the vector at time ‘time’. More... | |
| vnl_quaternion< double > | quaternion (double time) const |
| Compute the value of the quaternion at time ‘time’. More... | |
Protected Attributes | |
| list_of_vectors | point_ |
| Variation of the point of the axis along the time. More... | |
| bool | mode_2d_ |
| False if ‘this’ is a 3D rotation, true if ‘this’ is a 2D rotation. More... | |
| list_of_scalars | angle_ |
| Angle variation along the time in radians. More... | |
| list_of_vectors | axis_ |
| Direction vector variation along the time. More... | |
| std::vector< double > | beat_ |
| List of time clocks. More... | |
| std::vector< vcsl_interpolator > | interpolator_ |
Affine rotation.
A displacement rotates a point with a given angle around an axis defined by a point and a unit vector
Definition at line 23 of file vcsl_displacement.h.
|
default |
|
overridedefault |
|
inlineinherited |
Return the angle variation along the time in radians.
Definition at line 89 of file vcsl_rotation.h.
|
inherited |
Are ‘new_vector’ a list of unit vectors ?.
Definition at line 11 of file vcsl_rotation.cxx.
|
inlineinherited |
Return the direction variation along the time.
Definition at line 96 of file vcsl_rotation.h.
|
inlineinherited |
Return the list of time clocks.
Definition at line 65 of file vcsl_spatial_transformation.h.
|
inlineinherited |
Return the time duration.
Definition at line 68 of file vcsl_spatial_transformation.h.
|
overridevirtual |
Image of ‘v’ by ‘this’.
REQUIRE: is_valid() Pure virtual function of vcsl_spatial_transformation
Implements vcsl_spatial_transformation.
Definition at line 21 of file vcsl_displacement.cxx.
|
inlineinherited |
Return the list of interpolators.
Definition at line 71 of file vcsl_spatial_transformation.h.
|
overridevirtual |
Image of ‘v’ by the inverse of ‘this’.
REQUIRE: is_valid() REQUIRE: is_invertible(time) Pure virtual function of vcsl_spatial_transformation
Implements vcsl_spatial_transformation.
Definition at line 60 of file vcsl_displacement.cxx.
|
inlineinherited |
Is ‘this’ a 2D rotation ?.
Definition at line 60 of file vcsl_rotation.h.
|
inlineinherited |
Is ‘this’ a 3D rotation ?.
Definition at line 63 of file vcsl_rotation.h.
|
inlineoverridevirtualinherited |
Is ‘this’ invertible at time ‘time’?.
REQUIRE: valid_time(time) Pure virtual function of vcsl_spatial_transformation
Implements vcsl_spatial_transformation.
Definition at line 47 of file vcsl_rotation.h.
|
inlineoverridevirtual |
Is ‘this’ correctly set ?.
Virtual function of vcsl_spatial_transformation
Reimplemented from vcsl_spatial_transformation.
Definition at line 43 of file vcsl_displacement.h.
|
inherited |
Linear interpolation on vnl_matrices.
Definition at line 94 of file vcsl_spatial_transformation.cxx.
|
inherited |
Linear interpolation on quaternions.
Definition at line 121 of file vcsl_spatial_transformation.cxx.
|
inherited |
Linear interpolation on scalar values.
Definition at line 53 of file vcsl_spatial_transformation.cxx.
|
inherited |
Linear interpolation on vnl_vectors.
Definition at line 69 of file vcsl_spatial_transformation.cxx.
|
inherited |
Return the index of the beat inferior or equal to ‘time’.
REQUIRE: valid_time(time)
Definition at line 22 of file vcsl_spatial_transformation.cxx.
|
inline |
Return the variation of the point of the axis along the time.
Definition at line 57 of file vcsl_displacement.h.
|
protectedinherited |
Compute the value of the quaternion at time ‘time’.
Definition at line 122 of file vcsl_rotation.cxx.
|
inlineinherited |
Set ‘this’ as a 2D rotation.
Definition at line 70 of file vcsl_rotation.h.
|
inlineinherited |
Set ‘this’ as a 3D rotation.
Definition at line 73 of file vcsl_rotation.h.
|
inlineinherited |
Set the angle variation along the time in radians.
Definition at line 86 of file vcsl_rotation.h.
|
inherited |
Set the direction vector variation along the time.
REQUIRE: are_unit_vectors(new_vector)
Definition at line 50 of file vcsl_rotation.cxx.
|
inlineinherited |
Set the list of time clocks.
Definition at line 109 of file vcsl_spatial_transformation.h.
|
inlineinherited |
Set the list of interpolators.
Definition at line 112 of file vcsl_spatial_transformation.h.
|
inline |
Set the variation of the point of the axis along the time.
Definition at line 54 of file vcsl_displacement.h.
|
inherited |
Set the parameters of a static rotation.
Definition at line 37 of file vcsl_rotation.cxx.
|
inherited |
Empty the time clock and interpolators, thereby making the transf static.
Definition at line 44 of file vcsl_spatial_transformation.cxx.
|
inherited |
Set the parameters of a static 2D rotation.
Definition at line 27 of file vcsl_rotation.cxx.
| void vcsl_displacement::set_static_point | ( | vnl_vector< double > const & | new_point | ) |
Set the point for a static displacement.
Definition at line 11 of file vcsl_displacement.cxx.
|
inherited |
Is ‘time’ between the two time bounds ?.
Definition at line 12 of file vcsl_spatial_transformation.cxx.
|
protected |
Compute the value of the vector at time ‘time’.
Definition at line 98 of file vcsl_displacement.cxx.
|
protectedinherited |
Angle variation along the time in radians.
Definition at line 125 of file vcsl_rotation.h.
|
protectedinherited |
Direction vector variation along the time.
Definition at line 128 of file vcsl_rotation.h.
|
protectedinherited |
List of time clocks.
Definition at line 147 of file vcsl_spatial_transformation.h.
|
protectedinherited |
Definition at line 148 of file vcsl_spatial_transformation.h.
|
protectedinherited |
False if ‘this’ is a 3D rotation, true if ‘this’ is a 2D rotation.
Definition at line 122 of file vcsl_rotation.h.
|
protected |
Variation of the point of the axis along the time.
Definition at line 81 of file vcsl_displacement.h.
1.8.15