Basic Image AlgorithmS Library
2.8.0
|
class HomgPoint1D describes a point with 2 degrees of freedom in projective coordinates. More...
#include <Base/Geometry/HomgPoint1D.hh>
Public Types | |
typedef HOMGPOINT1D_TYPE | value_type |
Public Member Functions | |
void | Add (const HOMGPOINT1D_TYPE &scalar, Vector2< HOMGPOINT1D_TYPE > &dest) const |
Addition with a scalar, storing results in destionation vector. More... | |
void | Add (const Vector2< HOMGPOINT1D_TYPE > &argvec, Vector2< HOMGPOINT1D_TYPE > &destvec) const |
adding of two vectors, storing the result in destvec More... | |
void | AddIP (const HOMGPOINT1D_TYPE &scalar) |
Addition (in place) of an scalar. More... | |
void | AddIP (const Vector2< HOMGPOINT1D_TYPE > &argvec) |
in place adding More... | |
void | clear () |
stl conform interface More... | |
BIAS::Vector2< HOMGPOINT1D_TYPE > | CoordEuclideanToPolar () const |
coordinate transform compute the polar coordinates (radius, phi) for (this) given eucldian point (x,y). More... | |
BIAS::Vector2< HOMGPOINT1D_TYPE > | CoordEuclidianToPolar () const |
BIAS::Vector2< HOMGPOINT1D_TYPE > | CoordPolarToEuclidean () const |
coordinate transform compute the euclidean coord p=(x,y) for (this) given polarcoord (radius, phi) with radius : distance to center, phi : radian angle between positive x-axis and p=(x,y) assume (x,z) is in orthogonal right-hand-system. More... | |
BIAS::Vector2< HOMGPOINT1D_TYPE > | CoordPolarToEuclidian () const |
void | Copy (const HOMGPOINT1D_TYPE *pv) |
copy the array of vectorsize beginning at *T to this->data_ More... | |
double | Dist (const Vector2< HOMGPOINT1D_TYPE > &vec) const |
Return the euclidean distance of 2 vectors. More... | |
HOMGPOINT1D_TYPE | DistLInf (const Vector2< HOMGPOINT1D_TYPE > &vec) const |
Return the maximum distance of 2 vectors. More... | |
void | Divide (const HOMGPOINT1D_TYPE &scalar, Vector2< HOMGPOINT1D_TYPE > &dest) const |
Division with a scalar, storing results in destination vector. More... | |
void | Divide (const Vector2< HOMGPOINT1D_TYPE > &vec, Vector2< HOMGPOINT1D_TYPE > &dest) const |
void | DivideIP (const HOMGPOINT1D_TYPE &scalar) |
Division (in place) of an scalar. More... | |
void | DivideIP (const Vector2< HOMGPOINT1D_TYPE > &vec) |
elementwise Division (in place) by a vector More... | |
void | ElementwiseDivision (const Vector2< HOMGPOINT1D_TYPE > &argvec, Vector2< HOMGPOINT1D_TYPE > &destvec) const |
Vector2< HOMGPOINT1D_TYPE > | ElementwiseDivision (const Vector2< HOMGPOINT1D_TYPE > &argvec) const |
void | ElementwiseProduct (const Vector2< HOMGPOINT1D_TYPE > &argvec, Vector2< HOMGPOINT1D_TYPE > &destvec) const |
multiply two vectors elementwise, storing the result in destvec More... | |
Vector2< HOMGPOINT1D_TYPE > | ElementwiseProduct (const Vector2< HOMGPOINT1D_TYPE > &argvec) const |
void | Fill (HOMGPOINT1D_TYPEvalue) |
const HOMGPOINT1D_TYPE * | GetData () const |
get the data pointer the member function itself is const (before {..}) because it doesn't change the this object. More... | |
HOMGPOINT1D_TYPE * | GetData () |
HOMGPOINT1D_TYPE | GetEuclidean () const |
return the euclidean coordinates Only possible for w !=0 because w==0 describes points of infinity which are not in euclidean space (but may be interpreted as directions) More... | |
HOMGPOINT1D_TYPE | GetEuclidian () const |
const unsigned int | GetNumElements () const |
HOMGPOINT1D_TYPE & | GetW () |
HOMGPOINT1D_TYPE | GetW () const |
HOMGPOINT1D_TYPE & | GetX () |
read only access functions to use names instead of indizes More... | |
HOMGPOINT1D_TYPE | GetX () const |
HOMGPOINT1D_TYPE & | GetY () |
HOMGPOINT1D_TYPE | GetY () const |
HomgPoint1D () | |
default constructor More... | |
HomgPoint1D (const HomgPoint1D &p) | |
copy constructor More... | |
HomgPoint1D (const HOMGPOINT1D_TYPE &scalar) | |
assignment with a constant value for all elements More... | |
HomgPoint1D (const HOMGPOINT1D_TYPE *pv) | |
assignment with an array of values which is copied into this ones class members More... | |
HomgPoint1D (const HOMGPOINT1D_TYPE &v1, const HOMGPOINT1D_TYPE &v2) | |
assignment with 3 values which is copied into this ones class members More... | |
HomgPoint1D (char *s) | |
constructor with element assignment More... | |
void | Homogenize () |
homogenize class data member elements to W==1 by divison by W More... | |
bool | IsZero () const |
double | Length () const |
return euclidean length More... | |
bool | Load (const std::string &filename) |
method to load directly from a given filename. More... | |
HOMGPOINT1D_TYPE | max (const HOMGPOINT1D_TYPEa, const HOMGPOINT1D_TYPEb) const |
HOMGPOINT1D_TYPE | min (const HOMGPOINT1D_TYPEa, const HOMGPOINT1D_TYPEb) const |
void | Multiply (const HOMGPOINT1D_TYPE &scalar, Vector2< HOMGPOINT1D_TYPE > &dest) const |
Multiplication with a scalar, storing results in destionation vector. More... | |
void | MultiplyIP (const HOMGPOINT1D_TYPE &scalar) |
Multiplication (in place) of an scalar. More... | |
void | Normalize () |
Vector2<T>::Normalize. More... | |
HOMGPOINT1D_TYPE | NormL1 () const |
Return the L1 norm: |a| + |b|. More... | |
double | NormL2 () const |
Return the L2 norm: sqrt(a^2 + b^2) More... | |
bool | operator!= (const HomgPoint1D &arg) const |
Comparison operator 'not equal'. More... | |
bool | operator!= (const Vector2< HOMGPOINT1D_TYPE > &arg) const |
Comparison operator 'not equal'. More... | |
HomgPoint1D & | operator= (const Vector2< HOMGPOINT1D_TYPE > &vec) |
assignment operator set the elements of this HomgPoint to the element of vec More... | |
HomgPoint1D & | operator= (const HOMGPOINT1D_TYPE &scalar) |
assignment operator set the vector elementwise to scalar value More... | |
bool | operator== (const HomgPoint1D &arg) const |
Comparison operator 'equal'. More... | |
bool | operator== (const Vector2< HOMGPOINT1D_TYPE > &arg) const |
Comparison operator 'equal'. More... | |
const HOMGPOINT1D_TYPE & | operator[] (const int i) const |
access an element of the vector with 0-based indizes. More... | |
HOMGPOINT1D_TYPE & | operator[] (const int i) |
access an element of the vector with 0-based indizes. More... | |
void | OuterProduct (const BIAS::Vector2< HOMGPOINT1D_TYPE > &v, BIAS::Matrix2x2< HOMGPOINT1D_TYPE > &mat) const |
outer product, constructs a matrix (e.g. More... | |
Matrix2x2< HOMGPOINT1D_TYPE > | OuterProduct (const BIAS::Vector2< HOMGPOINT1D_TYPE > &v) const |
HOMGPOINT1D_TYPE & | Phi () |
polar form JW More... | |
HOMGPOINT1D_TYPE | Phi () const |
HOMGPOINT1D_TYPE & | Radius () |
polar form JW More... | |
HOMGPOINT1D_TYPE | Radius () const |
bool | Save (const std::string &filename) const |
method to save directly to a given filename. More... | |
void | ScalarProduct (const Vector2< HOMGPOINT1D_TYPE > &argvec, HOMGPOINT1D_TYPE &result) const |
scalar product of two vectors, storing the result in result More... | |
HOMGPOINT1D_TYPE | ScalarProduct (const Vector2< HOMGPOINT1D_TYPE > &argvec) const |
void | Set (const HOMGPOINT1D_TYPE &scalar) |
set all elements to a scalar value More... | |
void | Set (const HOMGPOINT1D_TYPE &x, const HOMGPOINT1D_TYPE &y) |
set elementwise with given scalar values More... | |
void | SetW (const HOMGPOINT1D_TYPEw) |
void | SetX (const HOMGPOINT1D_TYPEx) |
set (write) access functions to use names instead of indizes More... | |
void | SetY (const HOMGPOINT1D_TYPEy) |
void | SetZero () |
const unsigned int | Size () const |
const unsigned int | size () const |
double | SqrDist (const Vector2< HOMGPOINT1D_TYPE > &vec) const |
Return the squared distance of 2 vectors. More... | |
void | Sub (const HOMGPOINT1D_TYPE &scalar, Vector2< HOMGPOINT1D_TYPE > &dest) const |
Substraction with a scalar, storing results in destionation vector. More... | |
void | Sub (const Vector2< HOMGPOINT1D_TYPE > &argvec, Vector2< HOMGPOINT1D_TYPE > &destvec) const |
subtracting of two Vectors, storing the result in destvec More... | |
void | SubIP (const HOMGPOINT1D_TYPE &scalar) |
Substraction (in place) of an scalar. More... | |
void | SubIP (const Vector2< HOMGPOINT1D_TYPE > &argvec) |
in place subtraction More... | |
~HomgPoint1D () | |
destructor More... | |
Iterator Functions | |
HOMGPOINT1D_TYPEconst * | begin () const |
Iterator to first component of vector. More... | |
HOMGPOINT1D_TYPE * | begin () |
HOMGPOINT1D_TYPEconst * | end () const |
Iterator pointing to one element after the last vector element. More... | |
HOMGPOINT1D_TYPE * | end () |
Protected Attributes | |
HOMGPOINT1D_TYPE | data_ [VECTOR2SIZE] |
class HomgPoint1D describes a point with 2 degrees of freedom in projective coordinates.
manual loop unrolling is used if possible. The Vector is in row-major order (3 rows, 1 column) the indizes begin with zero (to size-1)
constructors and assignment operators are never inherited, so they are wrapped (or reimplemented) here.
Definition at line 56 of file HomgPoint1D.hh.
|
inherited |
Definition at line 82 of file Vector2.hh.
|
inline |
destructor
Definition at line 65 of file HomgPoint1D.hh.
|
inline |
default constructor
Definition at line 73 of file HomgPoint1D.hh.
|
inline |
copy constructor
Definition at line 80 of file HomgPoint1D.hh.
|
inlineexplicit |
assignment with a constant value for all elements
Definition at line 88 of file HomgPoint1D.hh.
|
inlineexplicit |
assignment with an array of values which is copied into this ones class members
Definition at line 96 of file HomgPoint1D.hh.
|
inlineexplicit |
assignment with 3 values which is copied into this ones class members
Definition at line 104 of file HomgPoint1D.hh.
References BIAS::Vector2< HOMGPOINT1D_TYPE >::data_.
|
inlineexplicit |
constructor with element assignment
Definition at line 114 of file HomgPoint1D.hh.
|
inlineinherited |
Addition with a scalar, storing results in destionation vector.
Definition at line 516 of file Vector2.hh.
References BIAS::Vector2< T >::data_.
|
inlineinherited |
adding of two vectors, storing the result in destvec
Definition at line 596 of file Vector2.hh.
|
inlineinherited |
Addition (in place) of an scalar.
Definition at line 510 of file Vector2.hh.
|
inlineinherited |
in place adding
Definition at line 588 of file Vector2.hh.
|
inlineinherited |
Iterator to first component of vector.
Definition at line 160 of file Vector2.hh.
|
inlineinherited |
Definition at line 163 of file Vector2.hh.
|
inlineinherited |
stl conform interface
Definition at line 201 of file Vector2.hh.
|
inherited |
coordinate transform compute the polar coordinates (radius, phi) for (this) given eucldian point (x,y).
with radius : distance to center, phi : radian angle between positive x-axis and p=(x,y) assume (x,z) is in orthogonal right-hand-system.
|
inlineinherited |
Definition at line 645 of file Vector2.hh.
|
inherited |
coordinate transform compute the euclidean coord p=(x,y) for (this) given polarcoord (radius, phi) with radius : distance to center, phi : radian angle between positive x-axis and p=(x,y) assume (x,z) is in orthogonal right-hand-system.
|
inlineinherited |
Definition at line 631 of file Vector2.hh.
|
inlineinherited |
copy the array of vectorsize beginning at *T to this->data_
Definition at line 180 of file Vector2.hh.
Referenced by operator=().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Division with a scalar, storing results in destination vector.
Definition at line 562 of file Vector2.hh.
References BIAS::Vector2< T >::data_.
|
inlineinherited |
Definition at line 572 of file Vector2.hh.
|
inlineinherited |
Division (in place) of an scalar.
Definition at line 549 of file Vector2.hh.
|
inlineinherited |
elementwise Division (in place) by a vector
Definition at line 555 of file Vector2.hh.
|
inlineinherited |
Definition at line 383 of file Vector2.hh.
|
inlineinherited |
Definition at line 393 of file Vector2.hh.
|
inlineinherited |
multiply two vectors elementwise, storing the result in destvec
Definition at line 367 of file Vector2.hh.
|
inlineinherited |
Definition at line 374 of file Vector2.hh.
|
inlineinherited |
Iterator pointing to one element after the last vector element.
Definition at line 169 of file Vector2.hh.
|
inlineinherited |
Definition at line 172 of file Vector2.hh.
|
inlineinherited |
Definition at line 617 of file Vector2.hh.
|
inlineinherited |
get the data pointer the member function itself is const (before {..}) because it doesn't change the this object.
Definition at line 236 of file Vector2.hh.
|
inlineinherited |
Definition at line 240 of file Vector2.hh.
|
inline |
return the euclidean coordinates Only possible for w !=0 because w==0 describes points of infinity which are not in euclidean space (but may be interpreted as directions)
Definition at line 158 of file HomgPoint1D.hh.
References BIAS::Vector2< HOMGPOINT1D_TYPE >::GetW(), and BIAS::Vector2< HOMGPOINT1D_TYPE >::GetX().
Referenced by GetEuclidian().
|
inline |
Definition at line 166 of file HomgPoint1D.hh.
References GetEuclidean().
|
inlineinherited |
Definition at line 227 of file Vector2.hh.
|
inlineinherited |
Definition at line 295 of file Vector2.hh.
Referenced by GetEuclidean(), and Homogenize().
|
inlineinherited |
Definition at line 306 of file Vector2.hh.
|
inlineinherited |
read only access functions to use names instead of indizes
Definition at line 289 of file Vector2.hh.
Referenced by GetEuclidean().
|
inlineinherited |
Definition at line 300 of file Vector2.hh.
|
inlineinherited |
Definition at line 292 of file Vector2.hh.
|
inlineinherited |
Definition at line 303 of file Vector2.hh.
|
inline |
homogenize class data member elements to W==1 by divison by W
Definition at line 144 of file HomgPoint1D.hh.
References BIAS::Vector2< HOMGPOINT1D_TYPE >::data_, and BIAS::Vector2< HOMGPOINT1D_TYPE >::GetW().
|
inlineinherited |
Definition at line 206 of file Vector2.hh.
|
inlineinherited |
return euclidean length
Definition at line 435 of file Vector2.hh.
|
inherited |
method to load directly from a given filename.
internally using stream operator
|
inlineinherited |
Definition at line 346 of file Vector2.hh.
|
inlineinherited |
Definition at line 342 of file Vector2.hh.
|
inlineinherited |
Multiplication with a scalar, storing results in destionation vector.
Definition at line 542 of file Vector2.hh.
References BIAS::Vector2< T >::data_.
|
inlineinherited |
Multiplication (in place) of an scalar.
Definition at line 536 of file Vector2.hh.
|
inlineinherited |
Vector2<T>::Normalize.
Definition at line 441 of file Vector2.hh.
|
inlineinherited |
|
inlineinherited |
Return the L2 norm: sqrt(a^2 + b^2)
Definition at line 430 of file Vector2.hh.
|
inline |
Comparison operator 'not equal'.
Definition at line 192 of file HomgPoint1D.hh.
|
inlineinherited |
Comparison operator 'not equal'.
Definition at line 497 of file Vector2.hh.
References BIAS::Vector2< T >::data_.
|
inline |
assignment operator set the elements of this HomgPoint to the element of vec
Definition at line 123 of file HomgPoint1D.hh.
References BIAS::Vector2< HOMGPOINT1D_TYPE >::Copy().
|
inline |
assignment operator set the vector elementwise to scalar value
Definition at line 134 of file HomgPoint1D.hh.
References BIAS::Vector2< HOMGPOINT1D_TYPE >::Set().
|
inline |
Comparison operator 'equal'.
Definition at line 179 of file HomgPoint1D.hh.
References BIAS::Vector2< HOMGPOINT1D_TYPE >::data_.
|
inlineinherited |
Comparison operator 'equal'.
Definition at line 490 of file Vector2.hh.
References BIAS::Vector2< T >::data_.
|
inlineinherited |
access an element of the vector with 0-based indizes.
read only (no write) member funciton const because it doesn't change this object
Definition at line 267 of file Vector2.hh.
|
inlineinherited |
access an element of the vector with 0-based indizes.
write allowed
Definition at line 277 of file Vector2.hh.
|
inlineinherited |
outer product, constructs a matrix (e.g.
for covariance).
Definition at line 404 of file Vector2.hh.
|
inlineinherited |
Definition at line 413 of file Vector2.hh.
|
inlineinherited |
polar form JW
Definition at line 332 of file Vector2.hh.
|
inlineinherited |
Definition at line 334 of file Vector2.hh.
|
inlineinherited |
polar form JW
Definition at line 326 of file Vector2.hh.
|
inlineinherited |
Definition at line 328 of file Vector2.hh.
|
inherited |
method to save directly to a given filename.
internally using stream operator
|
inlineinherited |
scalar product of two vectors, storing the result in result
Definition at line 356 of file Vector2.hh.
|
inlineinherited |
Definition at line 360 of file Vector2.hh.
|
inlineinherited |
set all elements to a scalar value
Definition at line 190 of file Vector2.hh.
Referenced by operator=().
|
inlineinherited |
set elementwise with given scalar values
Definition at line 215 of file Vector2.hh.
|
inlineinherited |
Definition at line 321 of file Vector2.hh.
|
inlineinherited |
set (write) access functions to use names instead of indizes
Definition at line 315 of file Vector2.hh.
|
inlineinherited |
Definition at line 318 of file Vector2.hh.
|
inlineinherited |
Definition at line 196 of file Vector2.hh.
|
inlineinherited |
Definition at line 223 of file Vector2.hh.
|
inlineinherited |
Definition at line 225 of file Vector2.hh.
|
inlineinherited |
|
inlineinherited |
Substraction with a scalar, storing results in destionation vector.
Definition at line 529 of file Vector2.hh.
References BIAS::Vector2< T >::data_.
|
inlineinherited |
subtracting of two Vectors, storing the result in destvec
Definition at line 612 of file Vector2.hh.
|
inlineinherited |
Substraction (in place) of an scalar.
Definition at line 523 of file Vector2.hh.
|
inlineinherited |
in place subtraction
Definition at line 604 of file Vector2.hh.
|
protectedinherited |
Definition at line 677 of file Vector2.hh.
Referenced by HomgPoint1D(), Homogenize(), and operator==().