From ac5d63d479f0945b61454f9374fef22a30486736 Mon Sep 17 00:00:00 2001 From: Laurent Rineau Date: Wed, 2 Jun 2021 14:44:57 +0200 Subject: [PATCH] Prepare CGAL-5.3-beta1 --- .../doc/resources/1.8.13/menu_version.js | 7 +- .../doc/resources/1.8.14/menu_version.js | 7 +- .../doc/resources/1.8.20/menu_version.js | 7 +- .../doc/resources/1.8.4/menu_version.js | 7 +- Installation/CHANGES.md | 3 +- Installation/include/CGAL/version.h | 4 +- .../announcement/announcement-beta.md | 89 ++++++++++- .../announcement/mailing-beta.eml | 141 +++++++++++++++++- 8 files changed, 240 insertions(+), 25 deletions(-) diff --git a/Documentation/doc/resources/1.8.13/menu_version.js b/Documentation/doc/resources/1.8.13/menu_version.js index ff345f63b50..6226aa58422 100644 --- a/Documentation/doc/resources/1.8.13/menu_version.js +++ b/Documentation/doc/resources/1.8.13/menu_version.js @@ -3,12 +3,13 @@ var url_re = /(cgal\.geometryfactory\.com\/CGAL\/doc\/|doc\.cgal\.org\/)(master|latest|(\d\.\d+|\d\.\d+\.\d+)(-beta\d)?)\//; var url_local = /.*\/doc_output\//; - var current_version_local = '5.2' + var current_version_local = '5.3-beta1' var all_versions = [ 'master', - '5.2', + '5.3-beta1', 'latest', - '5.1.2', + '5.2.2', + '5.1.5', '5.0.4', '4.14.3', '4.13.2', diff --git a/Documentation/doc/resources/1.8.14/menu_version.js b/Documentation/doc/resources/1.8.14/menu_version.js index ff345f63b50..6226aa58422 100644 --- a/Documentation/doc/resources/1.8.14/menu_version.js +++ b/Documentation/doc/resources/1.8.14/menu_version.js @@ -3,12 +3,13 @@ var url_re = /(cgal\.geometryfactory\.com\/CGAL\/doc\/|doc\.cgal\.org\/)(master|latest|(\d\.\d+|\d\.\d+\.\d+)(-beta\d)?)\//; var url_local = /.*\/doc_output\//; - var current_version_local = '5.2' + var current_version_local = '5.3-beta1' var all_versions = [ 'master', - '5.2', + '5.3-beta1', 'latest', - '5.1.2', + '5.2.2', + '5.1.5', '5.0.4', '4.14.3', '4.13.2', diff --git a/Documentation/doc/resources/1.8.20/menu_version.js b/Documentation/doc/resources/1.8.20/menu_version.js index ff345f63b50..6226aa58422 100644 --- a/Documentation/doc/resources/1.8.20/menu_version.js +++ b/Documentation/doc/resources/1.8.20/menu_version.js @@ -3,12 +3,13 @@ var url_re = /(cgal\.geometryfactory\.com\/CGAL\/doc\/|doc\.cgal\.org\/)(master|latest|(\d\.\d+|\d\.\d+\.\d+)(-beta\d)?)\//; var url_local = /.*\/doc_output\//; - var current_version_local = '5.2' + var current_version_local = '5.3-beta1' var all_versions = [ 'master', - '5.2', + '5.3-beta1', 'latest', - '5.1.2', + '5.2.2', + '5.1.5', '5.0.4', '4.14.3', '4.13.2', diff --git a/Documentation/doc/resources/1.8.4/menu_version.js b/Documentation/doc/resources/1.8.4/menu_version.js index ff345f63b50..6226aa58422 100644 --- a/Documentation/doc/resources/1.8.4/menu_version.js +++ b/Documentation/doc/resources/1.8.4/menu_version.js @@ -3,12 +3,13 @@ var url_re = /(cgal\.geometryfactory\.com\/CGAL\/doc\/|doc\.cgal\.org\/)(master|latest|(\d\.\d+|\d\.\d+\.\d+)(-beta\d)?)\//; var url_local = /.*\/doc_output\//; - var current_version_local = '5.2' + var current_version_local = '5.3-beta1' var all_versions = [ 'master', - '5.2', + '5.3-beta1', 'latest', - '5.1.2', + '5.2.2', + '5.1.5', '5.0.4', '4.14.3', '4.13.2', diff --git a/Installation/CHANGES.md b/Installation/CHANGES.md index ae17489d8f1..216493431f7 100644 --- a/Installation/CHANGES.md +++ b/Installation/CHANGES.md @@ -31,9 +31,10 @@ A comprehensive list of the supported file formats is available in the Stream_su inversely, the following [page](https://doc.cgal.org/5.3/Stream_support/IOStreamSupportedFileFormats.html) can be used to find out which CGAL data structures can be used given a specific file format. -### General +### [Requirements](https://doc.cgal.org/5.3/Manual/thirdparty.html) - The CMake minimal version is now `3.14`. +- The GNU compiler g++ versions 6 and 7 are no longer tested. Only version 8.3 or later are supported ### [2D and 3D Linear Geometry Kernel](https://doc.cgal.org/5.3/Manual/packages.html#PkgKernel23) diff --git a/Installation/include/CGAL/version.h b/Installation/include/CGAL/version.h index 7982e27a439..36972322483 100644 --- a/Installation/include/CGAL/version.h +++ b/Installation/include/CGAL/version.h @@ -17,10 +17,10 @@ #define CGAL_VERSION_H #ifndef SWIG -#define CGAL_VERSION 5.3-dev +#define CGAL_VERSION 5.3-beta1 #define CGAL_GIT_HASH abcdef #endif -#define CGAL_VERSION_NR 1050300000 +#define CGAL_VERSION_NR 1050300910 #define CGAL_SVN_REVISION 99999 #define CGAL_RELEASE_DATE 20210630 diff --git a/Maintenance/public_release/announcement/announcement-beta.md b/Maintenance/public_release/announcement/announcement-beta.md index 9208f4169c9..ad13992963f 100644 --- a/Maintenance/public_release/announcement/announcement-beta.md +++ b/Maintenance/public_release/announcement/announcement-beta.md @@ -1,5 +1,88 @@ -The CGAL Open Source Project is pleased to announce the release 5.2 Beta 1 of CGAL, the Computational Geometry Algorithms Library. +%The CGAL Open Source Project is pleased to announce the release 5.3 Beta 1 of CGAL, the Computational Geometry Algorithms Library. -CGAL version 5.2 Beta 1 is a public testing release. It should provide a solid ground to report bugs that need to be tackled before the release of the final version of CGAL 5.2 in December 2020. +CGAL version 5.3 Beta 1 is a public testing release. It should provide a solid ground to report bugs that need to be tackled before the release of the final version of CGAL 5.3 in July 2021. + + +Besides fixes and general enhancement to existing packages, the following has changed since CGAL 5.2: + +### [Quadtrees, Octrees, and Orthtrees](https://doc.cgal.org/5.3/Manual/packages.html#PkgOrthtree) (new package) + +- This package implements a tree data structure in which each node encloses a hypercubic section + of space and each non-leave node has hypercubic children whose edge lengths are half its edge length. + Such a data structure is known as a quadtree in 2D, an octree in 3D, and is generalized + as an "orthtree" in higher dimensions. + +### [Triangulations on the Sphere](https://doc.cgal.org/5.3/Manual/packages.html#PkgTriangulationOnSphere2) (new package) + +- This package enables the construction and manipulation of Delaunay triangulations on the 2-sphere. + Triangulations are built incrementally and can be modified by insertion or removal of vertices. + Point location querying and primitives to build the dual Voronoi diagram are provided. + +### File Input / Output + +- Point set, polygon soup, and polygon mesh file I/O functions have been harmonized and documented: + - Point set I/O functions can be found in the packages [Point_set_processing_3](https://doc.cgal.org/5.3/Manual/packages.html#PkgPolygonMeshProcessing), and [Point_set_3](https://doc.cgal.org/5.3/Manual/packages.html#PkgPointSet3). + - Polygon mesh I/O functions can be found in the package [BGL](https://doc.cgal.org/5.3/Manual/packages.html#PkgBGL). + - Polygon soup I/O can be found in the package [Stream_support](https://doc.cgal.org/5.3/Manual/packages.html#PkgStreamSupport). + +A comprehensive list of the supported file formats is available in the Stream_support package +[here](https://doc.cgal.org/5.3/Stream_support/index.html#IOstreamSupportedFormats); +inversely, the following [page](https://doc.cgal.org/5.3/Stream_support/IOStreamSupportedFileFormats.html) +can be used to find out which CGAL data structures can be used given a specific file format. + +### [Requirements](https://doc.cgal.org/5.3/Manual/thirdparty.html) + +- The CMake minimal version is now `3.14`. +- The GNU compiler g++ versions 6 and 7 are no longer tested. Only version 8.3 or later are supported + +### [2D and 3D Linear Geometry Kernel](https://doc.cgal.org/5.3/Manual/packages.html#PkgKernel23) + +- Added `is_translation()`, `is_scaling()`, `is_reflection()`, and `is_rotation()` to the classes + [`Aff_transformation_2`](https://doc.cgal.org/5.3/Kernel_23/classCGAL_1_1Aff__transformation__2.html) + and [`Aff_transformation_3`](https://doc.cgal.org/5.3/Kernel_23/classCGAL_1_1Aff__transformation__3.html), + which enable determining if the transformations use a specialized representation internally. + +### [2D Regularized Boolean Set-Operations](https://doc.cgal.org/5.3/Manual/packages.html#PkgBooleanSetOperations2) +- Added documentation for the free functions [`oriented_side(const Point_2& p, ....)`](https://doc.cgal.org/5.3/Boolean_set_operations_2/group__boolean__oriented__side.html) + that accept a point and a polygon. +- Documentation has been improved across the whole package. + +### [Polygon Mesh Processing](https://doc.cgal.org/5.3/Manual/packages.html#PkgPolygonMeshProcessing) + +- Added the class [`CGAL::Polyhedral_envelope`](https://doc.cgal.org/5.3/Polygon_mesh_processing/structCGAL_1_1Polyhedral__envelope.html), + providing a way to quickly check if a primitive (point, segment, or triangle) + is within a polyhedral envelope around a set of triangles. It is based on the work of + Bolun Wang, Teseo Schneider, Yixin Hu, Marco Attene, and Daniele Panozzo. + "Exact and efficient polyhedral envelope containment check." (ACM Trans. Graph., 39-4, July 2020). +- Added more functions in the [visitor of the corefinement based methods](https://doc.cgal.org/5.3/Polygon_mesh_processing/classPMPCorefinementVisitor.html) + to track all edge creations. + +### [Surface Mesh Topology](https://doc.cgal.org/5.3/Manual/packages.html#PkgSurfaceMeshTopologySummary) +- Added the function [`CGAL::Surface_mesh_topology::Curves_on_surface_topology::is_homotopic_to_simple_cycle()`](https://doc.cgal.org/5.3/Surface_mesh_topology/classCGAL_1_1Surface__mesh__topology_1_1Curves__on__surface__topology.html#a8d7c4cba2cf2cff542f5cd93117233db), + which can be used to determine whehter a closed path on a surface mesh can be continously + transformed to a cycle without self intersection. + +### [Surface Mesh Simplification](https://doc.cgal.org/5.3/Manual/packages.html#PkgSurfaceMeshSimplification) +- Added a filtering mechanism so that costly tests get only applied to the next candidate for the edge collapse. +- Added the class [`Polyhedral_envelope_filter`](https://doc.cgal.org/5.3/Surface_mesh_simplification/classCGAL_1_1Surface__mesh__simplification_1_1Polyhedral__envelope__filter.html), + which enables to perform mesh simplification inside a polyhedral envelope of the input mesh. + +### [2D Polyline Simplification](https://doc.cgal.org/5.3/Manual/packages.html#PkgPolylineSimplification2) +- When polylines have common subsequences of vertices, these subsequences may now be simplifified simultaneously. + +### [dD Triangulations](https://doc.cgal.org/5.3/Manual/packages.html#PkgTriangulations) +- Added the function [`insert_if_in_star()`](https://doc.cgal.org/5.3/Triangulation/classCGAL_1_1Regular__triangulation.html#aa8df2d138f341939e834bcdd7cb6c71a) + to the class [`CGAL::Regular_triangulation`](https://doc.cgal.org/5.3/Triangulation/classCGAL_1_1Regular__triangulation.html), + which enables users to insert a point `p` in a regular triangulation on the condition that `p` + appears post-insertion in the star of a user-specified, existing vertex. + +### [2D and 3D Alpha Shapes](https://doc.cgal.org/5.3/Manual/packages.html#PkgAlphaShapes2) +- **Breaking change**: The following deprecated classes have been removed: `Alpha_shape_euclidean_traits_2`, + `Weighted_alpha_shape_euclidean_traits_2`, `Alpha_shape_euclidean_traits_3`, and + `Weighted_alpha_shape_euclidean_traits_3`. All CGAL kernel can be used directly as models + of the concepts of the 2D and 3D Alpha Shape packages. + +### [Classification](https://doc.cgal.org/5.3/Manual/packages.html#PkgClassification) +- **Breaking change**: the support for TensorFlow has been dropped; the + classifier `CGAL::TensorFlow::Neural_network_classifier` has been removed. -Fixes, improvements, and various small features have been added since CGAL 5.1. See https://www.cgal.org/2020/11/18/cgal52-beta1/ for a complete list of changes. diff --git a/Maintenance/public_release/announcement/mailing-beta.eml b/Maintenance/public_release/announcement/mailing-beta.eml index 7ef0bcdded4..637203ea579 100644 --- a/Maintenance/public_release/announcement/mailing-beta.eml +++ b/Maintenance/public_release/announcement/mailing-beta.eml @@ -1,19 +1,146 @@ -Subject: CGAL 5.2 Beta 1 Released, Computational Geometry Algorithms Library +Subject: CGAL 5.3 Beta 1 Released, Computational Geometry Algorithms Library Content-Type: text/plain; charset="utf-8" Body: -The CGAL Open Source Project is pleased to announce the release 5.2 Beta 1 +The CGAL Open Source Project is pleased to announce the release 5.3 Beta 1 of CGAL, the Computational Geometry Algorithms Library. -CGAL version 5.2 Beta 1 is a public testing release. It should provide a +CGAL version 5.3 Beta 1 is a public testing release. It should provide a solid ground to report bugs that need to be tackled before the release -of the final version of CGAL 5.2 in December 2020. +of the final version of CGAL 5.3 in July 2021. -Fixes, improvements, and various small features have been added since -CGAL 5.1. See https://www.cgal.org/2020/11/18/cgal52-beta1/ for a -complete list of changes. +Besides fixes and general enhancement to existing packages, the following +has changed since CGAL 5.2: + +Quadtrees, Octrees, and Orthtrees (new package) + +- This package implements a tree data structure in which each node + encloses a hypercubic section of space and each non-leave node has + hypercubic children whose edge lengths are half its edge length. + Such a data structure is known as a quadtree in 2D, an octree in 3D, + and is generalized as an “orthtree” in higher dimensions. + + https://www.cgal.org/2021/04/27/Orthtree/ + + https://doc.cgal.org/5.3/Manual/packages.html#PkgOrthtree + + +Triangulations on the Sphere (new package) + +- This package enables the construction and manipulation of Delaunay + triangulations on the 2-sphere. Triangulations are built + incrementally and can be modified by insertion or removal of + vertices. Point location querying and primitives to build the dual + Voronoi diagram are provided. + + https://doc.cgal.org/5.3/Manual/packages.html#PkgTriangulationOnSphere2 + + +File Input / Output + +- Point set, polygon soup, and polygon mesh file I/O functions have + been harmonized and documented: + - Point set I/O functions can be found in the packages + Point_set_processing_3, and Point_set_3. + - Polygon mesh I/O functions can be found in the package BGL. + - Polygon soup I/O can be found in the package Stream_support. + +A comprehensive list of the supported file formats is available in the +Stream_support package: + + https://doc.cgal.org/5.3/Stream_support/index.html#IOstreamSupportedFormats + +Inversely, the following page can be used to find out which CGAL data +structures can be used given a specific file format. + + https://doc.cgal.org/5.3/Stream_support/IOStreamSupportedFileFormats.html + + +Requirements + +- The CMake minimal version is now 3.14. + +- The GNU compiler g++ versions 6 and 7 are no longer tested. Only + version 8.3 or later are supported + + +2D and 3D Linear Geometry Kernel + +- Added is_translation(), is_scaling(), is_reflection(), and + is_rotation() to the classes Aff_transformation_2 and + Aff_transformation_3, which enable determining if the + transformations use a specialized representation internally. + + +2D Regularized Boolean Set-Operations + +- Added documentation for the free functions + oriented_side(const Point_2& p, ....) that accept a point and a + polygon. +- Documentation has been improved across the whole package. + + +Polygon Mesh Processing + +- Added the class CGAL::Polyhedral_envelope, providing a way to + quickly check if a primitive (point, segment, or triangle) is within + a polyhedral envelope around a set of triangles. It is based on the + work of Bolun Wang, Teseo Schneider, Yixin Hu, Marco Attene, and + Daniele Panozzo. “Exact and efficient polyhedral envelope + containment check.” (ACM Trans. Graph., 39-4, July 2020). +- Added more functions in the visitor of the corefinement based + methods to track all edge creations. + + +Surface Mesh Topology + +- Added the function + CGAL::Surface_mesh_topology::Curves_on_surface_topology::is_homotopic_to_simple_cycle(), + which can be used to determine whehter a closed path on a surface + mesh can be continously transformed to a cycle without self + intersection. + + +Surface Mesh Simplification + +- Added a filtering mechanism so that costly tests get only applied to + the next candidate for the edge collapse. +- Added the class Polyhedral_envelope_filter, which enables to perform + mesh simplification inside a polyhedral envelope of the input mesh. + + +2D Polyline Simplification + +- When polylines have common subsequences of vertices, these + subsequences may now be simplifified simultaneously. + + +dD Triangulations + +- Added the function insert_if_in_star() to the class + CGAL::Regular_triangulation, which enables users to insert a point p + in a regular triangulation on the condition that p appears + post-insertion in the star of a user-specified, existing vertex. + + +2D and 3D Alpha Shapes + +- Breaking change: The following deprecated classes have been removed: + Alpha_shape_euclidean_traits_2, + Weighted_alpha_shape_euclidean_traits_2, + Alpha_shape_euclidean_traits_3, and + Weighted_alpha_shape_euclidean_traits_3. All CGAL kernel can be used + directly as models of the concepts of the 2D and 3D Alpha Shape + packages. + + +Classification + +- Breaking change: the support for TensorFlow has been dropped; the + classifier CGAL::TensorFlow::Neural_network_classifier has been + removed. The CGAL project is a collaborative effort to develop a robust,