A coordinate class intended to represent absolute positions (2-d specialization).
More...
|
| Point (T val=static_cast< T >(0)) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Construct a Point with all elements set to the same scalar value. More...
|
|
| Point (Point const &)=default |
|
| Point (Point &&)=default |
|
| ~Point ()=default |
|
Point & | operator= (Point const &)=default |
|
Point & | operator= (Point &&)=default |
|
template<typename U > |
| Point (Point< U, 2 > const &other) noexcept(IS_NOTHROW_CONVERTIBLE< T, U >) |
| Explicit converting constructor. More...
|
|
| Point (EigenVector const &vector) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Construct a Point from an Eigen vector. More...
|
|
| Point (Extent< T, 2 > const &other) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Explicit constructor from Extent. More...
|
|
| Point (T x, T y) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Explicit constructor from a pair of doubles. More...
|
|
| Point (T const xy[2]) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Construct from a two-element array. More...
|
|
| Point (std::pair< T, T > const &xy) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Construct from a std::pair. More...
|
|
| Point (std::tuple< T, T > const &xy) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Construct from std::tuple. More...
|
|
void | swap (Point &other) noexcept |
|
bool | operator== (Point< T, N > const &other) const noexcept |
| Standard equality comparison. More...
|
|
bool | operator!= (Point< T, N > const &other) const noexcept |
| Standard inequality comparison. More...
|
|
T & | operator[] (int n) |
|
T const & | operator[] (int n) const |
|
T & | coeffRef (int n) |
|
T const & | coeffRef (int n) const |
|
EigenVector const & | asEigen () const noexcept(IS_ELEMENT_NOTHROW_COPYABLE) |
| Return a fixed-size Eigen representation of the coordinate object. More...
|
|
|
Note that these return CoordinateExpr, not bool.
Unlike most arithmetic and assignment operators, scalar interoperability is provided for comparisons; expressions like if (all(point.gt(0))) ...
are both ubiquitous and easy to interpret.
|
CoordinateExpr< N > | eq (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | eq (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | ne (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | ne (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | lt (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | lt (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | le (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | le (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | gt (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | gt (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | ge (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | ge (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
|
No scalar interoperability is provided for Point arithmetic operations.
|
Extent< T, N > | operator- (Point< T, N > const &other) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
Point< T, N > | operator- (Extent< T, N > const &other) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
Point< T, N > | operator+ (Extent< T, N > const &other) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
Point< T, N > & | operator+= (Extent< T, N > const &other) noexcept(Super::IS_ELEMENT_NOTHROW_ASSIGNABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
Point< T, N > & | operator-= (Extent< T, N > const &other) noexcept(Super::IS_ELEMENT_NOTHROW_ASSIGNABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
Extent< T, N > | asExtent () const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
void | shift (Extent< T, N > const &offset) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Shift the point by the given offset. More...
|
|
void | scale (double factor) noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
double | distanceSquared (PointBase< T, N > const &other) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
std::string | toString () const |
| Cast this object to an Extent of the same numeric type and dimensionality. More...
|
|
|
Note that these return CoordinateExpr, not bool.
Unlike most arithmetic and assignment operators, scalar interoperability is provided for comparisons; expressions like if (all(point.gt(0))) ...
are both ubiquitous and easy to interpret.
|
CoordinateExpr< N > | eq (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | eq (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | ne (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | ne (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | lt (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | lt (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | le (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | le (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | gt (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | gt (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
CoordinateExpr< N > | ge (Point< T, N > const &other) const noexcept |
|
CoordinateExpr< N > | ge (T scalar) const noexcept(Super::IS_ELEMENT_NOTHROW_COPYABLE) |
|
template<typename T>
class lsst::geom::Point< T, 2 >
A coordinate class intended to represent absolute positions (2-d specialization).
See Operators on Point and Extent for mathematical operators on Point.
Definition at line 211 of file Point.h.