aewallin / openvoronoi

2D voronoi diagram for point and line-segment sites using incremental topology-oriented algorithm. C++ with python bindings. Licensed under LGPL2.1.

Home Page:http://www.anderswallin.net/cam/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

assertion failure in VoronoiDiagram::add_edge

Rogach opened this issue · comments

I found another sequence of inputs that results in error:

    ovd::Point p1(0.15907424869091413, -0.22755592000227737);
    ovd::Point p2(-0.158774429631718, -0.22755592000227737);
    ovd::Point p3(-0.158774429631718, 0.5000000000000007);
    ovd::Point p6(0.44085019690616595, -0.4999999999999993);
    ovd::Point p7(0.44085019690616595, 0.4999999999999993);

    int v1 = vd->insert_point_site(p1);
    int v2 = vd->insert_point_site(p2);
    int v3 = vd->insert_point_site(p3);
    int v6 = vd->insert_point_site(p6);
    int v7 = vd->insert_point_site(p7);

    vd->insert_line_site(v1, v2);
    vd->insert_line_site(v2, v3);
    vd->insert_line_site(v6, v7);

Seems I found the problem - parallel-line solver was outputting the solution regardless of k values. I added the fix in java port, will try to backport it to openvoronoi now.