Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
point.hpp File Reference
#include <cstddef>
Include dependency graph for point.hpp:

Macros

#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, Dim, CoordinateType, Get, Set)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, Dim, CoordinateType, Get)
 
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, Dim, CoordinateType, Get, Set)
 
#define BOOST_GEOMETRY_REGISTER_POINT_2D(Point, CoordinateType, CoordinateSystem, Field0, Field1)
 {2D point type} More...
 
#define BOOST_GEOMETRY_REGISTER_POINT_3D(Point, CoordinateType, CoordinateSystem, Field0, Field1, Field2)
 {3D point type} More...
 
#define BOOST_GEOMETRY_REGISTER_POINT_2D_CONST(Point, CoordinateType, CoordinateSystem, Field0, Field1)
 {2D point type} More...
 
#define BOOST_GEOMETRY_REGISTER_POINT_3D_CONST(Point, CoordinateType, CoordinateSystem, Field0, Field1, Field2)
 {3D point type} More...
 
#define BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET(Point, CoordinateType, CoordinateSystem, Get0, Get1, Set0, Set1)
 {2D point type} More...
 
#define BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET(Point, CoordinateType, CoordinateSystem, Get0, Get1, Get2, Set0, Set1, Set2)
 {3D point type} More...
 

Macro Definition Documentation

#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS (   Point,
  Dim,
  CoordinateType,
  Get,
  Set 
)
Value:
template<> struct access<Point, Dim> \
{ \
static inline CoordinateType get(Point const& p) { return p. Get; } \
static inline void set(Point& p, CoordinateType const& value) { p. Set = value; } \
};
cpp_int_backend< MinBits1, MaxBits1, SignType1, Checked1, Allocator1 >::limb_pointer p
Definition: multiply.hpp:28
detail::set_initializer_type const set
Used to create character sets.
Definition: regex_primitives.hpp:513
typed_value< T > * value()
Creates a typed_value instance.
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST (   Point,
  Dim,
  CoordinateType,
  Get 
)
Value:
template<> struct access<Point, Dim> \
{ \
static inline CoordinateType get(Point const& p) { return p. Get; } \
};
cpp_int_backend< MinBits1, MaxBits1, SignType1, Checked1, Allocator1 >::limb_pointer p
Definition: multiply.hpp:28
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET (   Point,
  Dim,
  CoordinateType,
  Get,
  Set 
)
Value:
template<> struct access<Point, Dim> \
{ \
static inline CoordinateType get(Point const& p) \
{ return p. Get (); } \
static inline void set(Point& p, CoordinateType const& value) \
{ p. Set ( value ); } \
};
cpp_int_backend< MinBits1, MaxBits1, SignType1, Checked1, Allocator1 >::limb_pointer p
Definition: multiply.hpp:28
detail::set_initializer_type const set
Used to create character sets.
Definition: regex_primitives.hpp:513
typed_value< T > * value()
Creates a typed_value instance.
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS (   Point,
  Dim,
  CoordinateType,
  CoordinateSystem 
)
Value:
template<> struct tag<Point> { typedef point_tag type; }; \
template<> struct dimension<Point> : boost::mpl::int_<Dim> {}; \
template<> struct coordinate_type<Point> { typedef CoordinateType type; }; \
template<> struct coordinate_system<Point> { typedef CoordinateSystem type; };
boost_foreach_argument_dependent_lookup_hack tag
Definition: foreach_fwd.hpp:31
int_type const int_
Definition: int.hpp:54
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42
#define BOOST_GEOMETRY_REGISTER_POINT_2D (   Point,
  CoordinateType,
  CoordinateSystem,
  Field0,
  Field1 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, 0, CoordinateType, Field0, Field0) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, 1, CoordinateType, Field1, Field1) \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
Definition: point.hpp:23
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, Dim, CoordinateType, Get, Set)
Definition: point.hpp:30

{2D point type}

{BOOST_GEOMETRY_REGISTER_POINT_2D, two-dimensional point type}

Parameters
Point{Point}
CoordinateType{point}
CoordinateSystem
Field0{}
Field1{}

{[include reference/geometries/register/point.qbk]}

#define BOOST_GEOMETRY_REGISTER_POINT_2D_CONST (   Point,
  CoordinateType,
  CoordinateSystem,
  Field0,
  Field1 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, 1, CoordinateType, Field1) \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
Definition: point.hpp:23
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, Dim, CoordinateType, Get)
Definition: point.hpp:38

{2D point type}

{BOOST_GEOMETRY_REGISTER_POINT_2D_CONST, two-dimensional point type}.

Parameters
Point{Point}
CoordinateType{point}
CoordinateSystem
Field0{}
Field1{}
#define BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET (   Point,
  CoordinateType,
  CoordinateSystem,
  Get0,
  Get1,
  Set0,
  Set1 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, 0, CoordinateType, Get0, Set0) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, 1, CoordinateType, Get1, Set1) \
}}}
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, Dim, CoordinateType, Get, Set)
Definition: point.hpp:46
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
Definition: point.hpp:23

{2D point type}

{BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET, two-dimensional point type}.

Parameters
Point{Point}
CoordinateType{point}
CoordinateSystem
Get0{get, }
Get1{get, }
Set0{set, }
Set1{set, }
#define BOOST_GEOMETRY_REGISTER_POINT_3D (   Point,
  CoordinateType,
  CoordinateSystem,
  Field0,
  Field1,
  Field2 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, 0, CoordinateType, Field0, Field0) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, 1, CoordinateType, Field1, Field1) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, 2, CoordinateType, Field2, Field2) \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
Definition: point.hpp:23
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, Dim, CoordinateType, Get, Set)
Definition: point.hpp:30

{3D point type}

{BOOST_GEOMETRY_REGISTER_POINT_3D, three-dimensional point type}

Parameters
Point{Point}
CoordinateType{point}
CoordinateSystem
Field0{}
Field1{}
Field2{}
#define BOOST_GEOMETRY_REGISTER_POINT_3D_CONST (   Point,
  CoordinateType,
  CoordinateSystem,
  Field0,
  Field1,
  Field2 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, 2, CoordinateType, Field2) \
}}}
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
Definition: point.hpp:23
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, Dim, CoordinateType, Get)
Definition: point.hpp:38

{3D point type}

{BOOST_GEOMETRY_REGISTER_POINT_3D_CONST, three-dimensional point type}.

Parameters
Point{Point}
CoordinateType{point}
CoordinateSystem
Field0{}
Field1{}
Field2{}
#define BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET (   Point,
  CoordinateType,
  CoordinateSystem,
  Get0,
  Get1,
  Get2,
  Set0,
  Set1,
  Set2 
)
Value:
namespace boost { namespace geometry { namespace traits { \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, 0, CoordinateType, Get0, Set0) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, 1, CoordinateType, Get1, Set1) \
BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, 2, CoordinateType, Get2, Set2) \
}}}
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_GET_SET(Point, Dim, CoordinateType, Get, Set)
Definition: point.hpp:46
Duration formatting facet for input.
Definition: accumulators_fwd.hpp:55
#define BOOST_GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem)
Definition: point.hpp:23

{3D point type}

{BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET, three-dimensional point type}.

Parameters
Point{Point}
CoordinateType{point}
CoordinateSystem
Get0{get, }
Get1{get, }
Get2{get, }
Set0{set, }
Set1{set, }
Set2{set, }