DGtal
2.2.0
Toggle main menu visibility
Loading...
Searching...
No Matches
InHalfPlaneBySimple3x3Matrix.h
1
16
17
#pragma once
18
30
31
#if defined(InHalfPlaneBySimple3x3Matrix_RECURSES)
32
#error Recursive header files inclusion detected in InHalfPlaneBySimple3x3Matrix.h
33
#else
// defined(InHalfPlaneBySimple3x3Matrix_RECURSES)
35
#define InHalfPlaneBySimple3x3Matrix_RECURSES
36
37
#if !defined InHalfPlaneBySimple3x3Matrix_h
39
#define InHalfPlaneBySimple3x3Matrix_h
40
42
// Inclusions
43
#include <iostream>
44
#include <array>
45
#include "DGtal/base/Common.h"
46
47
#include "DGtal/kernel/NumberTraits.h"
48
#include "DGtal/kernel/CEuclideanRing.h"
49
#include "DGtal/math/linalg/SimpleMatrix.h"
51
52
namespace
DGtal
53
{
54
56
// template class InHalfPlaneBySimple3x3Matrix
90
template
<
typename
TPo
int
,
typename
TInteger>
91
class
InHalfPlaneBySimple3x3Matrix
92
{
93
// ----------------------- Types ------------------------------------
94
public
:
95
99
typedef
TPoint
Point
;
100
104
typedef
std::array<Point,2>
PointArray
;
108
typedef
typename
PointArray::size_type
SizeArray
;
112
static
const
SizeArray
size
= 2;
113
120
typedef
TInteger
Integer
;
121
BOOST_CONCEPT_ASSERT
((
concepts::CEuclideanRing<Integer>
));
122
126
typedef
SimpleMatrix<Integer, 3, 3>
Matrix
;
127
131
typedef
Integer
Value
;
132
133
// ----------------------- Interface --------------------------------------
134
public
:
135
141
void
init
(
const
Point
& aP,
const
Point
& aQ);
142
147
void
init
(
const
PointArray
& aA);
148
159
Value
operator()
(
const
Point
& aR)
const
;
160
165
void
selfDisplay
( std::ostream & out )
const
;
166
171
bool
isValid
()
const
;
172
173
// ------------------------- Private Data --------------------------------
174
private
:
175
179
mutable
Matrix
myMatrix
;
180
181
182
};
// end of class InHalfPlaneBySimple3x3Matrix
183
184
191
template
<
typename
TPo
int
,
typename
TInteger>
192
std::ostream&
193
operator<<
( std::ostream & out,
const
InHalfPlaneBySimple3x3Matrix<TPoint, TInteger>
&
object
);
194
195
}
// namespace DGtal
196
197
199
// Includes inline functions.
200
#include "DGtal/geometry/tools/determinant/InHalfPlaneBySimple3x3Matrix.ih"
201
202
// //
204
205
#endif
// !defined InHalfPlaneBySimple3x3Matrix_h
206
207
#undef InHalfPlaneBySimple3x3Matrix_RECURSES
208
#endif
// else defined(InHalfPlaneBySimple3x3Matrix_RECURSES)
DGtal::InHalfPlaneBySimple3x3Matrix
Aim: Class that implements an orientation functor, ie. it provides a way to compute the orientation o...
Definition
InHalfPlaneBySimple3x3Matrix.h:92
DGtal::InHalfPlaneBySimple3x3Matrix::init
void init(const Point &aP, const Point &aQ)
DGtal::InHalfPlaneBySimple3x3Matrix::selfDisplay
void selfDisplay(std::ostream &out) const
DGtal::InHalfPlaneBySimple3x3Matrix::operator()
Value operator()(const Point &aR) const
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::Point
InputPoint Point
Definition
InHalfPlaneBySimple3x3Matrix.h:99
DGtal::InHalfPlaneBySimple3x3Matrix::init
void init(const PointArray &aA)
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::Integer
typename InputPoint::Component Integer
Definition
InHalfPlaneBySimple3x3Matrix.h:120
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::Value
Integer Value
Definition
InHalfPlaneBySimple3x3Matrix.h:131
DGtal::InHalfPlaneBySimple3x3Matrix::isValid
bool isValid() const
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::myMatrix
Matrix myMatrix
Definition
InHalfPlaneBySimple3x3Matrix.h:179
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::PointArray
std::array< Point, 2 > PointArray
Definition
InHalfPlaneBySimple3x3Matrix.h:104
DGtal::InHalfPlaneBySimple3x3Matrix::BOOST_CONCEPT_ASSERT
BOOST_CONCEPT_ASSERT((concepts::CEuclideanRing< Integer >))
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::SizeArray
PointArray::size_type SizeArray
Definition
InHalfPlaneBySimple3x3Matrix.h:108
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::Matrix
SimpleMatrix< Integer, 3, 3 > Matrix
Definition
InHalfPlaneBySimple3x3Matrix.h:126
DGtal::InHalfPlaneBySimple3x3Matrix< InputPoint, typename InputPoint::Component >::size
static const SizeArray size
Definition
InHalfPlaneBySimple3x3Matrix.h:112
DGtal::SimpleMatrix
Aim: implements basic MxN Matrix services (M,N>=1).
Definition
SimpleMatrix.h:76
DGtal
DGtal is the top-level namespace which contains all DGtal functions and types.
Definition
ClosedIntegerHalfPlane.h:49
DGtal::operator<<
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
DGtal::concepts::CEuclideanRing
Aim: Defines the mathematical concept equivalent to a unitary commutative ring with a division operat...
Definition
CEuclideanRing.h:88
src
DGtal
geometry
tools
determinant
InHalfPlaneBySimple3x3Matrix.h
Generated on
for DGtal by
1.18.0