26 #ifndef _HomgPoint1D_hh_
27 #define _HomgPoint1D_hh_
28 #include "bias_config.h"
30 #include <Base/Debug/Error.hh>
31 #include <Base/Math/Vector2.hh>
36 #define HOMGPOINT1D_TYPE double
38 #define HOMGPOINT1D_TYPE_EPS 1E-12
57 :
public Vector2 < HOMGPOINT1D_TYPE > {
89 HOMGPOINT1D_TYPE > (scalar) {}
97 HOMGPOINT1D_TYPE > (pv) {}
105 const HOMGPOINT1D_TYPE &v2)
106 :
Vector2 <HOMGPOINT1D_TYPE > ()
146 BIASASSERT(!((
GetW() > -1 * HOMGPOINT1D_TYPE_EPS)
147 && (
GetW() < HOMGPOINT1D_TYPE_EPS)));
160 BIASASSERT(!((
GetW() > -1 * HOMGPOINT1D_TYPE_EPS) &&
161 (
GetW() < HOMGPOINT1D_TYPE_EPS)));
193 return !(*
this == arg);
void Homogenize()
homogenize class data member elements to W==1 by divison by W
HOMGPOINT1D_TYPE & GetW()
HOMGPOINT1D_TYPE GetEuclidian() const
HomgPoint1D(const HOMGPOINT1D_TYPE &v1, const HOMGPOINT1D_TYPE &v2)
assignment with 3 values which is copied into this ones class members
class Vector2 contains a Vector of dim.
HomgPoint1D(char *s)
constructor with element assignment
HomgPoint1D(const HOMGPOINT1D_TYPE *pv)
assignment with an array of values which is copied into this ones class members
void Set(const HOMGPOINT1D_TYPE &scalar)
set all elements to a scalar value
HomgPoint1D(const HOMGPOINT1D_TYPE &scalar)
assignment with a constant value for all elements
HOMGPOINT1D_TYPE data_[VECTOR2SIZE]
HOMGPOINT1D_TYPE & GetX()
read only access functions to use names instead of indizes
bool operator!=(const HomgPoint1D &arg) const
Comparison operator 'not equal'.
HomgPoint1D & operator=(const Vector2< HOMGPOINT1D_TYPE > &vec)
assignment operator set the elements of this HomgPoint to the element of vec
bool operator==(const HomgPoint1D &arg) const
Comparison operator 'equal'.
class HomgPoint1D describes a point with 2 degrees of freedom in projective coordinates.
HomgPoint1D(const HomgPoint1D &p)
copy constructor
HOMGPOINT1D_TYPE GetEuclidean() const
return the euclidean coordinates Only possible for w !=0 because w==0 describes points of infinity wh...
void Copy(const HOMGPOINT1D_TYPE *pv)
copy the array of vectorsize beginning at *T to this->data_
HomgPoint1D()
default constructor