From a59f2d6a51233f3ad0e7d5579b9c2a7bfecac279 Mon Sep 17 00:00:00 2001 From: Ahmed Essam Date: Wed, 23 Sep 2020 11:01:43 -0700 Subject: [PATCH] Address problems in last test suite run https://cgal.geometryfactory.com/CGAL/testsuite/results-5.2-Ic-11.shtml#Arrangement_on_surface_2_Demo --- .../Arrangement_on_surface_2/ArrangementDemoTab.cpp | 11 ++++++----- .../ArrangementDemoWindow.cpp | 1 + .../ArrangementPainterOstream.cpp | 12 +++++++++++- .../ConstructBoundingBox.cpp | 2 +- 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoTab.cpp b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoTab.cpp index 346772d8a32..26827ebbc12 100644 --- a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoTab.cpp +++ b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoTab.cpp @@ -30,9 +30,8 @@ #include #include +#include -static constexpr double MAX_WIDTH = - std::numeric_limits::max() / 1048576; ArrangementDemoTabBase::ArrangementDemoTabBase( QWidget* parent ) : QWidget( parent ), @@ -59,6 +58,8 @@ void ArrangementDemoTabBase::setupUi( ) this->layout->addWidget( this->graphicsView, 0, 0 ); this->graphicsView->setScene( scene ); + double MAX_WIDTH = std::numeric_limits::max() / 1048576; + double xymin = -MAX_WIDTH / 2; double wh = MAX_WIDTH; scene->setSceneRect(xymin, xymin, wh, wh); @@ -435,8 +436,8 @@ static bool isFinite(const CGAL::Bbox_2& box) static CGAL::Bbox_2 addMargins(const CGAL::Bbox_2& box) { // add margin to bounding box - float x_margin; - float y_margin; + double x_margin; + double y_margin; if (box.xmin() == box.xmax() || box.ymin() == box.ymax()) { static constexpr float const_margin = 50; @@ -445,7 +446,7 @@ static CGAL::Bbox_2 addMargins(const CGAL::Bbox_2& box) } else { - static constexpr float prop_margin = 0.10; + static constexpr double prop_margin = 0.10; x_margin = (box.xmax() - box.xmin()) * prop_margin; y_margin = (box.ymax() - box.ymin()) * prop_margin; } diff --git a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoWindow.cpp b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoWindow.cpp index 213b8a1e810..09361d43371 100644 --- a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoWindow.cpp +++ b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementDemoWindow.cpp @@ -28,6 +28,7 @@ #include #include #include +#include #include diff --git a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementPainterOstream.cpp b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementPainterOstream.cpp index ca08dd685be..b89e07452c6 100644 --- a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementPainterOstream.cpp +++ b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ArrangementPainterOstream.cpp @@ -11,7 +11,10 @@ #include "ArrangementPainterOstream.h" #include "ArrangementTypes.h" + +#ifdef CGAL_USE_CORE #include +#endif #include @@ -262,7 +265,8 @@ ArrangementPainterOstream> sampled_points; // TODO: get adaptive number of samples - size_t number_of_samples = 100 * (param_range.second - param_range.first); + unsigned int number_of_samples = + 100 * (param_range.second - param_range.first); sampled_points.reserve(number_of_samples); supporting_curve.sample( @@ -397,6 +401,7 @@ auto ArrangementPainterOstream>::getPointsList(const X_monotone_curve_2& curve) -> std::vector { +#ifdef CGAL_USE_CORE typedef Curve_renderer_facade Facade; typedef std::pair Coord_2; typedef std::vector Coord_vec_2; @@ -404,6 +409,9 @@ auto ArrangementPainterOstream points; Facade::instance().draw(curve, points); return points; +#else + return {}; +#endif } template @@ -447,11 +455,13 @@ template void ArrangementPainterOstream< CGAL::Arr_algebraic_segment_traits_2>::setupFacade() { +#ifdef CGAL_USE_CORE typedef Curve_renderer_facade Facade; QGraphicsView* view = this->getView(); QRectF viewport = this->viewportRect(); CGAL::Bbox_2 bbox = this->convert(viewport).bbox(); Facade::setup(bbox, view->width(), view->height()); +#endif } // Instantiation of Arr_rational_function_traits_2 diff --git a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ConstructBoundingBox.cpp b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ConstructBoundingBox.cpp index bb81f22eda5..1c9de96da5d 100644 --- a/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ConstructBoundingBox.cpp +++ b/Arrangement_on_surface_2/demo/Arrangement_on_surface_2/ConstructBoundingBox.cpp @@ -54,7 +54,7 @@ struct ConstructBoundingBox_impl bbox = inf_bbox; } #ifdef CGAL_USE_CORE - catch (Zero_resultant_exception& ex) + catch (Zero_resultant_exception&) { std::cerr << "Exception thrown of type \"Zero_resultant_exception\"\n"; std::cerr << __FILE__ << ':' << __LINE__ << '\n';