#include void main() { double const pts[][2] = { {-335.00000000000000, 117.87579011451453}, {334.99999999999989, 117.87579011451453}, {335.00000000000000, 335.00000000000000}, {335.00000000000000, -335.00000000000000}, {-335.00000000000000, -335.00000000000000}, {-335.00000000000000, 117.87579011451453}}; typedef boost::polygon::polygon_with_holes_data Polygon; std::vector points; for(size_t i = 0; i < 5; ++i) points.push_back(Polygon::point_type(pts[i][0] * 1000, pts[i][1] * 1000)); Polygon polygon; polygon.set(points.begin(), points.end()); typedef std::vector PolygonSet; PolygonSet polygonSet; polygonSet.push_back(polygon); boost::polygon::resize(polygonSet, -3000); boost::polygon::resize(polygonSet, 5000); }