diff --git a/conanfile.py b/conanfile.py index 1e414481ec53edfc01c4894b5902ea3665694140..d0924b1d33bdcb48ddb37e22b0de3f3a5c3815fb 100644 --- a/conanfile.py +++ b/conanfile.py @@ -1,3 +1,5 @@ +import sys + from conans import ConanFile, Meson, tools @@ -22,7 +24,8 @@ class CsgEbConan(ConanFile): def build(self): meson = Meson(self) - meson.configure(build_folder="build") + args = ["-Dcpp_std=vc++latest"] if sys.platform in ("win32", "cygwin") else [] + meson.configure(build_folder="build", args=args) meson.build() meson.meson_test(args=["--verbose", "--print-errorlog"]) diff --git a/src/csg/levelset_3d.cpp b/src/csg/levelset_3d.cpp index 50bad9003eb9d52afbd3ca8bdce3d29ff35f203f..1f3756c7f26710bd64f0b1dba1ce2a9d6834f3e1 100644 --- a/src/csg/levelset_3d.cpp +++ b/src/csg/levelset_3d.cpp @@ -2,10 +2,11 @@ #include "csg_types.hpp" #include -#include #include #include +const double DEGREES_PER_RADIAN = 45 / std::atan(1); + namespace { template struct overloaded : Ts... { using Ts::operator()...; }; @@ -145,7 +146,7 @@ double signed_distance_3d(const LinearExtrude &lin_ext, double xx, double yy, double signed_distance_3d(const RotateExtrude &rot_ext, double xx, double yy, double zz) { - double tt = atan(yy / xx) * 180 / M_PI; + double tt = atan(yy / xx) * DEGREES_PER_RADIAN; if ((xx < 0 && yy >= 0) || (xx < 0 && yy < 0)) tt += 180; // Quadrants II & III else if (xx >= 0 && yy < 0) diff --git a/src/csg/tests/meson.build b/src/csg/tests/meson.build index b2897a64d00c878b6e155d5482c01b630817b804..b08f621a5909e55d0d5e1a428d74c49107c8ee65 100644 --- a/src/csg/tests/meson.build +++ b/src/csg/tests/meson.build @@ -14,7 +14,6 @@ test_csg = executable('unit_tests_csg', include_directories: [parser_inc], dependencies: [catch2, cgal], link_with: lib_csg_parser, - override_options: 'cpp_std=c++2a', ) test('unit_test_csg', test_csg)