...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Assign two coordinates to a geometry (usually a 2D point)
template<typename Geometry, typename Type> void assign_values(Geometry & geometry, Type const & c1, Type const & c2)
Type |
Concept |
Name |
Description |
---|---|---|---|
Geometry & |
Any type fulfilling a Geometry Concept |
geometry |
A model of the specified concept |
Type const & |
numerical type (int, double, ttmath, ...) to specify the coordinates |
c1 |
First coordinate (usually x-coordinate) |
Type const & |
numerical type (int, double, ttmath, ...) to specify the coordinates |
c2 |
Second coordinate (usually y-coordinate) |
Either
#include <boost/geometry.hpp>
Or
#include <boost/geometry/algorithms/assign.hpp>
Shows the usage of assign to set point coordinates
#include <iostream> #include <iomanip> #include <boost/geometry.hpp> #include <boost/geometry/geometries/point_xy.hpp> int main() { using boost::geometry::assign_values; boost::geometry::model::d2::point_xy<double> p1; assign_values(p1, 1.2345, 2.3456); std::cout << std::setprecision(20) << boost::geometry::dsv(p1) << std::endl; return 0; }
Output:
(1.2344999999999999, 2.3456000000000001) (1.2345, 2.3456)