Subject: CGAL users discussion list
List archive
[cgal-discuss] Constrained_triangulation_plus_2 may crashed when insert_vertex_in_constraint called!
Chronological Thread
- From: 王进 <>
- To: "" <>
- Subject: [cgal-discuss] Constrained_triangulation_plus_2 may crashed when insert_vertex_in_constraint called!
- Date: Thu, 27 Apr 2017 14:54:41 +0800 (CST)
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
- Ironport-phdr: 9a23:1yr4XRdnBa5HLCIV2gA3hJO8lGMj4u6mDksu8pMizoh2WeGdxcu8bR7h7PlgxGXEQZ/co6odzbGH7+a4ASQp2tWoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7Ovr6GpLIj8Swyuu+54Dfbx9GiTe5br5+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYeRWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZTAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+t6KdlSBjyiCgcNj427XzYhdJ2jKxZvR2hvQF0z4rUbY2JKPZye6XQds4YS2VcRMZcTy1BDI28YYUREuQPJ+FWoJXyqFUNthaxHxWgCfn0xTJSmnP4was32PkhHwHc2wwgGsoDtnvRtND1LL8ZTOe4zafJzTXFYf5axyry55bTfRA8rvGBRq98fMvfxEU1CwzFiVCQpJXjMjiI1eoNq3CW4/R+We6zkWIrtgJ8riW1yssxhITFnIEYx1Pc+Sh5xIs5P8C0RUx7bNK+DZddtD2WO5FrTs4hRWxjpTw0xaccuZGheSgH0JQnyADba/yAa4WI5w/vWeiILTp7h39pYq+zihe8/ES61uL8Ucy03E5LripDjNbMqmgA2wLN5sSbUPdx40Ss1SuV2wzO5OxIO0M5mKnDJ54k2LEwl54TsUrZHi/xnUX7lKGXdkQi+uWm9ejof6vpqYSBN497kQzyL6Ujl8KlDeskNQgOWnCX+f6g27374U35XLJKg+UqnanWqp/aId0XqbO4Aw9Ozokj9g2/Dyy93dQDnXgHKUpFdwidg4joPVHOOvH4Au2lj1Siijc4j8zBa/fqDZzJa3TCi7z8Zq1V709H1BF21tdHoZNSELAIZvzpEAelv9PRClo1Mhe/3v38INF8zZ8FHHmIGumYNrnTuBmG/LR8DfOLYdqwJeNtY6w65vi113M0k0ISVfD3ht0cb3XuTacuGFmQfXe524RJKmwNpAdrEbSyhQ==
hi all, I found Constrained_triangulation_plus_2 may crashed when insert_vertex_in_constraint called
my codes:
#include <CGAL/basic.h>
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/Constrained_Delaunay_triangulation_2.h>
#include <CGAL/Triangulation_hierarchy_2.h>
#include <CGAL/Constrained_triangulation_plus_2.h>
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Exact_predicates_tag ITAG;
typedef CGAL::Triangulation_vertex_base_2<K> TVBB;
typedef CGAL::Triangulation_hierarchy_vertex_base_2<TVBB> TVB;
typedef CGAL::Constrained_triangulation_face_base_2<K> TFB;
typedef CGAL::Triangulation_data_structure_2<TVB, TFB> TDS;
typedef CGAL::Constrained_Delaunay_triangulation_2<K, TDS, ITAG> CDT;
typedef CGAL::Triangulation_hierarchy_2<CDT> CDTH;
typedef CGAL::Constrained_triangulation_plus_2<CDTH> CDTP;
typedef CGAL::Exact_predicates_tag ITAG;
typedef CGAL::Triangulation_vertex_base_2<K> TVBB;
typedef CGAL::Triangulation_hierarchy_vertex_base_2<TVBB> TVB;
typedef CGAL::Constrained_triangulation_face_base_2<K> TFB;
typedef CGAL::Triangulation_data_structure_2<TVB, TFB> TDS;
typedef CGAL::Constrained_Delaunay_triangulation_2<K, TDS, ITAG> CDT;
typedef CGAL::Triangulation_hierarchy_2<CDT> CDTH;
typedef CGAL::Constrained_triangulation_plus_2<CDTH> CDTP;
typedef CGAL::Polygon_2<K> Polygon_2;
typedef CDTP::Point Point_2;
typedef CDTP::Vertex_handle Vertex_handle;
typedef CDTP::Constraint_id Constraint_id;
typedef CDTP::Constraint_iterator Constraint_iterator;
typedef CDTP::Vertices_in_constraint_iterator Vertices_in_constraint_iterator;
typedef CDTP::Vertex_handle Vertex_handle;
typedef CDTP::Constraint_id Constraint_id;
typedef CDTP::Constraint_iterator Constraint_iterator;
typedef CDTP::Vertices_in_constraint_iterator Vertices_in_constraint_iterator;
#include "vector4.hpp"
#include "Matrix4.hpp"
#include "Math.hpp"
int main() {
Polygon_2 polygon;
polygon.push_back(Point_2(0.00000000000000000, 71.289788474561647));
polygon.push_back(Point_2(42.553236484178342, 71.993132446252275));
polygon.push_back(Point_2(43.293765253096353, 0.70334397174883634));
polygon.push_back(Point_2(0.74052876897621900, 0.00000000000000000));
polygon.push_back(Point_2(0.00000000000000000, 71.289788474561647));
polygon.push_back(Point_2(0.00000000000000000, 71.289788474561647));
polygon.push_back(Point_2(42.553236484178342, 71.993132446252275));
polygon.push_back(Point_2(43.293765253096353, 0.70334397174883634));
polygon.push_back(Point_2(0.74052876897621900, 0.00000000000000000));
polygon.push_back(Point_2(0.00000000000000000, 71.289788474561647));
Point_2 p1(21.520543956896290, 71.645492202660535);
Point_2 p2(22.262916839332320, 0.35573420871514827);
Point_2 p3(21.520543956896290, 71.645492202660535);
CDTP cdtp;
Constraint_id id = cdtp.insert_constraint(polygon.vertices_begin(), polygon.vertices_end(), false);
Constraint_id id = cdtp.insert_constraint(polygon.vertices_begin(), polygon.vertices_end(), false);
int todo = 1;
for (Constraint_iterator cid = cdtp.constraints_begin(); cid != cdtp.constraints_end(); cid++) {
Vertices_in_constraint_iterator vb = cdtp.vertices_in_constraint_begin(*cid);
if (vb == cdtp.vertices_in_constraint_end(*cid)) continue;
if (vb == cdtp.vertices_in_constraint_end(*cid)) continue;
Vertex_handle P = *vb; vb++;
if (vb == cdtp.vertices_in_constraint_end(*cid)) continue;
if (vb == cdtp.vertices_in_constraint_end(*cid)) continue;
for (; vb != cdtp.vertices_in_constraint_end(*cid); vb++) {
Vertex_handle Q = *vb;
if (todo)
{
//Vertex_handle W = cdtp.insert(Point_2(p1.x(),p1.y()));
Vertex_handle W = cdtp.insert(p1);
vb = cdtp.insert_vertex_in_constraint(*cid, vb, W);
P = Q;
vb++;
todo = 0;
}
{
//Vertex_handle W = cdtp.insert(Point_2(p1.x(),p1.y()));
Vertex_handle W = cdtp.insert(p1);
vb = cdtp.insert_vertex_in_constraint(*cid, vb, W);
P = Q;
vb++;
todo = 0;
}
//std::cout << P->point().x() << " " << P->point().y();// << " " << Q->point().x() << " " << Q->point().y() << std::endl;
}
}
return 0;
}
}
I use Visual Studio 2015(update3) + CGAL-4.7(static library)
something wrong?
thanks for your help!
WangJin
- [cgal-discuss] Constrained_triangulation_plus_2 may crashed when insert_vertex_in_constraint called!, 王进, 04/27/2017
- Re: [cgal-discuss] Constrained_triangulation_plus_2 may crashed when insert_vertex_in_constraint called!, Sebastien Loriot (GeometryFactory), 04/27/2017
Archive powered by MHonArc 2.6.18.