Base class for implementation of point classes. More...
#include <gpoint.hh>
Public Types | |
typedef Gpoint< void > | category |
typedef E | exact_t |
Protected Member Functions | |
Gpoint () | |
Related Functions | |
(Note that these are not member functions.) | |
template<typename P , typename D > | |
P | operator+ (const Gpoint< P > &p, const Gdpoint< D > &dp) |
Add a delta-point rhs to a grid point lhs . | |
template<typename P , typename D > | |
P & | operator+= (Gpoint< P > &p, const Gdpoint< D > &dp) |
Shift a point by a delta-point dp . | |
template<typename L , typename R > | |
L::delta | operator- (const Gpoint< L > &lhs, const Gpoint< R > &rhs) |
Difference between a couple of grid point lhs and rhs . | |
template<typename P , typename D > | |
P & | operator-= (Gpoint< P > &p, const Gdpoint< D > &dp) |
Shift a point by the negate of a delta-point dp . | |
template<typename P , typename D > | |
P | operator/ (const Gpoint< P > &p, const value::scalar_< D > &dp) |
Divise a point by a scalar s . | |
template<typename P > | |
std::ostream & | operator<< (std::ostream &ostr, const Gpoint< P > &p) |
Print a grid point p into the output stream ostr . | |
template<typename L , typename R > | |
bool | operator== (const Gpoint< L > &lhs, const Gpoint< R > &rhs) |
Equality comparison between a couple of grid point lhs and rhs . |
Base class for implementation of point classes.
A point is an element of a space.
For instance, mln::point2d is the type of elements defined on the discrete square grid of the 2D plane.
Definition at line 115 of file gpoint.hh.
typedef Gpoint<void> mln::Gpoint< E >::category |
Reimplemented from mln::Site< E >.
typedef E mln::Object< E >::exact_t [inherited] |
mln::Gpoint< E >::Gpoint | ( | ) | [inline, protected] |
P operator+ | ( | const Gpoint< P > & | p, | |
const Gdpoint< D > & | dp | |||
) | [related] |
Add a delta-point rhs
to a grid point lhs
.
[in] | p | A grid point. |
[in] | dp | A delta-point. |
The type of dp
has to compatible with the type of p
.
L::delta operator- | ( | const Gpoint< L > & | lhs, | |
const Gpoint< R > & | rhs | |||
) | [related] |
Difference between a couple of grid point lhs
and rhs
.
[in] | lhs | A first grid point. |
[in] | rhs | A second grid point. |
lhs
and rhs
have to be defined on the same topology and with the same type of coordinates; otherwise this test does not compile.dp
, is such as lhs
== rhs
+ dp
.P operator/ | ( | const Gpoint< P > & | p, | |
const value::scalar_< D > & | dp | |||
) | [related] |
Divise a point by
a scalar s
.
[in,out] | p | The targeted point. |
[in] | dp | A scalar. |
p
once divised by s
. std::ostream & operator<< | ( | std::ostream & | ostr, | |
const Gpoint< P > & | p | |||
) | [related] |
bool operator== | ( | const Gpoint< L > & | lhs, | |
const Gpoint< R > & | rhs | |||
) | [related] |
Equality comparison between a couple of grid point lhs
and rhs
.
[in] | lhs | A first grid point. |
[in] | rhs | A second grid point. |
lhs
and rhs
have to be defined on the same topology; otherwise this test does not compile.