|
Developer Documentation |
|
Centre for Vision, Speech & Signal Processing |
|
PUBLIC |
PLine2dC::PLine2dC(void)
PLine2dC::PLine2dC(const Vector2dC &,RealT)
PLine2dC::PLine2dC(const Point2dC &,const Point2dC &)
PLine2dC::PLine2dC(const Point2dC &,const Vector2dC &)
PLine2dC::PLine2dC(const Line2dPVC &)
PLine2dC::PLine2dC(const Line2dPPC &)
PLine2dC::PLine2dC(PCoordT,PCoordT,PCoordT)
PLine2dC::PLine2dC(const PPointLine2dC &,const PPointLine2dC &)
PLine2dC::PLine2dC(const PPointLine2dC &)
PLine2dC::PLine2dC(const PLine2dC &)
PLine2dC::operator=(const PLine2dC &)
PLine2dC::Normal(void) const
PLine2dC::PLine2d(void) const
PLine2dC::PLine2d(void)
PLine2dC::IsIdeal(void) const
PLine2dC::operator*=(const RealT)
PLine2dC::operator/=(const RealT)
PLine2dC::operator*(const RealT) const
PLine2dC::operator/(const RealT) const
PLine2dC::Intersection(const PLine2dC &) const
PLine2dC::operator*(RealT,const PLine2dC &)
PLine2dC::operator/(RealT,const PLine2dC &)
PLine2dC::operator>>(istream &,PLine2dC &)
PPointLine2dC::operator=(const PPointLine2dC &)
PPointLine2dC::operator[](IndexT) const
PPointLine2dC::operator[](IndexT)
PPointLine2dC::operator()(IndexT) const
PPointLine2dC::Scale(void) const
PPointLine2dC::P1(void) const
PPointLine2dC::P2(void) const
PPointLine2dC::P3(void) const
PPointLine2dC::P1(void)
PPointLine2dC::P2(void)
PPointLine2dC::P3(void)
PPointLine2dC::X(void) const
PPointLine2dC::Y(void) const
PPointLine2dC::PPointLine2d(void) const
PPointLine2dC::PPointLine2d(void)
PPointLine2dC::operator==(const PPointLine2dC &) const
PPointLine2dC::operator!=(const PPointLine2dC &) const
PPointLine2dC::IsIdealPoint(void) const
PPointLine2dC::IsIdealLine(void) const
PPointLine2dC::IsValid(void) const
PPointLine2dC::Set(const PPointLine2dC &)
PPointLine2dC::Set(const PCoordT,const PCoordT,const PCoordT)
PPointLine2dC::MaxIndex(void) const
PPointLine2dC::MinIndex(void) const
PPointLine2dC::AbsMaxIndex(void) const
PPointLine2dC::AbsMinIndex(void) const
PPointLine2dC::Sum(void) const
PPointLine2dC::SumAbs(void) const
PPointLine2dC::operator+=(const PPointLine2dC &)
PPointLine2dC::operator-=(const PPointLine2dC &)
PPointLine2dC::operator*=(const RealT)
PPointLine2dC::operator/=(const RealT)
PPointLine2dC::operator+(const PPointLine2dC &) const
PPointLine2dC::operator*(const RealT) const
PPointLine2dC::operator/(const RealT) const
PPointLine2dC::operator&(const PPointLine2dC &) const
PPointLine2dC::PPointLine2d(const PPointLine2dC &) const
PPointLine2dC::Translation(const PPointLine2dC &) const
PPointLine2dC::Det(const PCoordT,const PCoordT,const PCoordT,const PCoordT)
PPointLine2dC::operator*(RealT,const PPointLine2dC &)
PPointLine2dC::operator/(RealT,const PPointLine2dC &)
PPointLine2dC::operator>>(istream &,PPointLine2dC &)
PPointLine2dC::Set(const PPointLine2dC::PCoordT,const PPointLine2dC::PCoordT,const PPointLine2dC::PCoordT)
|
Comments:
The class represents a line in 2 dimensional projective space.
A line contains 3 real numbers which serve as its projective
coordinates.
Parent Classes:
Typedefs:
- typedef PPointLine2dC::PCoordT PCoordT;
-
A projective coordinate.
- typedef PPointLine2dC::CCoordT CCoordT;
-
An cartesian coordinate.
Methods:
- PLine2dC()
-
Constructs the line whose coordinates are zeros, eg. non-existing
projective line.
- PLine2dC(const Vector2dC & n,RealT d)
-
Constructs the projective line equivalent to the Euiclidian
line determined by the equation n.X()*x + n.Y()*y + d = 0.
- PLine2dC(const Point2dC & p1,const Point2dC & p2)
-
Constructs the projective line passing through two Euclidian
points p1, p2.
- PLine2dC(const Point2dC & p,const Vector2dC & v)
-
Constructs the projective line passing through the Euclidian
point 'p' and the Euclidian line direction vector 'v'.
- PLine2dC(const Line2dPVC & l)
-
Constructs the projective line from the Euclidian line 'l'.
- PLine2dC(const Line2dPPC & l)
-
Constructs the projective line from the Euclidian line 'l'.
- PLine2dC(PCoordT p1,PCoordT p2,PCoordT p3)
-
Constructs the line (p1, p2, p3).
- PLine2dC(const PPointLine2dC & p0,const PPointLine2dC & p1)
-
Constructs the line passing through two projective points 'p0' and
'p1'.
- PLine2dC(const PPointLine2dC & p)
-
Constructs the line from the point/line object 'p'.
- PLine2dC(const PLine2dC & p)
-
Copy constructor.
- const PLine2dC & operator=(const PLine2dC & p)
-
Assigment of point.
Access to the object.
---------------------
- Vector2dC Normal() const
-
Returns the normal of a corresponding Euclidian line. If this
projective line is ideal the function returns the zero vector.
- const PLine2dC & PLine2d() const
-
Access to this constant object.
- PLine2dC & PLine2d()
-
Access to the point.
Logical conditions.
-------------------
- BooleanT IsIdeal() const
-
Returns TRUE iff this line is an ideal projective line.
The line is an ideal projective line if the absolute value of
the ratio Scale()/SumAbs() is smaller or equal to
the threshold 'Point3dC::relZero'.
Arithmetical operations.
------------------------
- const PLine2dC & operator*=(const RealT alpha)
-
Multiplies all coordinates by 'alpha'.
- const PLine2dC & operator/=(const RealT alpha)
-
Divides all coordinates by 'alpha'.
- PLine2dC operator*(const RealT alpha) const
-
Returns the line which coordinates are multiplied by 'alpha'.
- PLine2dC operator/(const RealT alpha) const
-
Returns the line which coordinates are divided by 'alpha'.
Geometrical constructions.
--------------------------
- PPoint2dC Intersection(const PLine2dC & l) const
-
Returns the projective point that is the intersection of both lines.
- PLine2dC operator*(RealT lambda,const PLine2dC & p)
-
- PLine2dC operator/(RealT lambda,const PLine2dC & p)
-
- istream & operator>>(istream & inS,PLine2dC & point)
-
- const PPointLine2dC & operator=(const PPointLine2dC & p)
-
Assigment of a point/line 'p'.
Access to the object items.
---------------------------
- const PCoordT & operator[](IndexT i) const
-
Returns the value of the i-th coordinate.
- PCoordT & operator[](IndexT i)
-
Access the value of the i-th coordinate.
- CCoordT operator()(IndexT i) const
-
Returns the value of the i-th Cartesian coordinate.
The function does not check if the point/line is ideal or not or
the range of the index 'i'.
- PCoordT Scale() const
-
Returns the value of the last projective coordinate P3().
- const PCoordT & P1() const
-
Returns the value of the 1st coordinate.
- const PCoordT & P2() const
-
Returns the value of the 2nd coordinate.
- const PCoordT & P3() const
-
Returns the value of the 3rd coordinate.
- PCoordT & P1()
-
Returns the value of the 1st coordinate.
- PCoordT & P2()
-
Returns the value of the 2nd coordinate.
- PCoordT & P3()
-
Returns the value of the 3rd coordinate.
- CCoordT X() const
-
Returns the value of the 1. Cartesian coordinate. The function
does not check if the point/line is ideal or not.
- CCoordT Y() const
-
Returns the value of the 2. Cartesian coordinate. The function
does not check if the point/line is ideal or not.
- const PPointLine2dC & PPointLine2d() const
-
Access to this constant object.
- PPointLine2dC & PPointLine2d()
-
Access to the point/line.
Logical conditions.
-------------------
- BooleanT operator==(const PPointLine2dC & p) const
-
Returns TRUE iff 2 points/lines are the same projective point/line.
Two projective points/lines are equal iff their 3D Cartesian
representants are equal.
- BooleanT operator!=(const PPointLine2dC & p) const
-
Returns TRUE iff 2 points/lines are different projective points/lines.
Two projective points/lines are different iff they are not
equal in the sense of the operator '=='.
- BooleanT IsIdealPoint() const
-
Returns TRUE iff this point/line represents an ideal projective point.
The point is an ideal projective point if the absolute value of
the ratio Scale()/SumAbs() is smaller or equal to
the threshold 'Point3dC::relZero'.
- BooleanT IsIdealLine() const
-
Returns TRUE iff this point/line represents an ideal projective plane.
The plane is an ideal projective plane if the absolute value of
the ratio (Abs(P1)+Abs(P2())/Scale() is smaller or equal to
the threshold 'Point3dC::relZero'.
- BooleanT IsValid() const
-
Returns TRUE if the sum of absolute values of the projective coordinates
is bigger than the threshold 'Point3dC::zeroDistance'.
Setting of the coordinates.
---------------------------
- void Set(const PPointLine2dC & p)
-
Sets coordinates according to the values of the point/line 'p'.
- void Set(const PCoordT p1,const PCoordT p2,const PCoordT p3)
-
Sets the 1-st coordinate to be 'p1', the 2nd one to be 'p2',
and the 3rd one to be 'p3'.
Information about extrems.
--------------------------
- IndexT MaxIndex() const
-
Returns the index of the maximum coordinate.
- IndexT MinIndex() const
-
Returns the index of the minimum coordinate.
- IndexT AbsMaxIndex() const
-
Returns the index of the maximum coordinate in absolute value.
- IndexT AbsMinIndex() const
-
Returns the index of the minimum coordinate in absolute value.
- PCoordT Sum() const
-
Returns the sum of coordinates.
- PCoordT SumAbs() const
-
Returns the sum of absolute value of coordinates.
Arithmetical operations.
------------------------
- const PPointLine2dC & operator+=(const PPointLine2dC & p)
-
Adds the values of the coordinates of the 'p' to this point/line.
- const PPointLine2dC & operator-=(const PPointLine2dC & p)
-
Subtracts the values of the coordinates of the 'p' from this
point/line.
- const PPointLine2dC & operator*=(const RealT alpha)
-
Multiplies all coordinates by 'alpha'.
- const PPointLine2dC & operator/=(const RealT alpha)
-
Divides all coordinates by 'alpha'.
- PPointLine2dC operator+(const PPointLine2dC & p) const
-
Returns the point/line which is the sum of this point and the 'p'.
- PPointLine2dC operator*(const RealT alpha) const
-
Returns the point/line which coordinates are multiplied by 'alpha'.
- PPointLine2dC operator/(const RealT alpha) const
-
Returns the point/line which coordinates are divided by 'alpha'.
Geometrical operations.
-----------------------
- RealT operator&(const PPointLine2dC & p) const
-
Returns the sum P1()*p.P1() + P2()*p.P2() + P3()*p.P3().
In 3 dimensional Euclidian vector space the result is equivalent
to dot product of 2 vectors.
- PPointLine2dC PPointLine2d(const PPointLine2dC & p) const
-
Returns the projective line/point determined by this point/line
and the point/line 'p'.
- PPointLine2dC Translation(const PPointLine2dC & newOrigin) const
-
Returns the point/line with projective coordinates related
to the new origin 'newOrigin'.
- RealT Det(const PCoordT p00,const PCoordT p01,const PCoordT p10,const PCoordT p11)
-
- PPointLine2dC operator*(RealT lambda,const PPointLine2dC & p)
-
- PPointLine2dC operator/(RealT lambda,const PPointLine2dC & p)
-
- istream & operator>>(istream & inS,PPointLine2dC & point)
-
- void Set(const PPointLine2dC::PCoordT p1,const PPointLine2dC::PCoordT p2,const PPointLine2dC::PCoordT p3)
-
|
Programmer:Radek Marik, Documentation by CxxDoc: Tue Mar 20 10:49:27 2001
|