N-Dimensional vector with homogeneous coordinates. More...
#include <h_vec.hh>

Public Types | |
| enum | |
| enum | { dim = d } |
Dimension is the 'natural' one (3 for 3D), not the one of the vector (dim + 1). More... | |
| typedef Object< void > | category |
| typedef C | coord |
| typedef C | enc [n] |
| typedef C | equiv [n] |
| typedef vec< n, C > | exact_t |
Public Member Functions | |
| h_vec () | |
| Constructor without argument. | |
| h_vec (const vec< d+1, C > &other) | |
| Constructor with the underlying vector. | |
| const vec< n, C > & | normalize () |
| operator mat< n, 1, U > () const | |
| Conversion to a matrix. | |
| h_vec & | operator= (const vec< d+1, C > &rhs) |
| const C & | operator[] (unsigned i) const |
| C & | operator[] (unsigned i) |
| void | set_all (const C &val) |
| unsigned | size () const |
| mat< 1, n, C > | t () const |
| Transposition. | |
| algebra::h_vec< n, C > | to_h_vec () const |
| vec< d, C > | to_vec () const |
| Back to the natural (non-homogeneous) space. | |
Static Public Attributes | |
| static const vec< n, C > | origin |
| Origin value. | |
| static const vec< n, C > | zero |
| Zero value. | |
Protected Attributes | |
| C | data_ [n] |
N-Dimensional vector with homogeneous coordinates.
Definition at line 94 of file h_vec.hh.
typedef Object<void> mln::Object< vec< n, C > >::category [inherited] |
typedef C mln::algebra::vec< n, C >::coord [inherited] |
Definition at line 186 of file algebra/vec.hh.
typedef C mln::algebra::vec< n, C >::enc[n] [inherited] |
Definition at line 184 of file algebra/vec.hh.
typedef C mln::algebra::vec< n, C >::equiv[n] [inherited] |
Definition at line 183 of file algebra/vec.hh.
typedef vec< n, C > mln::Object< vec< n, C > >::exact_t [inherited] |
anonymous enum [inherited] |
Definition at line 187 of file algebra/vec.hh.
| anonymous enum |
| mln::algebra::h_vec< d, C >::h_vec | ( | ) | [inline] |
Constructor without argument.
Definition at line 117 of file h_vec.hh.
References mln::algebra::internal::vec_base_< n, C >::data_, and mln::literal::one.
| mln::algebra::h_vec< d, C >::h_vec | ( | const vec< d+1, C > & | other | ) | [inline] |
| const vec<n, C >& mln::algebra::vec< n, C >::normalize | ( | ) | [inherited] |
| mln::algebra::vec< n, C >::operator mat< n, 1, U > | ( | ) | const [inherited] |
Conversion to a matrix.
| h_vec< d, C > & mln::algebra::h_vec< d, C >::operator= | ( | const vec< d+1, C > & | rhs | ) | [inline] |
| const C & mln::algebra::vec< n, C >::operator[] | ( | unsigned | i | ) | const [inherited] |
| C & mln::algebra::vec< n, C >::operator[] | ( | unsigned | i | ) | [inherited] |
| void mln::algebra::vec< n, C >::set_all | ( | const C & | val | ) | [inherited] |
| unsigned mln::algebra::vec< n, C >::size | ( | ) | const [inherited] |
| mat<1, n, C > mln::algebra::vec< n, C >::t | ( | ) | const [inherited] |
Transposition.
| algebra::h_vec<n, C > mln::algebra::vec< n, C >::to_h_vec | ( | ) | const [inherited] |
| vec< d, C > mln::algebra::h_vec< d, C >::to_vec | ( | ) | const [inline] |
Back to the natural (non-homogeneous) space.
Definition at line 145 of file h_vec.hh.
References mln::algebra::internal::vec_base_< n, C >::data_.
Referenced by mln::fun::internal::x2x_linear_impl_< T2::result, T2::data_t, E >::operator()().
C mln::algebra::internal::vec_base_< n, C >::data_[n] [protected, inherited] |
Definition at line 111 of file algebra/vec.hh.
Referenced by mln::algebra::h_vec< d, C >::h_vec(), and mln::algebra::h_vec< d, C >::to_vec().
const vec<n, C > mln::algebra::vec< n, C >::origin [static, inherited] |
Origin value.
Definition at line 247 of file algebra/vec.hh.
const vec<n, C > mln::algebra::vec< n, C >::zero [static, inherited] |
Zero value.
Definition at line 244 of file algebra/vec.hh.
1.7.1