3D coordinate system specified by distance rho, angle theta and distance z. More...
#include <vcsl_cylindrical.h>

| Public Member Functions | |
| vcsl_cylindrical () | |
| virtual | ~vcsl_cylindrical () | 
| virtual const vcsl_cylindrical * | cast_to_cylindrical () const | 
| virtual const vcsl_spatial * | cast_to_spatial () const | 
| virtual const vcsl_cartesian_2d * | cast_to_cartesian_2d () const | 
| virtual const vcsl_polar * | cast_to_polar () const | 
| virtual const vcsl_cartesian_3d * | cast_to_cartesian_3d () const | 
| virtual const vcsl_spherical * | cast_to_spherical () const | 
| vcl_vector< double > | beat () const | 
| Return the list of time clocks. | |
| unsigned int | duration () const | 
| Return the time duration. | |
| vcl_vector< vcsl_spatial_sptr > | parent () const | 
| Return the list of parent coordinate system along the time. | |
| vcl_vector < vcsl_spatial_transformation_sptr > | motion () const | 
| Return the list of transformations along the time. | |
| bool | valid_time (double time) const | 
| Is `time' between the two time bounds ?. | |
| void | set_beat (vcl_vector< double > const &new_beat) | 
| Set the list of time clocks. | |
| void | set_parent (vcl_vector< vcsl_spatial_sptr > const &new_parent) | 
| Set the list of parent coordinate system along the time. | |
| void | set_motion (vcl_vector< vcsl_spatial_transformation_sptr > const &m) | 
| Set the list of transformations along the time. | |
| void | set_unique (const vcsl_spatial_sptr &new_parent, const vcsl_spatial_transformation_sptr &new_motion) | 
| Set the unique parent and the unique motion. | |
| virtual int | matching_interval (double time) const | 
| Return the index of the beat inferior or equal to `time'. | |
| virtual bool | path_from_local_to_cs_exists (const vcsl_spatial_sptr &other, double time) | 
| Does a path from `this' to `other' exist ?. | |
| virtual bool | is_absolute (double time) const | 
| Is `this' an absolute spatial coordinate system at time `time'?. | |
| virtual vnl_vector< double > | from_local_to_cs (const vnl_vector< double > &v, const vcsl_spatial_sptr &other, double time) | 
| Return v but expressed in the spatial coordinate system `other'. | |
| virtual void | set_graph (const vcsl_graph_sptr &new_graph) | 
| int | dimensionality () const | 
| Number of axes. | |
| bool | valid_axis (unsigned int i) const | 
| Is `i' an index on an axis ?. | |
| vcsl_axis_sptr | axis (int i) const | 
| Return the axis `i'. | |
| vnl_vector< double > | from_cs_to_standard_units (const vnl_vector< double > &v) const | 
| Convert `v', expressed with cs units, to standard units. | |
| vnl_vector< double > | from_standard_units_to_cs (const vnl_vector< double > &v) const | 
| Convert `v', expressed with standard units, to cs units. | |
| void | ref () | 
| void | unref () | 
| int | get_references () const | 
| bool | is_referenced () const | 
| Protected Member Functions | |
| virtual bool | recursive_path_from_local_to_cs_exists (const vcsl_spatial_sptr &other, double time) | 
| Does a path from `this' to `other' exist ?. | |
| virtual void | path_from_local_to_cs (const vcsl_spatial_sptr &other, double time, vcl_vector< vcsl_spatial_transformation_sptr > &path, VCSL_SPATIAL_VECTOR_BOOL &sens) | 
| Find the sequence of transformations from `this' to `other'. | |
| virtual bool | recursive_path_from_local_to_cs (const vcsl_spatial_sptr &other, double time, vcl_vector< vcsl_spatial_transformation_sptr > &path, VCSL_SPATIAL_VECTOR_BOOL &sens) | 
| Find the sequence of transformations from `this' to `other'. | |
| Protected Attributes | |
| vcl_vector< vcsl_spatial_sptr > | parent_ | 
| successive parents of `this' along the time. | |
| vcl_vector< double > | beat_ | 
| Clock times. | |
| vcl_vector < vcsl_spatial_transformation_sptr > | motion_ | 
| successive transformations from `this' to `parent' along the time. | |
| vcl_vector< vcsl_spatial_sptr > | potential_children_ | 
| List of spatial coordinate system that can be child of `this' at a time. | |
| vcsl_graph_sptr | graph_ | 
| List of all the spatial coordinate system of the graph. | |
| bool | reached_ | 
| True if `this' is already reached during the search path algorithm. | |
| vcl_vector< vcsl_axis_sptr > | axes_ | 
| List of axes. | |
3D coordinate system specified by distance rho, angle theta and distance z.
Definition at line 18 of file vcsl_cylindrical.h.
| vcsl_cylindrical::vcsl_cylindrical | ( | ) | 
Definition at line 9 of file vcsl_cylindrical.cxx.
| virtual vcsl_cylindrical::~vcsl_cylindrical | ( | ) |  [inline, virtual] | 
Definition at line 30 of file vcsl_cylindrical.h.
| vcsl_axis_sptr vcsl_coordinate_system::axis | ( | int | i | ) | const  [inherited] | 
Return the axis `i'.
REQUIRE: valid_axis(i)
Definition at line 11 of file vcsl_coordinate_system.cxx.
| vcl_vector<double> vcsl_spatial::beat | ( | ) | const  [inline, inherited] | 
Return the list of time clocks.
Definition at line 75 of file vcsl_spatial.h.
| virtual const vcsl_cartesian_2d* vcsl_spatial::cast_to_cartesian_2d | ( | ) | const  [inline, virtual, inherited] | 
Reimplemented in vcsl_cartesian_2d.
Definition at line 64 of file vcsl_spatial.h.
| virtual const vcsl_cartesian_3d* vcsl_spatial::cast_to_cartesian_3d | ( | ) | const  [inline, virtual, inherited] | 
Reimplemented in vcsl_cartesian_3d.
Definition at line 66 of file vcsl_spatial.h.
| virtual const vcsl_cylindrical* vcsl_cylindrical::cast_to_cylindrical | ( | ) | const  [inline, virtual] | 
Reimplemented from vcsl_spatial.
Definition at line 36 of file vcsl_cylindrical.h.
| virtual const vcsl_polar* vcsl_spatial::cast_to_polar | ( | ) | const  [inline, virtual, inherited] | 
Reimplemented in vcsl_polar.
Definition at line 65 of file vcsl_spatial.h.
| virtual const vcsl_spatial* vcsl_spatial::cast_to_spatial | ( | ) | const  [inline, virtual, inherited] | 
Reimplemented from vcsl_coordinate_system.
Definition at line 63 of file vcsl_spatial.h.
| virtual const vcsl_spherical* vcsl_spatial::cast_to_spherical | ( | ) | const  [inline, virtual, inherited] | 
Reimplemented in vcsl_spherical.
Definition at line 68 of file vcsl_spatial.h.
| int vcsl_coordinate_system::dimensionality | ( | ) | const  [inline, inherited] | 
Number of axes.
Definition at line 49 of file vcsl_coordinate_system.h.
| unsigned int vcsl_spatial::duration | ( | ) | const  [inline, inherited] | 
Return the time duration.
Definition at line 78 of file vcsl_spatial.h.
| vnl_vector< double > vcsl_coordinate_system::from_cs_to_standard_units | ( | const vnl_vector< double > & | v | ) | const  [inherited] | 
Convert `v', expressed with cs units, to standard units.
REQUIRE: v.size()==dimensionality()
Definition at line 24 of file vcsl_coordinate_system.cxx.
| vnl_vector< double > vcsl_spatial::from_local_to_cs | ( | const vnl_vector< double > & | v, | 
| const vcsl_spatial_sptr & | other, | ||
| double | time | ||
| ) |  [virtual, inherited] | 
Return v but expressed in the spatial coordinate system `other'.
REQUIRE: path_from_local_to_cs_exists(other,time)
Definition at line 290 of file vcsl_spatial.cxx.
| vnl_vector< double > vcsl_coordinate_system::from_standard_units_to_cs | ( | const vnl_vector< double > & | v | ) | const  [inherited] | 
Convert `v', expressed with standard units, to cs units.
REQUIRE: v.size()==dimensionality()
Definition at line 41 of file vcsl_coordinate_system.cxx.
| bool vcsl_spatial::is_absolute | ( | double | time | ) | const  [virtual, inherited] | 
Is `this' an absolute spatial coordinate system at time `time'?.
REQUIRE: valid_time(time)
Definition at line 268 of file vcsl_spatial.cxx.
| int vcsl_spatial::matching_interval | ( | double | time | ) | const  [virtual, inherited] | 
Return the index of the beat inferior or equal to `time'.
REQUIRE: parent().size()!=0 REQUIRE: valid_time(time)
Definition at line 71 of file vcsl_spatial.cxx.
| vcl_vector<vcsl_spatial_transformation_sptr> vcsl_spatial::motion | ( | ) | const  [inline, inherited] | 
Return the list of transformations along the time.
Definition at line 84 of file vcsl_spatial.h.
| vcl_vector<vcsl_spatial_sptr> vcsl_spatial::parent | ( | ) | const  [inline, inherited] | 
Return the list of parent coordinate system along the time.
Definition at line 81 of file vcsl_spatial.h.
| void vcsl_spatial::path_from_local_to_cs | ( | const vcsl_spatial_sptr & | other, | 
| double | time, | ||
| vcl_vector< vcsl_spatial_transformation_sptr > & | path, | ||
| VCSL_SPATIAL_VECTOR_BOOL & | sens | ||
| ) |  [protected, virtual, inherited] | 
Find the sequence of transformations from `this' to `other'.
REQUIRE: path.size()==0 and sens.size()==0 REQUIRE: path_from_local_to_cs_exists()
Definition at line 165 of file vcsl_spatial.cxx.
| bool vcsl_spatial::path_from_local_to_cs_exists | ( | const vcsl_spatial_sptr & | other, | 
| double | time | ||
| ) |  [virtual, inherited] | 
Does a path from `this' to `other' exist ?.
Definition at line 94 of file vcsl_spatial.cxx.
| bool vcsl_spatial::recursive_path_from_local_to_cs | ( | const vcsl_spatial_sptr & | other, | 
| double | time, | ||
| vcl_vector< vcsl_spatial_transformation_sptr > & | path, | ||
| VCSL_SPATIAL_VECTOR_BOOL & | sens | ||
| ) |  [protected, virtual, inherited] | 
Find the sequence of transformations from `this' to `other'.
Called only by path_from_local_to_cs()
Definition at line 186 of file vcsl_spatial.cxx.
| bool vcsl_spatial::recursive_path_from_local_to_cs_exists | ( | const vcsl_spatial_sptr & | other, | 
| double | time | ||
| ) |  [protected, virtual, inherited] | 
Does a path from `this' to `other' exist ?.
Called only by path_to_cs_exists()
Definition at line 106 of file vcsl_spatial.cxx.
| void vcsl_spatial::set_beat | ( | vcl_vector< double > const & | new_beat | ) |  [inline, inherited] | 
Set the list of time clocks.
Definition at line 94 of file vcsl_spatial.h.
| void vcsl_spatial::set_graph | ( | const vcsl_graph_sptr & | new_graph | ) |  [virtual, inherited] | 
Definition at line 319 of file vcsl_spatial.cxx.
| void vcsl_spatial::set_motion | ( | vcl_vector< vcsl_spatial_transformation_sptr > const & | m | ) |  [inline, inherited] | 
Set the list of transformations along the time.
Definition at line 100 of file vcsl_spatial.h.
| void vcsl_spatial::set_parent | ( | vcl_vector< vcsl_spatial_sptr > const & | new_parent | ) |  [inherited] | 
Set the list of parent coordinate system along the time.
Definition at line 30 of file vcsl_spatial.cxx.
| void vcsl_spatial::set_unique | ( | const vcsl_spatial_sptr & | new_parent, | 
| const vcsl_spatial_transformation_sptr & | new_motion | ||
| ) |  [inherited] | 
Set the unique parent and the unique motion.
Can be called to initialize a CS for the first time. Dynamically allocates space for parent_ and motion_. Makes new_parent and new_motion the first element of each, respectively.
Does not set beat_. Effectively, new_parent and new_motion are valid for all times. However, a subsequent call to set_beat() could add a list of clocks with a time corresponding to (*parent_)[0] and (*motion_)[0].
| new_parent | CS that 'this' is derived from. | 
| new_motion | The transformation from new_parent to 'this'. | 
Definition at line 57 of file vcsl_spatial.cxx.
| bool vcsl_coordinate_system::valid_axis | ( | unsigned int | i | ) | const  [inline, inherited] | 
Is `i' an index on an axis ?.
Definition at line 52 of file vcsl_coordinate_system.h.
| bool vcsl_spatial::valid_time | ( | double | time | ) | const  [inherited] | 
Is `time' between the two time bounds ?.
Definition at line 19 of file vcsl_spatial.cxx.
| vcl_vector<vcsl_axis_sptr> vcsl_coordinate_system::axes_  [protected, inherited] | 
List of axes.
Definition at line 83 of file vcsl_coordinate_system.h.
| vcl_vector<double> vcsl_spatial::beat_  [protected, inherited] | 
Clock times.
Definition at line 179 of file vcsl_spatial.h.
| vcsl_graph_sptr vcsl_spatial::graph_  [protected, inherited] | 
List of all the spatial coordinate system of the graph.
Definition at line 188 of file vcsl_spatial.h.
| vcl_vector<vcsl_spatial_transformation_sptr> vcsl_spatial::motion_  [protected, inherited] | 
successive transformations from `this' to `parent' along the time.
Definition at line 182 of file vcsl_spatial.h.
| vcl_vector<vcsl_spatial_sptr> vcsl_spatial::parent_  [protected, inherited] | 
successive parents of `this' along the time.
Definition at line 176 of file vcsl_spatial.h.
| vcl_vector<vcsl_spatial_sptr> vcsl_spatial::potential_children_  [protected, inherited] | 
List of spatial coordinate system that can be child of `this' at a time.
Definition at line 185 of file vcsl_spatial.h.
| bool vcsl_spatial::reached_  [protected, inherited] | 
True if `this' is already reached during the search path algorithm.
Definition at line 191 of file vcsl_spatial.h.
 1.7.5.1
 1.7.5.1