id summary reporter owner description type status milestone component version severity resolution keywords cc 9206 intersection of non-closed polygons returns closed polygon Volker Schöch Barend Gehrels "The output multi-polygon from boost::geometry::intersection should have the same orientation, closed-ness and underlying scalar data type, as the input (multi-)polygons. My polygon type is '''oriented counter-clockwise''' and '''not closed''', my point type is based on '''int'''. Please find below some code that results in a closed polygon. ''Note: The sym_difference and difference algorithms have the same problem which I filed as separate tickets #8375, #8376.'' This is the data used as input to intersection: {{{ _TPolygon const polygon = _TPolygon(""MULTIPOLYGON(((1374 1092,1734 1092,3174 2526,3174 2886,1374 2886)))"") & _TPolygon(""POLYGON((2817 2449,2817 2603,3134 2603,3134 2449,2817 2449))""); }}} This is the resulting multi-polygon, with the polygon being closed: {{{ MULTIPOLYGON(((3134 2486,3134 2603,2817 2603,2817 2449,3096 2449,3134 2486))) }}} This is my code that wraps boost::geometry to implement the operator used above: {{{ template template _TPolygon< T > _TPolygon< T >::operator&(Geometry const& geometry) const { _TPolygon< T > polygonOut; boost::geometry::intersection(*this, geometry, polygonOut); // should not be necessary //boost::geometry::correct( polygonOut ); return polygonOut; } }}} " Bugs closed To Be Determined geometry Boost 1.55.0 Problem invalid intersection, multi-polygon, polygon, closed, open, correct mkaravel