[/============================================================================
  Boost.Geometry (aka GGL, Generic Geometry Library)

  Copyright (c) 2007-2013 Barend Gehrels, Amsterdam, the Netherlands.
  Copyright (c) 2008-2013 Bruno Lalande, Paris, France.
  Copyright (c) 2009-2013 Mateusz Loskot, London, UK.

  Use, modification and distribution is subject to the Boost Software License,
  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]


[/ Generated by doxygen_xml2qbk 1.1.1, don't change, will be overwritten automatically]
[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1point.xml]
[section:model_point model::point]

'''<indexterm><primary>model</primary></indexterm><indexterm><primary>point</primary></indexterm>'''
Basic point class, having coordinates defined in a neutral way. 

[heading Description]
Defines a neutral point class, fulfilling the Point Concept. Library users can use this point class, or use their own point classes. This point class is used in most of the samples and tests of Boost.Geometry This point class is used occasionally within the library, where a temporary point class is necessary.

[heading Model of]
[link geometry.reference.concepts.concept_point Point Concept]

[heading Synopsis]
``template<typename CoordinateType, std::size_t DimensionCount, typename CoordinateSystem>
class model::point
{
  // ...
};
``

[heading Template parameter(s)]
[table
[[Parameter] [Description]]
[[typename CoordinateType] [numerical type (int, double, ttmath, ...) ]]
[[std::size_t DimensionCount] [number of coordinates, usually 2 or 3 ]]
[[typename CoordinateSystem] [coordinate system, for example cs::cartesian]]
]

[heading Constructor(s)]
[table
[[Function] [Description] [Parameters] ]
[[``point()``

] [Default constructor, no initialization. ] [

]]
[[``template<typename C, std::enable_if_t< geometry::detail::is_coordinates_number_leq< C, 1, DimensionCount >::value, int >>
point(CoordinateType const & v0)``

] [Constructor to set one value. ] [[* CoordinateType const &]: ['v0]:  



]]
[[``template<typename C, std::enable_if_t< geometry::detail::is_coordinates_number_leq< C, 2, DimensionCount >::value, int >>
point(CoordinateType const & v0, CoordinateType const & v1)``

] [Constructor to set two values. ] [[* CoordinateType const &]: ['v0]:  

[* CoordinateType const &]: ['v1]:  



]]
[[``template<typename C, std::enable_if_t< geometry::detail::is_coordinates_number_leq< C, 3, DimensionCount >::value, int >>
point(CoordinateType const & v0, CoordinateType const & v1, CoordinateType const & v2)``

] [Constructor to set three values. ] [[* CoordinateType const &]: ['v0]:  

[* CoordinateType const &]: ['v1]:  

[* CoordinateType const &]: ['v2]:  



]]
]

[heading Member Function(s)]
[table
[[Function] [Description] [Parameters]  [Returns]]
[[``template<std::size_t K>
constexpr CoordinateType const & get()``

] [Get a coordinate. ] [

][
the coordinate 

]
]
[[``template<std::size_t K>
void set(CoordinateType const & value)``

] [Set a coordinate. ] [[* CoordinateType const &]: ['value]:  value to set 



][

]
]
]

[heading Header]
Either

`#include <boost/geometry/geometries/geometries.hpp>`


Or

`#include <boost/geometry/geometries/point.hpp>`

[include reference/geometries/point.qbk]

[endsect]

