From 7bf9c14f721f476694abfa9d3fc3cfc48581894c Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Thu, 28 Jan 2021 10:01:52 +0100 Subject: [PATCH] Factorization --- BGL/include/CGAL/boost/graph/IO/GOCAD.h | 9 ++------- .../CGAL/boost/graph/IO/Generic_facegraph_printer.h | 8 +------- BGL/include/CGAL/boost/graph/IO/PLY.h | 7 +------ BGL/include/CGAL/boost/graph/IO/STL.h | 7 +------ BGL/include/CGAL/boost/graph/IO/VTK.h | 7 +------ BGL/include/CGAL/boost/graph/named_params_helper.h | 12 ++++++++++++ Point_set_3/include/CGAL/Point_set_3/IO/PLY.h | 7 +------ .../include/CGAL/IO/write_off_points.h | 7 +------ .../include/CGAL/IO/write_ply_points.h | 7 +------ .../include/CGAL/IO/write_xyz_points.h | 7 +------ Stream_support/include/CGAL/IO/GOCAD.h | 7 +------ Stream_support/include/CGAL/IO/Generic_writer.h | 7 +------ Stream_support/include/CGAL/IO/PLY.h | 8 ++------ Stream_support/include/CGAL/IO/STL.h | 7 +------ Stream_support/include/CGAL/IO/VTK.h | 9 +++------ Surface_mesh/include/CGAL/Surface_mesh/IO/PLY.h | 7 +------ 16 files changed, 31 insertions(+), 92 deletions(-) diff --git a/BGL/include/CGAL/boost/graph/IO/GOCAD.h b/BGL/include/CGAL/boost/graph/IO/GOCAD.h index 0c0692b5b6f..ac5ea9957c0 100644 --- a/BGL/include/CGAL/boost/graph/IO/GOCAD.h +++ b/BGL/include/CGAL/boost/graph/IO/GOCAD.h @@ -18,7 +18,7 @@ #include #include #include - +#include #include #include @@ -303,12 +303,7 @@ bool write_GOCAD(std::ostream& os, if(!os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); os << "GOCAD TSurf 1\n" "HEADER {\n" diff --git a/BGL/include/CGAL/boost/graph/IO/Generic_facegraph_printer.h b/BGL/include/CGAL/boost/graph/IO/Generic_facegraph_printer.h index 08b6c69c84b..53709564546 100644 --- a/BGL/include/CGAL/boost/graph/IO/Generic_facegraph_printer.h +++ b/BGL/include/CGAL/boost/graph/IO/Generic_facegraph_printer.h @@ -117,13 +117,7 @@ public: if(!m_os.good()) return false; - if(!CGAL::parameters::is_default_parameter( - get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter( - get_parameter(np, internal_np::stream_precision), 6); - m_os.precision(precision); - } + set_default_stream_precision(m_os, np); VPM vpm = choose_parameter(get_parameter(np, internal_np::vertex_point), get_const_property_map(CGAL::vertex_point, g)); diff --git a/BGL/include/CGAL/boost/graph/IO/PLY.h b/BGL/include/CGAL/boost/graph/IO/PLY.h index 667fed4672a..6ad32267952 100644 --- a/BGL/include/CGAL/boost/graph/IO/PLY.h +++ b/BGL/include/CGAL/boost/graph/IO/PLY.h @@ -361,12 +361,7 @@ bool write_PLY(std::ostream& os, if(!os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); // Write header os << "ply" << std::endl diff --git a/BGL/include/CGAL/boost/graph/IO/STL.h b/BGL/include/CGAL/boost/graph/IO/STL.h index 4ab8df78ab0..11005c1dfb4 100644 --- a/BGL/include/CGAL/boost/graph/IO/STL.h +++ b/BGL/include/CGAL/boost/graph/IO/STL.h @@ -262,12 +262,7 @@ bool write_STL(std::ostream& os, if(!os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); if(get_mode(os) == IO::BINARY) { diff --git a/BGL/include/CGAL/boost/graph/IO/VTK.h b/BGL/include/CGAL/boost/graph/IO/VTK.h index ab3ed3c02cb..a62f3e1cb91 100644 --- a/BGL/include/CGAL/boost/graph/IO/VTK.h +++ b/BGL/include/CGAL/boost/graph/IO/VTK.h @@ -439,12 +439,7 @@ bool write_VTP(std::ostream& os, if(!os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); os << "\n" << "::fa Alpha_expansion_boost_adjacency_list_tag >::type type; }; + + template + void set_default_stream_precision(std::ostream& os, const NP& np) + { + if(!parameters::is_default_parameter( + parameters::get_parameter(np, internal_np::stream_precision))) + { + const int precision = parameters::choose_parameter( + parameters::get_parameter(np, internal_np::stream_precision)); + os.precision(precision); + } + } } //namespace CGAL diff --git a/Point_set_3/include/CGAL/Point_set_3/IO/PLY.h b/Point_set_3/include/CGAL/Point_set_3/IO/PLY.h index 0d5e13db927..ae2d6ad7fb7 100644 --- a/Point_set_3/include/CGAL/Point_set_3/IO/PLY.h +++ b/Point_set_3/include/CGAL/Point_set_3/IO/PLY.h @@ -493,12 +493,7 @@ bool write_PLY(std::ostream& os, return false; } - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); os << "ply" << std::endl << ((get_mode(os) == IO::BINARY) ? "format binary_little_endian 1.0" : "format ascii 1.0") << std::endl diff --git a/Point_set_processing_3/include/CGAL/IO/write_off_points.h b/Point_set_processing_3/include/CGAL/IO/write_off_points.h index e843e770de0..0f075981d0b 100644 --- a/Point_set_processing_3/include/CGAL/IO/write_off_points.h +++ b/Point_set_processing_3/include/CGAL/IO/write_off_points.h @@ -66,12 +66,7 @@ bool write_OFF_PSP(std::ostream& os, return false; } - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); // Write header os << "NOFF" << std::endl; diff --git a/Point_set_processing_3/include/CGAL/IO/write_ply_points.h b/Point_set_processing_3/include/CGAL/IO/write_ply_points.h index e4c573ec0af..84e5442e810 100644 --- a/Point_set_processing_3/include/CGAL/IO/write_ply_points.h +++ b/Point_set_processing_3/include/CGAL/IO/write_ply_points.h @@ -212,12 +212,7 @@ bool write_PLY(std::ostream& os, return false; } - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); if (has_normals) return write_PLY_with_properties(os, points, diff --git a/Point_set_processing_3/include/CGAL/IO/write_xyz_points.h b/Point_set_processing_3/include/CGAL/IO/write_xyz_points.h index b726dd5bac1..2a4ef60d17b 100644 --- a/Point_set_processing_3/include/CGAL/IO/write_xyz_points.h +++ b/Point_set_processing_3/include/CGAL/IO/write_xyz_points.h @@ -67,12 +67,7 @@ bool write_XYZ_PSP(std::ostream& os, return false; } - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); // Write positions + normals for(typename PointRange::const_iterator it = points.begin(); it != points.end(); it++) diff --git a/Stream_support/include/CGAL/IO/GOCAD.h b/Stream_support/include/CGAL/IO/GOCAD.h index 09e90e26949..2be6af7a0ad 100644 --- a/Stream_support/include/CGAL/IO/GOCAD.h +++ b/Stream_support/include/CGAL/IO/GOCAD.h @@ -299,12 +299,7 @@ bool write_GOCAD(std::ostream& os, set_ascii_mode(os); // GOCAD is ASCII only - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); os << "GOCAD TSurf 1\n" "HEADER {\n" diff --git a/Stream_support/include/CGAL/IO/Generic_writer.h b/Stream_support/include/CGAL/IO/Generic_writer.h index 6b31a609014..c9700536edd 100644 --- a/Stream_support/include/CGAL/IO/Generic_writer.h +++ b/Stream_support/include/CGAL/IO/Generic_writer.h @@ -49,12 +49,7 @@ public: if(!m_os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - m_os.precision(precision); - } + set_default_stream_precision(m_os, np); m_writer.write_header(m_os, points.size(), 0, polygons.size()); for(std::size_t i=0, end=points.size(); i #include +#include #include #include @@ -467,12 +468,7 @@ bool write_PLY(std::ostream& out, if(!out.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - out.precision(precision); - } + set_default_stream_precision(out, np); // Write header out << "ply" << std::endl diff --git a/Stream_support/include/CGAL/IO/STL.h b/Stream_support/include/CGAL/IO/STL.h index 4e5c082b24e..437d7f410bb 100644 --- a/Stream_support/include/CGAL/IO/STL.h +++ b/Stream_support/include/CGAL/IO/STL.h @@ -317,12 +317,7 @@ bool write_STL(std::ostream& os, if(!os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); if(get_mode(os) == IO::BINARY) { diff --git a/Stream_support/include/CGAL/IO/VTK.h b/Stream_support/include/CGAL/IO/VTK.h index 304078d2939..76c13581d4e 100644 --- a/Stream_support/include/CGAL/IO/VTK.h +++ b/Stream_support/include/CGAL/IO/VTK.h @@ -19,6 +19,8 @@ #include #include +#include + #ifdef CGAL_USE_VTK #include @@ -393,12 +395,7 @@ bool write_VTP(std::ostream& os, if(!os.good()) return false; - if(!parameters::is_default_parameter( - parameters::get_parameter(np, internal_np::stream_precision))) - { - const int precision = choose_parameter(get_parameter(np, internal_np::stream_precision), 6); - os.precision(precision); - } + set_default_stream_precision(os, np); os << "\n" << "