|
Developer Documentation |
|
Centre for Vision, Speech & Signal Processing |
|
PUBLIC |
SumNXX2d3C::SumNXX2d3C(void)
SumNXX2d3C::SumNXX2d3C(const RGBImageC &)
SumNXX2d3C::SumNXX2d3C(const SumNXX2d3C &)
SumNXX2d3C::operator+=(const Vector3dC &)
SumNXX2d3C::Count(void) const
SumNXX2d3C::operator>>(istream &,SumNXX2d3C &)
VecMat3dC::VecMat3d(void) const
VecMat3dC::VecMat3d(void)
VecMat3dC::SetZero(void)
VecMat3dC::Sort(void)
VecMat3dC::SortAbs(void)
VecMat3dC::operator>>(istream &,VecMat3dC &)
Vector3dC::Vector(void) const
Vector3dC::Vector(void)
Vector3dC::SetZero(void)
Vector3dC::operator-(void) const
Vector3dC::operator+(const Vector3dC &) const
Vector3dC::operator-(const Vector3dC &) const
Vector3dC::operator*(const RealT) const
Vector3dC::operator*(const Vector3dC &) const
Vector3dC::operator/(const RealT) const
Vector3dC::operator/(const Point3dC &) const
Vector3dC::operator+=(const Vector3dC &)
Vector3dC::operator-=(const Vector3dC &)
Vector3dC::operator*=(const RealT)
Vector3dC::operator/=(const RealT)
Vector3dC::operator&(const Vector3dC &) const
Vector3dC::operator%(const Vector3dC &) const
Vector3dC::Dot(const Vector3dC &) const
Vector3dC::Cross(const Vector3dC &) const
Vector3dC::Cross3(const Vector3dC &) const
Vector3dC::TripleScalar(const Vector3dC &,const Vector3dC &) const
Vector3dC::Norm(void) const
Vector3dC::SqrNorm(void) const
Vector3dC::Modulus(void) const
Vector3dC::Unit(void) const
Vector3dC::MakeUnit(void)
Vector3dC::MakeUnit(IndexT)
Vector3dC::ProjectionSizeInto(const Vector3dC &) const
Vector3dC::ProjectionInto(const Vector3dC &) const
Vector3dC::Angle(const Vector3dC &) const
Vector3dC::RotationX(const RealT) const
Vector3dC::RotationY(const RealT) const
Vector3dC::RotationZ(const RealT) const
Vector3dC::Rotation(const Vector3dC &,const RealT) const
Vector3dC::ProductT(void) const
Vector3dC::operator*(RealT,const Vector3dC &)
Vector3dC::operator<<(ostream &,const Vector3dC &)
Vector3dC::operator>>(istream &,Vector3dC &)
Matrix3d3C::operator=(const Matrix3d3C &)
Matrix3d3C::RDim(void) const
Matrix3d3C::CDim(void) const
Matrix3d3C::Matrix(void) const
Matrix3d3C::Matrix(void)
Matrix3d3C::operator[](IndexT) const
Matrix3d3C::operator[](IndexT)
Matrix3d3C::operator()(IndexT,IndexT) const
Matrix3d3C::operator()(IndexT,IndexT)
Matrix3d3C::A00(void) const
Matrix3d3C::A01(void) const
Matrix3d3C::A02(void) const
Matrix3d3C::A10(void) const
Matrix3d3C::A11(void) const
Matrix3d3C::A12(void) const
Matrix3d3C::A20(void) const
Matrix3d3C::A21(void) const
Matrix3d3C::A22(void) const
Matrix3d3C::A00(void)
Matrix3d3C::A01(void)
Matrix3d3C::A02(void)
Matrix3d3C::A10(void)
Matrix3d3C::A11(void)
Matrix3d3C::A12(void)
Matrix3d3C::A20(void)
Matrix3d3C::A21(void)
Matrix3d3C::A22(void)
Matrix3d3C::Column(IndexT) const
Matrix3d3C::Row(IndexT) const
Matrix3d3C::Diagonal(void) const
Matrix3d3C::Set(const Matrix3d3C &)
Matrix3d3C::SetZero(void)
Matrix3d3C::SetRow(IndexT,const Point3dC &)
Matrix3d3C::SetColumn(IndexT,const Point3dC &)
Matrix3d3C::SwapRows(const IndexT,const IndexT)
Matrix3d3C::SwapCols(const IndexT,const IndexT)
Matrix3d3C::operator==(const Matrix3d3C &) const
Matrix3d3C::operator+=(const Matrix3d3C &)
Matrix3d3C::operator-=(const Matrix3d3C &)
Matrix3d3C::operator*=(RealT)
Matrix3d3C::operator/=(RealT)
Matrix3d3C::operator+(const Matrix3d3C &) const
Matrix3d3C::operator-(const Matrix3d3C &) const
Matrix3d3C::operator*(RealT) const
Matrix3d3C::AddToDiagonal(RealT)
Matrix3d3C::SubtractFromDiagonal(RealT)
Matrix3d3C::T(void) const
Matrix3d3C::Trace(void) const
Matrix3d3C::EuclideanNorm(void) const
Matrix3d3C::I(void) const
Matrix3d3C::Det(void) const
Matrix3d3C::operator*(const Point3dC &) const
Matrix3d3C::operator*(const Vector3dC &) const
Matrix3d3C::operator*(const Matrix3d3C &) const
Matrix3d3C::LinearSolver(const Point3dC &) const
Matrix3d3C::ProductT(const Vector3dC &)
Matrix3d3C::ErrOutOfRange(IndexT,const char *) const
Point3dC::Point3dC(SizeT)
Point3dC::operator=(const Point3dC &)
Point3dC::operator[](IndexT) const
Point3dC::operator[](IndexT)
Point3dC::X(void)
Point3dC::Y(void)
Point3dC::Z(void)
Point3dC::X(void) const
Point3dC::Y(void) const
Point3dC::Z(void) const
Point3dC::Point(void) const
Point3dC::Point(void)
Point3dC::operator==(const Point3dC &) const
Point3dC::operator!=(const Point3dC &) const
Point3dC::operator>(const Point3dC &) const
Point3dC::OneBigger(const Point3dC &) const
Point3dC::SetZero(void)
Point3dC::Set(const Point3dC &)
Point3dC::Set(const CoordT,const CoordT,const CoordT)
Point3dC::SetMinimum(const Point3dC &)
Point3dC::SetMaximum(const Point3dC &)
Point3dC::MinIndex(void) const
Point3dC::MaxIndex(void) const
Point3dC::AbsMinIndex(void) const
Point3dC::AbsMaxIndex(void) const
Point3dC::Min(void) const
Point3dC::Max(void) const
Point3dC::operator+=(const Point3dC &)
Point3dC::operator-=(const Point3dC &)
Point3dC::operator*=(const Point3dC &)
Point3dC::operator/=(const Point3dC &)
Point3dC::operator*=(const RealT)
Point3dC::operator/=(const RealT)
Point3dC::operator+(const Point3dC &) const
Point3dC::operator-(const Point3dC &) const
Point3dC::operator*(const Point3dC &) const
Point3dC::operator/(const Point3dC &) const
Point3dC::operator*(const RealT) const
Point3dC::operator/(const RealT) const
Point3dC::operator+(const Vector3dC &) const
Point3dC::operator&(const Point3dC &) const
Point3dC::Translation(const Point3dC &) const
Point3dC::SqrEuclidDistance(const Point3dC &) const
Point3dC::EuclidDistance(const Point3dC &) const
Point3dC::EDistanceFromOrigin(void) const
Point3dC::CosAngle(const Point3dC &,const Point3dC &) const
Point3dC::Angle(const Point3dC &,const Point3dC &) const
Point3dC::AngleOrigin(const Point3dC &) const
Point3dC::MidPoint(const Point3dC &) const
Point3dC::Center(const Point3dC &) const
Point3dC::N(void) const
Point3dC::AbsDistance(const Point3dC &) const
Point3dC::MahalanobisDistance(const Point3dC &,const Matrix3d3C &)
Point3dC::Sum(void) const
Point3dC::SumAbs(void) const
Point3dC::Sqrt(void)
Point3dC::Abs(void)
Point3dC::Normalize(void)
Point3dC::NormalizeSum(void)
Point3dC::MakeUnit(const IndexT)
Point3dC::OrthoProjectionInto(const Line3dPVC &) const
Point3dC::OrthoProjectionTo(const PlanePVV3dC &) const
Point3dC::IsOutside(const PlaneABCD3dC &) const
Point3dC::IsInside(const PlaneABCD3dC &) const
Point3dC::FixAlmostZero(void)
Point3dC::SetZeroDistance(RealT)
Point3dC::IsAlmostZero(RealT)
Point3dC::SetRelZero(RealT)
Point3dC::IsRelZero(RealT)
Point3dC::RAbs(RealT)
Point3dC::operator*(RealT,const Point3dC &)
Point3dC::operator/(RealT,const Point3dC &)
Point3dC::operator<<(ostream &,const Point3dC &)
Point3dC::operator>>(istream &,Point3dC &)
Point3dC::Set(const Point3dC::CoordT,const Point3dC::CoordT,const Point3dC::CoordT)
|
Parent Classes:
Variables:
- LongIntT number;
-
Methods:
- SumNXX2d3C()
-
- SumNXX2d3C(const RGBImageC & image)
-
- SumNXX2d3C(const SumNXX2d3C & sum)
-
- const SumNXX2d3C & operator+=(const Vector3dC & data)
-
- LongIntT Count() const
-
- istream & operator>>(istream & is,SumNXX2d3C & sums)
-
- const VecMat3dC & VecMat3d() const
-
access to the object
- VecMat3dC & VecMat3d()
-
access to the object
- VecMat3dC & SetZero()
-
set the vector and the matrix to be zero
- VecMat3dC & Sort()
-
sort according to vector value. The first value will be the biggest one.
- VecMat3dC & SortAbs()
-
sort according to absolute vector value.
The first value will be the biggest one
- istream & operator>>(istream & is,VecMat3dC & vm)
-
- const Vector3dC & Vector() const
-
Access to the vector.
- Vector3dC & Vector()
-
Access to the vector.
Setting of coordinates.
-----------------------
- Vector3dC & SetZero()
-
Sets all coordinates to be zero.
Arithmetical operations.
------------------------
- Vector3dC operator-() const
-
Returns the opposite vector.
- Vector3dC operator+(const Vector3dC & v) const
-
Returns a sum of two vectors.
- Vector3dC operator-(const Vector3dC & v) const
-
Returns a difference of two vectors.
- Vector3dC operator*(const RealT alpha) const
-
Returns this vector multiplied by the scalar 'alpha'.
- Vector3dC operator*(const Vector3dC & v) const
-
Returns the vector which coordinates are the results of multiplication
item by item of this vector and the vector 'v'.
- Vector3dC operator/(const RealT alpha) const
-
Returns this vector multiplied by the scalar 1/'alpha'.
- Point3dC operator/(const Point3dC & v) const
-
Returns the points which coordinates are results of division
of this vector and 'v' point item by item.
- const Vector3dC & operator+=(const Vector3dC & v)
-
Adds the vector 'v' to this vector. The return object is
this vector.
- const Vector3dC & operator-=(const Vector3dC & v)
-
Subtracts the vector 'v' from this vector. The return object is
this vector.
- const Vector3dC & operator*=(const RealT alpha)
-
Multiplies this vector by the scalar value 'alpha'.
The return object is this vector.
- const Vector3dC & operator/=(const RealT alpha)
-
Multiplies this vector by the scalar value 1/'alpha'.
The return object is this vector.
Geometrical operations.
-----------------------
- RealT operator&(const Vector3dC & v) const
-
Returns the scalar product of this vector and the vector 'v'.
The operator is equivalent to the member function Dot().
- Vector3dC operator%(const Vector3dC & v) const
-
Returns the cross product of this vector and the vector 'v'.
The operator is equivalent to the member function Cross().
- RealT Dot(const Vector3dC & vector) const
-
Returns the scalar product of this vector and the 'vector'.
The function is equivalent to the operator&.
- Vector3dC Cross(const Vector3dC & vector) const
-
Returns the cross product of this vector and the 'vector'.
The function is equivalent to the operator%.
- RealT Cross3(const Vector3dC & vector) const
-
Returns the 3-rd coordinate of the cross product of this vector
and the 'vector'.
- RealT TripleScalar(const Vector3dC & vectorB,const Vector3dC & vectorC) const
-
Returns the triple scalar product [*this vectorB vectorC].
- RealT Norm() const
-
Returns the Euclidian norm of this vector.
- RealT SqrNorm() const
-
Returns the square of the Euclidian norm of this vector.
- RealT Modulus() const
-
Returns the size of the vector.
- Vector3dC Unit() const
-
Returns the unit vector which direction is determined by the direction
of this vector.
- Vector3dC & MakeUnit()
-
Divides all coordinates by the size of the vector.
- Vector3dC & MakeUnit(IndexT i)
-
Divides all coordinates by the size of the i-th coordinate.
- RealT ProjectionSizeInto(const Vector3dC & v) const
-
Returns the size of the projection of this vector into the vector 'v'.
- Vector3dC ProjectionInto(const Vector3dC & v) const
-
Returns the projection of this vector into the vector 'v'.
- RealT Angle(const Vector3dC & v) const
-
Returns the angle (rad) between this vector and the vector 'v'
in the range 0-pi (ie. the smallest angle between vectors).
Rotations.
----------
The following member functions for rotation of vectors
assume a right-handed 3D coordinate system xyz. The vector
is rotated according to the static coordinate system in the
direction following the direction of
the fingers of the right hand which thumb points in the direction
of the vector of the rotation axis. That means the angle has
counter-clockwise orientation if it is seen from the positive half
of the rotation axis.
- Vector3dC RotationX(const RealT a) const
-
Returns this vector rotated through an angle 'a' (rad)
along the x axis.
- Vector3dC RotationY(const RealT a) const
-
Returns this vector rotated through an angle 'a' (rad)
along the y axis.
- Vector3dC RotationZ(const RealT a) const
-
Returns this vector rotated through an angle 'a' (rad)
along the z axis.
- Vector3dC Rotation(const Vector3dC & v,const RealT a) const
-
Returns this vector rotated through an angle 'a' (rad)
along the axis defined by the vector 'v' and passing through the
starting point of this vector.
Operations using matrices.
--------------------------
- Matrix3d3C ProductT() const
-
Returns the matrix that is the result of v * v.T().
- Vector3dC operator*(RealT alpha,const Vector3dC & v)
-
- ostream & operator<<(ostream & outS,const Vector3dC & vector)
-
- istream & operator>>(istream & inS,Vector3dC & vector)
-
- const Matrix3d3C & operator=(const Matrix3d3C & mat)
-
Assigment.
Access to the matrix and its elements.
======================================
- SizeT RDim() const
-
Returns the number of rows.
- SizeT CDim() const
-
Returns the number of columns.
- const Matrix3d3C & Matrix() const
-
Access to the constant matrix.
- Matrix3d3C & Matrix()
-
Access to the matrix.
- const SizeBufferAccessC<RealT> operator[](IndexT r) const
-
Access to the row of the constant matrix.
- SizeBufferAccessC<RealT> operator[](IndexT r)
-
Access to the row of the matrix.
- RealT operator()(IndexT i,IndexT j) const
-
Returns the value of the element a[ij].
- RealT & operator()(IndexT i,IndexT j)
-
Access to the value of the element a[ij].
- RealT A00() const
-
Returns the value of the element a[00].
- RealT A01() const
-
Returns the value of the element a[01].
- RealT A02() const
-
Returns the value of the element a[02].
- RealT A10() const
-
Returns the value of the element a[10].
- RealT A11() const
-
Returns the value of the element a[11].
- RealT A12() const
-
Returns the value of the element a[12].
- RealT A20() const
-
Returns the value of the element a[20].
- RealT A21() const
-
Returns the value of the element a[21].
- RealT A22() const
-
Returns the value of the element a[22].
- RealT & A00()
-
Access to the value of the element a[00].
- RealT & A01()
-
Access to the value of the element a[01].
- RealT & A02()
-
Access to the value of the element a[02].
- RealT & A10()
-
Access to the value of the element a[10].
- RealT & A11()
-
Access to the value of the element a[11].
- RealT & A12()
-
Access to the value of the element a[12].
- RealT & A20()
-
Access to the value of the element a[20].
- RealT & A21()
-
Access to the value of the element a[21].
- RealT & A22()
-
Access to the value of the element a[22].
- Vector3dC Column(IndexT i) const
-
Returns the column 'i'.
- Vector3dC Row(IndexT i) const
-
Return the row 'i'.
- Vector3dC Diagonal() const
-
Returns the vector of main diagonal item.
Setting of matrix elements.
===========================
- void Set(const Matrix3d3C & mat)
-
Sets all elements of the matrix according to the matrix 'mat'.
- Matrix3d3C & SetZero()
-
Sets all elements to be 0.0.
- Matrix3d3C & SetRow(IndexT i,const Point3dC & p)
-
Sets the elements of the row 'i' according to the elements of
the point 'p'.
- Matrix3d3C & SetColumn(IndexT i,const Point3dC & p)
-
Sets the elements of the column 'i' according to the elements
of the point 'p'.
- Matrix3d3C & SwapRows(const IndexT r1,const IndexT r2)
-
Swaps the rows 'r1' and 'r2'.
- Matrix3d3C & SwapCols(const IndexT c1,const IndexT c2)
-
Swaps the columns 'c1' and 'c2'.
Logical operators.
==================
- BooleanT operator==(const Matrix3d3C & mat) const
-
Returns TRUE if all elements of the matrix are equal
to the elements of the matrix 'mat'.
Arithmetical operations.
========================
- const Matrix3d3C & operator+=(const Matrix3d3C & mat)
-
Adds the matrix 'mat' to this matrix.
- const Matrix3d3C & operator-=(const Matrix3d3C & mat)
-
Subtracts the matrix 'mat' from this matrix.
- const Matrix3d3C & operator*=(RealT lambda)
-
Multiplies all elements by the scalar 'lambda'.
- const Matrix3d3C & operator/=(RealT lambda)
-
Divides all elements by the scalar 'lambda'.
- Matrix3d3C operator+(const Matrix3d3C & mat) const
-
Sums both matrixes and returns the result.
- Matrix3d3C operator-(const Matrix3d3C & mat) const
-
Subtracts the matrix 'mat' from this matrix and returns the result.
- Matrix3d3C operator*(RealT lambda) const
-
Multiplies all elements of this matrix by the scalar 'lambda' and
returns the result.
- const Matrix3d3C & AddToDiagonal(RealT a)
-
The value 'a' is added to all diagonal elements.
- const Matrix3d3C & SubtractFromDiagonal(RealT a)
-
The value 'a' is subtracted from all diagonal elements.
Matrix operators.
=================
- Matrix3d3C T() const
-
Returns the matrix, which is the transposition of this matrix.
- RealT Trace() const
-
Returns the trace of the matrix.
- RealT EuclideanNorm() const
-
Returns the root of the summ of squares of the elements of the matrix.
- Matrix3d3C I() const
-
Returns the inversion of this matrix.
- RealT Det() const
-
Returns the determinant of the matrix.
- Point3dC operator*(const Point3dC & point) const
-
Multiplies this matrix by the point 'p'. The returned point
is equal to (*this) * p.
- Vector3dC operator*(const Vector3dC & vector) const
-
Multiplies the matrix by the vector 'v'. The returned vector
is equal to (*this) * v.
- Matrix3d3C operator*(const Matrix3d3C & mat) const
-
Multiplies this matrix by the matrix 'mat'. The result matrix
is returned.
- Point3dC LinearSolver(const Point3dC & rightSide) const
-
Returns the solution of 3 linear equations determined
by the matrix and the right side vector 'rightSide'
- Matrix3d3C ProductT(const Vector3dC & a)
-
Returns the matrix that is result of a*a.T().
Error checking.
===============
- void ErrOutOfRange(IndexT i,const char * functionName) const
-
Triggers the error handling if the index 'i' is smaller than 0
or bigger than 2. The name of the calling function 'functionName'
is passed to the error hangler.
- explicit Point3dC(SizeT dim)
-
Creates the point (0.0, 0.0, 0.0).
For compability with N-D points.
- const Point3dC & operator=(const Point3dC & p)
-
Assigment.
Access to the object
--------------------
- const CoordT & operator[](IndexT i) const
-
Access to the i-th constant coordinate.
- CoordT & operator[](IndexT i)
-
Access to the i-th coordinate.
- CoordT & X()
-
Access to the first coordinate.
- CoordT & Y()
-
Access to the second coordinate.
- CoordT & Z()
-
Access to the third coordinate.
- const CoordT & X() const
-
Access to the first constant coordinate.
- const CoordT & Y() const
-
Access to the second constant coordinate.
- const CoordT & Z() const
-
Access to the third constant coordinate.
- const Point3dC & Point() const
-
Access to the constant point.
- Point3dC & Point()
-
Access to the point.
Logical operators with points
-----------------------------
- BooleanT operator==(const Point3dC & point) const
-
Returns TRUE if 2 points are the same point. Two points
are claimed to be same iff their relative distance error
is small (under 'relZero' threshold). If both points
are close to the origin of the coordinate system, their
absolute distance error is compared to 'zeroDistance'.
- BooleanT operator!=(const Point3dC & point) const
-
Returns TRUE if 2 points are different. 2 points are different
iff they are not equal in the sense of the operator '=='.
- BooleanT operator>(const Point3dC & point) const
-
Returns TRUE if all coordinates are bigger then the coordinates
of the point.
- BooleanT OneBigger(const Point3dC & point) const
-
Returns TRUE if one coordinate is bigger then the related one
of the point.
Setting of the point
--------------------
- Point3dC & SetZero()
-
Sets all coordinates to be 0.0.
- void Set(const Point3dC & point)
-
Sets coordinates according to the values of 'point'.
- void Set(const CoordT xCoor,const CoordT yCoor,const CoordT zCoor)
-
Sets the point to the new coordinates.
- Point3dC & SetMinimum(const Point3dC & point)
-
Sets the point coordinates to minimal value from both points.
- Point3dC & SetMaximum(const Point3dC & point)
-
Sets the point coordinates to maximal value from both points.
Information about extrems
-------------------------
- IndexT MinIndex() const
-
Returns the index of the minimum value.
- IndexT MaxIndex() const
-
Returns the index of the maximum value.
- IndexT AbsMinIndex() const
-
Returns the index of the minimum coordinate in absolute value.
- IndexT AbsMaxIndex() const
-
Returns the index of the maximum coordinate in absolute value.
- CoordT Min() const
-
Returns the minimum coordinate.
- CoordT Max() const
-
Returns the maximum coordinate.
Arithmetical operations
-----------------------
- const Point3dC & operator+=(const Point3dC & point)
-
Adds the point.
- const Point3dC & operator-=(const Point3dC & point)
-
Subtracts the point.
- const Point3dC & operator*=(const Point3dC & point)
-
Multiplies items by point items.
- const Point3dC & operator/=(const Point3dC & point)
-
Divides items by point items.
- const Point3dC & operator*=(const RealT alpha)
-
Multiplies items by 'alpha'.
- const Point3dC & operator/=(const RealT alpha)
-
Divides items by 'alpha'.
- Point3dC operator+(const Point3dC & v) const
-
Adds 2 points.
- Vector3dC operator-(const Point3dC & v) const
-
Returns the difference between 2 points.
- Point3dC operator*(const Point3dC & v) const
-
Returns the points which coordinates are results of multiplication
of this point and 'v' points item by item.
- Point3dC operator/(const Point3dC & v) const
-
Returns the points which coordinates are results of division
of this point and 'v' points item by item.
- Point3dC operator*(const RealT alpha) const
-
Returns the points which coordinates are these coordinates
multiplied by 'alpha'.
- Point3dC operator/(const RealT alpha) const
-
Returns the points which coordinates are these coordinates
divided by 'alpha'.
- Point3dC operator+(const Vector3dC & v) const
-
Returns the point = 'this point' + v;
- RealT operator&(const Point3dC & p) const
-
Returns the sum X()*p.X() + Y()*p.Y() + Z()*p.Z().
In 3 dimensional Euclidian vector space the result is
equivalent to dot product of 2 vectors.
Euclidian geometry
------------------
- Point3dC Translation(const Point3dC & newOrigin) const
-
Returns the point with coordinates related to the new origin
'newOrigin'.
- RealT SqrEuclidDistance(const Point3dC & point) const
-
Returns the square of Euclid distance between this point
and 'point'.
- RealT EuclidDistance(const Point3dC & point) const
-
Returns the Euclid distance between this point and point.
- RealT EDistanceFromOrigin() const
-
Returns the Euclid distance of this point from the coordinate origin.
- CosAngleT CosAngle(const Point3dC & m,const Point3dC & b) const
-
Returns the cosinus of the angle (this point, m, b).
- AngleT Angle(const Point3dC & m,const Point3dC & b) const
-
Returns the angle (this point, m, b).
- AngleT AngleOrigin(const Point3dC & p) const
-
Returns the angle in rad between points 'this point', (0,0,0), and
the point 'p'.
- Point3dC MidPoint(const Point3dC & p) const
-
Returns the point which is in the middle of this point
and the point 'p'.
- Point3dC Center(const Point3dC & point) const
-
Returns the point which is in the middle of both points.
Useful functions with points
----------------------------
- SizeT N() const
-
Returns the number of coordinates of this point.
- RealT AbsDistance(const Point3dC & point) const
-
Returns the block distance between this point and 'point'.
- RealT MahalanobisDistance(const Point3dC & mean,const Matrix3d3C & invCov)
-
Returns the Mahalanobis distance from the 'mean'. The 'invCov'
is the inversion of the covariance matrix.
- CoordT Sum() const
-
Returns the sum of coordinates.
- CoordT SumAbs() const
-
Returns the sum of absolute value of coordinates.
- Point3dC & Sqrt()
-
Changes all coordinates into their square root values.
- Point3dC & Abs()
-
Changes all coordinates into their absolute values.
- Point3dC & Normalize()
-
Scales the coordinates of the point to have the distance
from the origin equal to 1. The point is supposed to be different
from the origin.
- Point3dC & NormalizeSum()
-
Scales the coordinates of the point to have unit sum.
The point is supposed to be different from the origin.
- Point3dC & MakeUnit(const IndexT i)
-
Scales the coordinates of the point that the i-th coordinate
will be equal to 1. The range of the index i is not checked.
Relationship with a line
------------------------
- Point3dC OrthoProjectionInto(const Line3dPVC & l) const
-
Returns the orthogonal projection of the point into the line 'l'.
Relationship with a plane
-------------------------
- Point3dC OrthoProjectionTo(const PlanePVV3dC & plane) const
-
Orthogonal projection of the point into the plane
- BooleanT IsOutside(const PlaneABCD3dC & plane) const
-
Returns TRUE if the point is on the side of the plane
where the normal of the plane points to.
- BooleanT IsInside(const PlaneABCD3dC & plane) const
-
Returns TRUE if the point is on the side of the plane
where the normal of the plane does not point to.
Computational precision
-----------------------
- void FixAlmostZero()
-
If the absolute value of a coordinate is smaller than zoroDistance
the function sets the coordinate to be zero.
- RealT SetZeroDistance(RealT zero)
-
Sets the precision of test of zero distance of points.
The function returns the previous value.
- BooleanT IsAlmostZero(RealT a)
-
Returns TRUE if 'a' is smaller or equal to zeroDistance.
- RealT SetRelZero(RealT zero)
-
Sets the precision of the relative error test.
The function returns the previous value.
- BooleanT IsRelZero(RealT a)
-
Returns TRUE if 'a' is smaller than or equal to 'relZero'.
- RealT RAbs(RealT t)
-
Returns the absolute value of the parameter t.
- Point3dC operator*(RealT alpha,const Point3dC & point)
-
- Point3dC operator/(RealT alpha,const Point3dC & point)
-
- ostream & operator<<(ostream & outS,const Point3dC & point)
-
- istream & operator>>(istream & inS,Point3dC & point)
-
- void Set(const Point3dC::CoordT xCoor,const Point3dC::CoordT yCoor,const Point3dC::CoordT zCoor)
-
|
Programmer:Radek Marik, Documentation by CxxDoc: Tue Mar 20 10:49:27 2001
|