Начало. Тип точки полигона (boost::polygon::point_data) адаптирован к Boost. Концепция геометрии.
Повышаю. Точки полигона (а также полигоны) могут использоваться Boost. Геометрия. Две библиотеки можно использовать вместе. Используя усилитель::polygon::point_data<...>, алгоритмы от обоих Boost. Полигон и буст. Геометрию можно назвать
Point Concept
#include <boost/geometry/geometries/adapted/boost_polygon.hpp>
Стандартный заголовок<boost/geometry.hpp>не включает этот заголовок.
Как использовать Boost. Polygon point_data на сайте Boost. Геометрия
#include <iostream>
#include <boost/geometry.hpp>
#include <boost/geometry/geometries/adapted/boost_polygon.hpp>
int main()
{
boost::polygon::point_data<int> a(1, 2), b(3, 4);
std::cout << "Distance (using Boost.Geometry): "
<< boost::geometry::distance(a, b) << std::endl;
std::cout << "Distance (using Boost.Polygon): "
<< boost::polygon::euclidean_distance(a, b) << std::endl;
return 0;
}
Результат:
Distance (using Boost.Geometry): 2.82843
Distance (using Boost.Polygon): 2.82843