用boost::geometry模块自定义多边形的测试程序
在进行图形计算时,自定义多边形是一个非常有用的工具。使用boost::geometry模块可以方便的定义和处理各种几何图形。
下面是一个通过boost::geometry模块自定义多边形并计算其面积的示例程序。我们将定义一个三角形,然后计算它的面积。
#include <iostream>
#include <vector>
#include <boost/geometry.hpp>
#include <boost/geometry/geometries/polygon.hpp>
#include <boost/geometry/geometries/register/point.hpp>
#include <boost/geometry/geometries/register/ring.hpp>
namespace bg = boost::geometry;
struct Point {
double x;
double y;
};
BOOST_GEOMETRY_REGISTER_POINT_2D(Point, double, bg::cs::cartesian, x, y);
typedef bg::model::polygon<Point> Polygon;
int main()
{
std::vector<Point> points = {
{0, 0}, {10, 0}, {5, 1