Public Member Functions | Protected Attributes | Private Member Functions
vcsl_cartesian Class Reference

Cartesian coordinate system. More...

#include <vcsl_cartesian.h>

Inheritance diagram for vcsl_cartesian:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~vcsl_cartesian ()
bool is_right_handed () const
 Are the axes of `this' right handed ?.
void set_right_handed (bool val)
 Set whether the coordinate system is right handed or not.
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'.
virtual const vcsl_spatialcast_to_spatial () const
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 Attributes

bool right_handed_
 True if the axes of `this' are right handed.
vcl_vector< vcsl_axis_sptraxes_
 List of axes.

Private Member Functions

 vcsl_cartesian ()
 Default constructor. Sets itself right handed.

Detailed Description

Cartesian coordinate system.

The axes of a cartesian coordinate system are orthogonal and normally right handed. This is not necessarily a spatial coordinate system.

Definition at line 20 of file vcsl_cartesian.h.


Constructor & Destructor Documentation

vcsl_cartesian::vcsl_cartesian ( ) [inline, private]

Default constructor. Sets itself right handed.

Definition at line 28 of file vcsl_cartesian.h.

virtual vcsl_cartesian::~vcsl_cartesian ( ) [inline, virtual]

Definition at line 32 of file vcsl_cartesian.h.


Member Function Documentation

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.

virtual const vcsl_spatial* vcsl_coordinate_system::cast_to_spatial ( ) const [inline, virtual, inherited]

Reimplemented in vcsl_spatial.

Definition at line 61 of file vcsl_coordinate_system.h.

int vcsl_coordinate_system::dimensionality ( ) const [inline, inherited]

Number of axes.

Definition at line 49 of file vcsl_coordinate_system.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_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_cartesian::is_right_handed ( ) const [inline]

Are the axes of `this' right handed ?.

Definition at line 39 of file vcsl_cartesian.h.

void vcsl_cartesian::set_right_handed ( bool  val) [inline]

Set whether the coordinate system is right handed or not.

Definition at line 46 of file vcsl_cartesian.h.

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.


Member Data Documentation

vcl_vector<vcsl_axis_sptr> vcsl_coordinate_system::axes_ [protected, inherited]

List of axes.

Definition at line 83 of file vcsl_coordinate_system.h.

True if the axes of `this' are right handed.

Definition at line 54 of file vcsl_cartesian.h.


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