Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CGAL assert in the RegionMap painter #23

Open
Willem3141 opened this issue Feb 21, 2023 · 0 comments
Open

CGAL assert in the RegionMap painter #23

Willem3141 opened this issue Feb 21, 2023 · 0 comments
Labels
bug Something isn't working module::core

Comments

@Willem3141
Copy link
Member

Willem3141 commented Feb 21, 2023

 wsonke   SimplificationBranch  ~  Git  cartocrow  ./build-debug/frontend/cartocrow data/europe-population-necklace.json
terminate called after throwing an instance of 'CGAL::Precondition_exception'
  what():  CGAL ERROR: precondition violation!
Expr: (m_traits.compare_y_at_x_2_object()(p, cv) == EQUAL) && compare_xy(cv.left(), p) == SMALLER && compare_xy(cv.right(), p) == LARGER
File: /usr/include/CGAL/Arr_segment_traits_2.h
Line: 608
fish: Job 1, './build-debug/frontend/cartocro…' terminated by signal SIGABRT (Abort)
(gdb) bt
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=140737276269120) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=140737276269120) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=140737276269120, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007ffff6369476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007ffff634f7f3 in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007ffff66f8bbe in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00007ffff670424c in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007ffff67042b7 in std::terminate() () from /lib/x86_64-linux-gnu/libstdc++.so.6
#8  0x00007ffff6704518 in __cxa_throw () from /lib/x86_64-linux-gnu/libstdc++.so.6
#9  0x0000555555577ddd in CGAL::precondition_fail (
    expr=0x555555981cc8 "(m_traits.compare_y_at_x_2_object()(p, cv) == EQUAL) && compare_xy(cv.left(), p) == SMALLER && compare_xy(cv.right(), p) == LARGER", file=0x5555559711f8 "/usr/include/CGAL/Arr_segment_traits_2.h", line=608, 
    msg=0x55555596f11c "") at /usr/include/CGAL/assertions_impl.h:195
