Subject: CGAL users discussion list
List archive
- From: たまちゃん <>
- To:
- Subject: Re: [cgal-discuss] Access violation in CGAL::intersection
- Date: Fri, 23 Jun 2017 01:10:38 +0900
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
- Ironport-phdr: 9a23:74D3vx2enqLApAUAsmDT+DRfVm0co7zxezQtwd8Zse0fL/ad9pjvdHbS+e9qxAeQG96KtLQc06L/iOPJYSQ4+5GPsXQPItRndiQuroEopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZvJuTyB4Xek9m72/q89pDXYQhEniaxba9vJxiqsAvdsdUbj5F/Iagr0BvJpXVIe+VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PGAv5c3krgfMQA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7S60/Vza/4KdxUBLniikHOT43/m/Ul8J+kr5UrQm7qBBj2YPZep2ZOOZ8c67bYNgURXBBXsFUVyFZBIG+aY0NDewHP+1FqITyukUBrQW/BQmoHu/v1iVHhnrs0qIm0+QuCwfG0RcvH9ILqnvUrdH1OL0OXuCyyanF1DPOZO5Y1zf67YjHaBEhofeUULJxd8rR00gvGBnfglWes4zoOS6e2OcVs2WD8eZsSeaih3QkpgxxuDSj28YhhpTTio4IyV3I6CN0y5svK9KiUk50e9ukHYNQty6EM4t2RdsvQ2RytyY7zr0KoJ66fSYWxJg+yR7Tdv+Kf5WS7hLsU+aRJjh4hHZ7d76lmxmy9k2gxvX9VsmyzllKsjJInsfQun0JzRDe6ciKRuFg8kqgxDqDzR3f5+JZLUwskKrUMZ8hwro+lpoJtkTDGzf7l1jog6+Id0Uk/vKk6/j9bbXjvJCTK490hRv4Mqk1lcy/BP43MgkKX2SB5eu807jj8VXjQLpWlv02jrXZsJfCKMsHqa62GQtV3p8+5Ba+FDepzMkYnWIcLF9eYxKGj43pO0nUL/ziDPe/hU6skDZxyPzcML3hGMaFE37Yjb20faph81UOj00o3NVH7tRVDKsAKbT9QAjqpdnAB1g4NQKzhO3oAdE42oIFUn+UGfylN/bZvlaMo+4uOOKRf5Q9uTDnKvFj6eS9o2U+nArlhVFRJdNDZH2mH/AgP0ycaHHsi9EpHmIDvw54R+vv3g7RGQVPbmq/CvpvrgowD5irWN/O
Thanks a lot Sebastien! I added two checks.
if(P.area()>0.0 && Q.area()>0.0)CGAL::intersection (P, Q, std::back_inserter(intR));
Regards,
tamachan
2017-06-22 23:12 GMT+09:00 Sebastien Loriot (GeometryFactory) <>:
If you compile with assertions ON, you'll get some clear errors:
File : /home/sloriot/CGAL/git/integration/Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h
Line : 262
Explanation: The polygon boundary self overlaps.
Your polygons have 0 area are not valid input.
Sebastien.--
On 06/22/2017 03:39 PM, たまちゃん wrote:
Hello Everyone,
I am getting an error in CGAL::intersection sometimes. I wrote sample
code below. How do I fix this error?
Thanks in advance!
Regards,
tamachan
Sample code (alwaysdie.cpp):
#include <CGAL/Exact_predicates_exact_constructions_kernel.h>
//#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/Boolean_set_operations_2.h>
#include <list>
typedef CGAL::Exact_predicates_exact_constructions_kernel Kernel;
//typedef CGAL::Exact_predicates_inexact_constructions_kernel Kernel;
typedef Kernel::Point_2 Point_2;
typedef CGAL::Polygon_2<Kernel> Polygon_2;
typedef CGAL::Polygon_with_holes_2<Kernel>
Polygon_with_holes_2;
typedef std::list<Polygon_with_holes_2> Pwh_list_2;
#define SWITCH_Q 2
int main ()
{
Polygon_2 P;
P.push_back (Point_2 (0.0, 0.0));
P.push_back (Point_2 (3.0, 3.0));
P.push_back (Point_2 (2.0, 2.0));
Polygon_2 Q;
#if SWITCH_Q==0
Q.push_back (Point_2 (1.0, 1.0));
Q.push_back (Point_2 (3.0, 1.0));
Q.push_back (Point_2 (2.0, 1.0));
#elif SWITCH_Q==1
Q.push_back (Point_2 (-1.0,2.0));
Q.push_back (Point_2 (5.0, 2.0));
Q.push_back (Point_2 (4.0, 2.0));
#else
Q.push_back (Point_2 (0.0, 0.0));
Q.push_back (Point_2 (2.0, 2.0));
Q.push_back (Point_2 (1.0, 1.0));
#endif
Pwh_list_2 intR;
Pwh_list_2::const_iterator it;
CGAL::intersection (P, Q, std::back_inserter(intR)); // !!!!!!! <<<
Access Violation here !!!!!!!!!
return 0;
}
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss
- [cgal-discuss] Access violation in CGAL::intersection, たまちゃん, 06/22/2017
- Re: [cgal-discuss] Access violation in CGAL::intersection, Sebastien Loriot (GeometryFactory), 06/22/2017
- Re: [cgal-discuss] Access violation in CGAL::intersection, たまちゃん, 06/22/2017
- Re: [cgal-discuss] Access violation in CGAL::intersection, Sebastien Loriot (GeometryFactory), 06/22/2017
Archive powered by MHonArc 2.6.18.