From 667ef0baff3dd77ed7d01afa24f6c07f82eb6a6b Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Tue, 8 Jan 2019 09:24:30 +0100 Subject: [PATCH] The integer constants are too big for VC++ --- .../Periodic_4_hyperbolic_Delaunay_triangulation_2.h | 2 +- .../test_p4ht2_intersections.cpp | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_2.h b/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_2.h index c1cdb8f9192..807c226d18d 100644 --- a/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_2.h +++ b/Periodic_4_hyperbolic_triangulation_2/include/CGAL/Periodic_4_hyperbolic_Delaunay_triangulation_2.h @@ -581,7 +581,7 @@ remove(Vertex_handle v) fit != dt.finite_faces_end(); ++fit) { bool is_good = true; - for(std::size_t i=0; i<3; ++i) + for(int i=0; i<3; ++i) { Vertex_handle this_v = vmap[fit->vertex(i)]; Vertex_handle prev_v = bdry_verts[n_verts - 1]; diff --git a/Periodic_4_hyperbolic_triangulation_2/test/Periodic_4_hyperbolic_triangulation_2/test_p4ht2_intersections.cpp b/Periodic_4_hyperbolic_triangulation_2/test/Periodic_4_hyperbolic_triangulation_2/test_p4ht2_intersections.cpp index 51bc8dedc38..5f783198df1 100644 --- a/Periodic_4_hyperbolic_triangulation_2/test/Periodic_4_hyperbolic_triangulation_2/test_p4ht2_intersections.cpp +++ b/Periodic_4_hyperbolic_triangulation_2/test/Periodic_4_hyperbolic_triangulation_2/test_p4ht2_intersections.cpp @@ -38,9 +38,10 @@ int main(int /*argc*/, char** /*argv*/) NT root24 = sqrt(sqrt(F2)); NT root234 = root24*root24*root24; - NT x1 = (NT(-15815)*sqrt(F2) + NT(19119)*root24 + NT(13444)*root234 - NT(23479))*sqrt(NT(1)+sqrt(F2))/NT(542) + NT(24831)*sqrt(F2)/NT(542) - NT(14840)*root24/NT(271) - NT(10708)*root234/NT(271) + NT(17856)/NT(271); - NT y1 = (NT(-9090)*sqrt(F2) + NT(9803)*root24 + NT(8313)*root234 - NT(13801))*sqrt(NT(1)+sqrt(F2))/NT(542) + NT(14453)*sqrt(F2)/NT(542) - NT(8526)*root24/NT(271) - NT(6195)*root234/NT(271) + NT(9501)/NT(271); - NT r12 = (NT(-3028175552)*sqrt(F2) + NT(3601721772)*root24 + NT(2545971914)*root234 - NT(4279338600))*sqrt(NT(1)+sqrt(F2))/NT(146882) + NT(4705259439)*sqrt(F2)/NT(146882) - NT(2797188994)*root24/NT(73441) - NT(1977303520)*root234/NT(73441) + NT(3327746973)/NT(73441); + NT x1 = (-NT(15815)*sqrt(F2) + NT(19119)*root24 + NT(13444)*root234 - NT(23479))*sqrt(NT(1)+sqrt(F2))/NT(542) + NT(24831)*sqrt(F2)/NT(542) - NT(14840)*root24/NT(271) - NT(10708)*root234/NT(271) + NT(17856)/NT(271); + NT y1 = (-NT(9090)*sqrt(F2) + NT(9803)*root24 + NT(8313)*root234 - NT(13801))*sqrt(NT(1)+sqrt(F2))/NT(542) + NT(14453)*sqrt(F2)/NT(542) - NT(8526)*root24/NT(271) - NT(6195)*root234/NT(271) + NT(9501)/NT(271); + + NT r12 = (-NT("3028175552")*sqrt(F2) + NT("3601721772")*root24 + NT("2545971914")*root234 - NT("4279338600"))*sqrt(NT(1)+sqrt(F2))/NT(146882) + NT("4705259439")*sqrt(F2)/NT(146882) - NT("2797188994")*root24/NT(73441) - NT("1977303520")*root234/NT(73441) + NT("3327746973")/NT(73441); Circle c1(Point(x1, y1), r12); @@ -51,8 +52,8 @@ int main(int /*argc*/, char** /*argv*/) std::cout << "The solution is exact!" << std::endl; NT x2 = (NT(203109)*sqrt(F2) - NT(54251)*root24 + NT(10397)*root234 + NT(223071))*sqrt(sqrt(F2) - NT(1))/NT(84386) - NT(48258)*sqrt(F2)/NT(42193) + NT(23571)*root24/NT(42193) + NT(106401)*root234/NT(84386) - NT(14511)/NT(42193); - NT y2 = (NT(-406218)*sqrt(F2) + NT(277274)*root24 + NT(105785)*root234 - NT(446142))*sqrt(F2 - sqrt(F2))/NT(168772) - NT(23571)*sqrt(F2)/NT(42193) + NT(14511)*root24/NT(42193) + NT(48258)*root234/NT(42193) - NT(106401)/NT(42193); - NT r22 = (NT(-38737365474)*sqrt(F2) + NT(62674657740)*root24 + NT(43541114565)*root234 - NT(69201833202))*sqrt(NT(1)+sqrt(F2))/NT(3560498498) + NT(87751517789)*sqrt(F2)/NT(3560498498) - NT(35806387098)*root24/NT(1780249249) - NT(28113144981)*root234/NT(1780249249) + NT(125172318975)/NT(3560498498); + NT y2 = (-NT(406218)*sqrt(F2) + NT(277274)*root24 + NT(105785)*root234 - NT(446142))*sqrt(F2 - sqrt(F2))/NT(168772) - NT(23571)*sqrt(F2)/NT(42193) + NT(14511)*root24/NT(42193) + NT(48258)*root234/NT(42193) - NT(106401)/NT(42193); + NT r22 = (-NT("38737365474")*sqrt(F2) + NT("62674657740")*root24 + NT("43541114565")*root234 - NT("69201833202"))*sqrt(NT(1)+sqrt(F2))/NT("3560498498") + NT("87751517789")*sqrt(F2)/NT("3560498498") - NT("35806387098")*root24/NT("1780249249") - NT("28113144981")*root234/NT("1780249249") + NT("125172318975")/NT("3560498498"); Circle c2(Point(x2, y2), r22); std::pair cpt = Construct_intersection_2()(c1, c2);