#10 0x00005555556f5069 in CGAL::Arr_segment_traits_2<CGAL::Epick>::Split_2::operator() (this=0x7fffffffcd98, cv=..., p=..., c1=..., c2=...) at /usr/include/CGAL/Arr_segment_traits_2.h:608
#11 0x00005555556e95b2 in CGAL::Surface_sweep_2::Surface_sweep_2<CGAL::Gps_polygon_validation_visitor<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> >, std::allocator<int> > >::_handle_left_curves (this=0x7fffffffcf10) at /usr/include/CGAL/Surface_sweep_2/Surface_sweep_2_impl.h:167
#12 0x0000555555621c96 in CGAL::Surface_sweep_2::No_intersection_surface_sweep_2<CGAL::Gps_polygon_validation_visitor<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> >, std::allocator<int> > >::_sweep (this=0x7fffffffcf10) at /usr/include/CGAL/Surface_sweep_2/No_intersection_surface_sweep_2_impl.h:160
#13 0x000055555560bf04 in CGAL::Surface_sweep_2::No_intersection_surface_sweep_2<CGAL::Gps_polygon_validation_visitor<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> >, std::allocator<int> > >::sweep<std::_List_iterator<CGAL::Arr_segment_2<CGAL::Epick> > > (this=0x7fffffffcf10, curves_begin={<CGAL::Arr_segment_traits_2<CGAL::Epick>::_Segment_cached_2> = {m_l = {<CGAL::LineC2<CGAL::Epick>> = {base = {_M_elems = {9.8813129168249309e-324, 4.6355715365405525e-310, 4.6355705443059468e-310}}}, <No data fields>}, m_ps = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {337.12700000000001, 321.51400000000001}}}, <No data fields>}}, <No data fields>}, m_pt = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {336.899, 321.96899999999999}}}, <No data fields>}}, <No data fields>}, m_is_directed_right = false, m_is_vert = false, m_is_computed = false, m_is_degen = false}, <No data fields>}, curves_end={<CGAL::Arr_segment_traits_2<CGAL::Epick>::_Segment_cached_2> = {m_l = {<CGAL::LineC2<CGAL::Epick>> = {base = {_M_elems = {3.0632070042157286e-322, -2.4031191350563669e+138, 4.635570854654468e-310}}}, <No data fields>}, m_ps = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {6.9533558072160389e-310, 2.1219634123731721e-314}}}, <No data fields>}}, <No data fields>}, m_pt = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {4.6355705676261911e-310, 6.9533558072832318e-310}}}, <No data fields>}}, <No data fields>}, m_is_directed_right = 96, m_is_vert = 212, m_is_computed = 255, m_is_degen = 255}, <No data fields>}) at /usr/include/CGAL/No_intersection_surface_sweep_2.h:252
#14 0x0000555555600093 in CGAL::Gps_polygon_validation_visitor<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> >, std::allocator<int> >::sweep<std::_List_iterator<CGAL::Arr_segment_2<CGAL::Epick> > > (this=0x7fffffffcec0, begin={<CGAL::Arr_segment_traits_2<CGAL::Epick>::_Segment_cached_2> = {m_l = {<CGAL::LineC2<CGAL::Epick>> = {base = {_M_elems = {9.8813129168249309e-324, 4.6355715365405525e-310, 4.6355705443059468e-310}}}, <No data fields>}, m_ps = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {337.12700000000001, 321.51400000000001}}}, <No data fields>}}, <No data fields>}, m_pt = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {336.899, 321.96899999999999}}}, <No data fields>}}, <No data fields>}, m_is_directed_right = false, m_is_vert = false, m_is_computed = false, m_is_degen = false}, <No data fields>}, end={<CGAL::Arr_segment_traits_2<CGAL::Epick>::_Segment_cached_2> = {m_l = {<CGAL::LineC2<CGAL::Epick>> = {base = {_M_elems = {3.0632070042157286e-322, -2.4031191350563669e+138, 4.635570854654468e-310}}}, <No data fields>}, m_ps = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {6.9533558072160389e-310, 2.1219634123731721e-314}}}, <No data fields>}}, <No data fields>}, m_pt = {<CGAL::PointC2<CGAL::Epick>> = {base = {<CGAL::VectorC2<CGAL::Epick>> = {base = {_M_elems = {4.6355705676261911e-310, 6.9533558072832318e-310}}}, <No data fields>}}, <No data fields>}, m_is_directed_right = 96, m_is_vert = 212, m_is_computed = 255, m_is_degen = 255}, <No data fields>}) at /usr/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h:125
#15 0x00005555555f7794 in CGAL::is_relatively_simple_polygon<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> > > (pgn=..., traits=...) at /usr/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h:498
#16 0x00005555555f2b3f in CGAL::is_relatively_simple_polygon_with_holes<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> > > (pgn=..., traits=...) at /usr/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h:529
#17 0x00005555555f027c in CGAL::is_valid_polygon_with_holes<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> > > (pgn=..., traits=...) at /usr/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h:778
#18 0x00005555555ee4a6 in CGAL::is_valid_unknown_polygon<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> > > (pgn=..., traits=...) at /usr/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h:803
#19 0x00005555555ec992 in CGAL::Boolean_set_operation_2_internal::PreconditionValidationPolicy::is_valid<CGAL::Polygon_with_holes_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > > >, CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> > > (p=..., t=...) at /usr/include/CGAL/General_polygon_set_on_surface_2.h:39
#20 0x00005555555eb135 in CGAL::Gps_on_surface_base_2<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> >, CGAL::Arr_bounded_planar_topology_traits_2<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> >, CGAL::Gps_default_dcel<CGAL::Gps_segment_traits_2<CGAL::Epick, std::vector<CGAL::Point_2<CGAL::Epick>, std::allocator<CGAL::Point_2<CGAL::Epick> > >, CGAL::Arr_segment_traits_2<CGAL::Epick> > > >, CGAL::Boolean_set_operation_2_internal::PreconditionValidationPolicy>::insert (this=0x7fffffffd540, pgn_with_holes=...) at /usr/include/CGAL/Boolean_set_operations_2/Gps_on_surface_base_2.h:277
#21 0x00005555555e7ee9 in cartocrow::approximate (p=...) at /home/wsonke/Git/cartocrow/cartocrow/core/core.cpp:68
#22 0x0000555555901a62 in cartocrow::necklace_map::ComputeFeasibleInterval::operator() (this=0x555556898e20, bead=std::shared_ptr<cartocrow::necklace_map::Bead> (use count 1, weak count 0) = {...}, necklace=...) at /home/wsonke/Git/cartocrow/cartocrow/necklace_map/feasible_interval/compute_feasible_interval.cpp:64
#23 0x00005555558fbbe6 in cartocrow::necklace_map::NecklaceMap::compute (this=0x555556898d50) at /home/wsonke/Git/cartocrow/cartocrow/necklace_map/necklace_map.cpp:54
#24 0x00005555555722d0 in main (argc=2, argv=0x7fffffffddb8) at /home/wsonke/Git/cartocrow/frontend/cartocrow.cpp:91
@Willem3141 Willem3141 added bug Something isn't working module::core labels Feb 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working module::core
Projects
None yet
Development

No branches or pull requests

1 participant