mirror of https://github.com/CGAL/cgal
183 lines
6.6 KiB
Plaintext
183 lines
6.6 KiB
Plaintext
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.3 Beta 1
|
||
of CGAL, the Computational Geometry Algorithms Library.
|
||
|
||
|
||
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 (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,
|
||
easy-to-use, and efficient C++ software library of geometric data
|
||
structures and algorithms, like
|
||
- triangulations (2D constrained triangulations, Delaunay triangulations
|
||
and periodic triangulations in 2D and 3D),
|
||
- Voronoi diagrams (for 2D and 3D points, 2D additively weighted
|
||
Voronoi diagrams, and segment Voronoi diagrams),
|
||
- Boolean operations on polygons and polyhedra,
|
||
- regularized Boolean operations on polygons with curved arcs
|
||
- arrangements of curves,
|
||
- mesh generation (2D, 3D and surface mesh generation,
|
||
surface mesh subdivision and parametrization),
|
||
- alpha shapes (in 2D and 3D),
|
||
- convex hull algorithms (in 2D, 3D and dD),
|
||
- operations on polygons (straight skeleton and offset polygon),
|
||
- search structures (kd trees for nearest neighbor search, and
|
||
range and segment trees),
|
||
- interpolation (natural neighbor interpolation and placement of
|
||
streamlines),
|
||
- optimization algorithms (smallest enclosing sphere of points or
|
||
spheres, smallest enclosing ellipsoid of points, principal
|
||
component analysis).
|
||
|
||
|
||
|
||
|
||
Some modules are distributed under the terms of the LGPL Open Source
|
||
license (GNU Lesser General Public License v3 or later versions).
|
||
Most modules are distributed under the terms of the GPL Open Source
|
||
license (GNU General Public License v3 or later versions).
|
||
If your intended usage does not meet the criteria of the
|
||
aforementioned licenses, a commercial license can be purchased from
|
||
GeometryFactory (http://www.geometryfactory.com/).
|
||
|
||
|
||
For further information and for downloading the library and its
|
||
documentation, please visit the CGAL web site: https://www.cgal.org/
|