DGtal 1.4.0
|
Aim: Class that implements an orientation functor, ie. it provides a way to compute the orientation of three given 2d points. More precisely, it returns: More...
#include <DGtal/geometry/tools/determinant/InHalfPlaneBySimple3x3Matrix.h>
Public Types | |
typedef TPoint | Point |
typedef std::array< Point, 2 > | PointArray |
typedef PointArray::size_type | SizeArray |
typedef TInteger | Integer |
typedef SimpleMatrix< Integer, 3, 3 > | Matrix |
typedef Integer | Value |
Public Member Functions | |
BOOST_CONCEPT_ASSERT ((concepts::CEuclideanRing< Integer >)) | |
void | init (const Point &aP, const Point &aQ) |
void | init (const PointArray &aA) |
Value | operator() (const Point &aR) const |
void | selfDisplay (std::ostream &out) const |
bool | isValid () const |
Static Public Attributes | |
static const SizeArray | size = 2 |
Private Attributes | |
Matrix | myMatrix |
Aim: Class that implements an orientation functor, ie. it provides a way to compute the orientation of three given 2d points. More precisely, it returns:
Basic usage:
TPoint | a model of point |
TInteger | a model of integer for the 3x3 matrix entries and the result, at least a model of CEuclideanRing |
NB. In order to be sure that the result will be exact, you should be sure that TInteger can represent integers with 2b+3 bits if the points coordinates are coded with b bits.
Definition at line 91 of file InHalfPlaneBySimple3x3Matrix.h.
typedef TInteger DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::Integer |
Type of matrix integral entries
NB: the type of the points coordinates are casted into Integer before being stored into the matrix.
Definition at line 120 of file InHalfPlaneBySimple3x3Matrix.h.
typedef SimpleMatrix<Integer, 3, 3> DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::Matrix |
Type of matrix
Definition at line 126 of file InHalfPlaneBySimple3x3Matrix.h.
typedef TPoint DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::Point |
Type of points
Definition at line 99 of file InHalfPlaneBySimple3x3Matrix.h.
typedef std::array<Point,2> DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::PointArray |
Type of point array
Definition at line 104 of file InHalfPlaneBySimple3x3Matrix.h.
typedef PointArray::size_type DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::SizeArray |
Type used to represent the size of the array
Definition at line 108 of file InHalfPlaneBySimple3x3Matrix.h.
typedef Integer DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::Value |
Type of integer for the result
Definition at line 131 of file InHalfPlaneBySimple3x3Matrix.h.
DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::BOOST_CONCEPT_ASSERT | ( | (concepts::CEuclideanRing< Integer >) | ) |
void DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::init | ( | const Point & | aP, |
const Point & | aQ ) |
Initialisation. The first two column vectors are stored into myMatrix
aP | first point |
aQ | second point |
void DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::init | ( | const PointArray & | aA | ) |
Initialisation. The first two column vectors are stored into myMatrix
aA | array of two points |
bool DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
Value DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::operator() | ( | const Point & | aR | ) | const |
Main operator.
aR | any point to test |
void DGtal::InHalfPlaneBySimple3x3Matrix< TPoint, TInteger >::selfDisplay | ( | std::ostream & | out | ) | const |
Writes/Displays the object on an output stream.
out | the output stream where the object is written. |
|
mutableprivate |
3x3 matrix whose determinant provides the expected result
Definition at line 179 of file InHalfPlaneBySimple3x3Matrix.h.
|
static |
static size of the array, ie. 2
Definition at line 112 of file InHalfPlaneBySimple3x3Matrix.h.