From 23c1de79fc17f992a5a72b55d067b859cf2efa62 Mon Sep 17 00:00:00 2001 From: Andreas Schenk <andreas_schenk@hms.harvard.edu> Date: Thu, 13 Mar 2014 11:06:10 -0400 Subject: [PATCH] changed Polygon::Erase to make it working in C++11 --- modules/geom/src/composite2.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/geom/src/composite2.cc b/modules/geom/src/composite2.cc index b72d334dd..8a6aec909 100644 --- a/modules/geom/src/composite2.cc +++ b/modules/geom/src/composite2.cc @@ -291,15 +291,17 @@ Polygon2::circular_iterator Polygon2::FindSegment(std::vector<Vec2>::const_itera } void Polygon2::Erase(circular_iterator first,circular_iterator last) { + std::vector<Vec2>::iterator vfirst=first,vlast=last; if(first!=cbegin()){ for(circular_iterator it=first;it!=last;++it){ if(it==cbegin()){ //special case with wrap around - std::vector<Vec2>::erase(first,end()); - std::vector<Vec2>::erase(begin(),last); + std::vector<Vec2>::iterator vbegin=begin(),vend=end(); + std::vector<Vec2>::erase(vfirst,vend); + std::vector<Vec2>::erase(vbegin,vlast); } } } - std::vector<Vec2>::erase(first,last); + std::vector<Vec2>::erase(vfirst,vlast); } Circle2::Circle2(): -- GitLab