Commit Graph

52 Commits

Author SHA1 Message Date
Sébastien Loriot ac8b6d4731 boost::is_same --> std::is_same 2022-06-10 08:18:20 +02:00
Sébastien Loriot 4f5f8341cc use std::enable_if_t 2022-06-10 07:37:53 +02:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Sébastien Loriot 254d60f642 First pass on removing license notice in header for GPL files 2019-10-19 15:23:19 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Andreas Fabri e2d19b0c8d Replace NULL and Nullptr_t with nullptr and nullptr_t 2019-06-04 23:45:44 +02:00
Andreas Fabri 88add6bc7b Regular_triangulation_3: Add undocumented Regular_triangulation_cell_base_3::hidden_points() 2019-02-07 15:24:00 +01:00
Mael Rouxel-Labbé a0427ec756 Fixed abusing Triangulation_cell_base_3 for Delaunay triangulations
TriangulationCellBase_3 does not request a circumcenter;
DelaunayTriangulationCellBase_3 does.

Delaunay_triangulation_3 only compiled because
Triangulation_cell_base_3 (and Triangulation_ds_cell_base_3 !)
provided circumcenter() operators and DT3 inherited T3's TDS.

- The circumcenter() functions are removed where they shouldn't exist
- DT3 uses DT_cell_base_3 as cell base instead of T_cell_base_3
- Concepts/Classes that supposedly only required TriangulationCellBase_3
  and then built Delaunay triangulations with that (Alpha Shapes, etc.)
  are upgraded to request DelaunayTriangulationCellBase_3 (anyway, it
  wouldn't compile if you actually provided a model of
  TriangulationCellBase_3)
- Fixed various wrong templates in classes/concepts such as
  MeshVertexBase_3 not refining RegularTriangulationVertexBase_3
  and (only in the doc) defaulting to Triangulation_vertex_base_3
- Removed the deprecated class (for 4+ years) T_cell_base_with_circumcenter
2018-04-26 13:21:53 +02:00
Sébastien Loriot ee57fc2d6c add SPDX identifier for files under the GPL-3+ license 2017-11-12 10:17:51 +01:00
Mael Rouxel-Labbé 5ef4ed6083 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Based on master
2017-07-03 16:12:14 +02:00
Mael Rouxel-Labbé 044deb6c7e Replaced boost_static_assert with cgal_static_assert and used () guards 2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé 2d2eb22f98 Fixed boost/core/is_same.hpp > boost/type_traits/is_same.hpp 2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé a990913d99 Fixed using default templated class functions 2017-06-28 10:16:23 +02:00
Jane Tournois 110316570c really use the GT given as a parameter
When the geom_traits given as parameter of `circumcenter` and/or
`weighted_circumcenter` was deriving from the cell base GT
(first template parameter), the gt was up-casted to the
cell base GT, and the function construct_circumcenter_3_object()
(or construct_weighted_circumcenter_3_object()) not
called on the right geom traits type --> possibly missing
the actual input of the function (the robust_circumcenter_traits in Mesh_3)

we add a static assert to check at compile time that both geom traits
are compatible
2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé b5affb383d Changed boost/core/enable_if.hpp to boost/utility/enable_if.hpp 2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé e122246f5f Fixed regular cell bases so they actually model the concept
Also, they should not use Bare_point / Weighted_point types, which are defined
in the triangulation (much later during compilation).
2017-06-28 10:16:23 +02:00
Mael Rouxel-Labbé 98226c97c4 Added a template parameter to Regular_tr_cell_base on hidden points handling
Before WP<->P implicit conversion changes, one could choose to not keep hidden
points by using `Triangulation_cell_base_3` as cell base instead of
`Regular_triangulation_cell_base_3`. This is not possible anymore as point types
will conflict.

This changes introduces a new template parameter to pass a policy on whether
to keep or discard hidden points.

It is a breaking change since it is placed before the container template
parameter, but it makes more sense that way and the container type template
was not documented.
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé f0d3e77558 Fixed usage of Bare point and Weighted point across Triangulation_3 2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé 5354134469 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle 2017-05-24 12:18:49 +02:00
Mael Rouxel-Labbé 7185d8fec0 Fixed boost/core/is_same.hpp > boost/type_traits/is_same.hpp 2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé 8ab41b37db Fixed using default templated class functions 2017-05-22 11:27:02 +02:00
Jane Tournois c37857bd9e really use the GT given as a parameter
When the geom_traits given as parameter of `circumcenter` and/or
`weighted_circumcenter` was deriving from the cell base GT
(first template parameter), the gt was up-casted to the
cell base GT, and the function construct_circumcenter_3_object()
(or construct_weighted_circumcenter_3_object()) not
called on the right geom traits type --> possibly missing
the actual input of the function (the robust_circumcenter_traits in Mesh_3)

we add a static assert to check at compile time that both geom traits
are compatible
2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé ecd7bbdc3e Changed boost/core/enable_if.hpp to boost/utility/enable_if.hpp 2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé 768b3f5b02 Fixed regular cell bases so they actually model the concept
Also, they should not use Bare_point / Weighted_point types, which are defined
in the triangulation (much later during compilation).
2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé 5872c22be3 Added a template parameter to Regular_tr_cell_base on hidden points handling
Before WP<->P implicit conversion changes, one could choose to not keep hidden
points by using `Triangulation_cell_base_3` as cell base instead of
`Regular_triangulation_cell_base_3`. This is not possible anymore as point types
will conflict.

This changes introduces a new template parameter to pass a policy on whether
to keep or discard hidden points.

It is a breaking change since it is placed before the container template
parameter, but it makes more sense that way and the container type template
was not documented.
2017-05-22 11:27:02 +02:00
Mael Rouxel-Labbé 5833272bd0 Fixed usage of Bare point and Weighted point across Triangulation_3 2017-05-22 11:20:45 +02:00
Mael Rouxel-Labbé aaed0f6737 Fixed using default templated member functions 2017-05-16 17:49:32 +02:00
Mael Rouxel-Labbé f45c008721 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Using afabri/Kernel_Weighted_point_without_conversion-GF
  @ 5c2a089e3e
2017-05-16 17:48:07 +02:00
Mael Rouxel-Labbé 5c2a089e3e Fixed boost/core/is_same.hpp > boost/type_traits/is_same.hpp 2017-05-13 22:21:59 +02:00
Mael Rouxel-Labbé 01b2d61493 (Re)-added the unhide_point() function that is required for P3T3 2017-05-12 17:08:36 +02:00
Mael Rouxel-Labbé 2f0f955a59 Merge branch 'Kernel_Weighted_point_without_conversion-GF' of github.com:afabri/cgal into Kernel_Weighted_point_without_conversion-GF 2017-05-12 13:12:47 +02:00
Jane Tournois 6ed6af00a0 really use the GT given as a parameter
When the geom_traits given as parameter of `circumcenter` and/or
`weighted_circumcenter` was deriving from the cell base GT
(first template parameter), the gt was up-casted to the
cell base GT, and the function construct_circumcenter_3_object()
(or construct_weighted_circumcenter_3_object()) not
called on the right geom traits type --> possibly missing
the actual input of the function (the robust_circumcenter_traits in Mesh_3)

we add a static assert to check at compile time that point types are the same
2017-05-12 13:07:00 +02:00
Mael Rouxel-Labbé b88bee84b2 Fixed using default templated class functions 2017-05-12 12:23:49 +02:00
Mael Rouxel-Labbé 13d8a6879f Changed boost/core/enable_if.hpp to boost/utility/enable_if.hpp 2017-05-11 14:25:18 +02:00
Mael Rouxel-Labbé f2a308d9f1 Fixed regular cell bases so they actually model the concept
Also, they should not use Bare_point / Weighted_point types, which are defined
in the triangulation (much later during compilation).
2017-05-10 16:35:28 +02:00
Mael Rouxel-Labbé b92528171c Added a template parameter to Regular_tr_cell_base on hidden points handling
Before WP<->P implicit conversion changes, one could choose to not keep hidden
points by using `Triangulation_cell_base_3` as cell base instead of
`Regular_triangulation_cell_base_3`. This is not possible anymore as point types
will conflict.

This changes introduces a new template parameter to pass a policy on whether
to keep or discard hidden points.

It is a breaking change since it is placed before the container template
parameter, but it makes more sense that way and the container type template
was not documented.
2017-04-27 11:42:34 +02:00
Mael Rouxel-Labbé 5856c7de2b Fixed usage of Bare point and Weighted point across Triangulation_3 2017-04-14 16:48:31 +02:00
Sébastien Loriot 50510c05ea add include directive for license of all GPL header files
done using:
ack-grep "^GPL" */package_info/*/license.txt -l | awk -F "/" '{print $1}' > /tmp/gpl_packages
for i in `cat /tmp/gpl_packages | \
          grep -v Operations_on_polyhedra | \
          grep -v Algebraic_kernel_for_circles | \
          grep -v Algebraic_kernel_for_spheres | \
          grep -v Polyhedron_IO`;
do
  echo $i
  python Scripts/developer_scripts/add_license_in_pkg_header.py $i
done
python Scripts/developer_scripts/add_license_in_pkg_header.py Operations_on_polyhedra Polygon_mesh_processing
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_circles Circular_kernel_2
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_spheres Circular_kernel_3
python Scripts/developer_scripts/add_license_in_pkg_header.py Polyhedron_IO Polyhedron
2017-01-19 15:20:25 +01:00
Laurent Rineau 3353d4d64d Kernel now refines RegularTriangulationTraits_3
ie all CGAL kernels are now models of `RegularTriangulationTraits_3`.
2016-11-03 14:55:39 +01:00
Andreas Fabri 34eb29cac5 Documentation 2016-11-03 13:07:17 +01:00
Andreas Fabri 871471b2d8 Remove Weighted_point_triangulation_traits_3 2016-11-03 13:07:17 +01:00
Andreas Fabri 5edd015669 Use Weighted_point_triangulation_traits_3 2016-11-03 13:06:42 +01:00
Jane Tournois 88666391da introduce weighted_circumcenter() for RegularTriangulationCellBase_3
weighted_circumcenter() replaces circumcenter() in the regular framework,
which is not a member of TriangulationCellBase_3 anymore.

Triangulation_cell_base_with_circumcenter_3 is deprecated and replaced by:
Delaunay_triangulation_cell_base_with_circumcenter_3
and
Regular_triangulation_cell_base_with_circumcenter_3.

Implement the changes in documentation, Triangulation_3 code and Mesh_3 code.
2014-01-16 16:55:19 +01:00
Jane Tournois bf9e964f0e remove macro CGAL_REGULAR_TRIANGULATION_3_USE_CIRCUMCENTER_CACHE
has been checked and is always activated
2014-01-09 12:05:50 +01:00
Laurent Rineau 70bf8d7e88 New branch to add c->circumcenter (and the verson with cache) to RT3 2013-02-07 19:07:42 +01:00
Laurent Rineau 795c71fc9b Fix headers of Mesh_2 and Mesh_3. All were missing #include.
I found out that way that <CGAL/Mesh_3/Refine_facets.h> and
<CGAL/Mesh_3/Protect_edges_sizing_field> were using global functions
instead of functors of the traits class.

Note also the funny bug that <CGAL/Regular_triangulation_cell_base_3.h> was
depending on <CGAL/Triangulation_vertex_base_3.h>!
2012-10-08 09:33:38 +00:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Sébastien Loriot 52317dd49f add python script (replace_CGAL_NAMESPACE.py) to replace CGAL_BEGIN_NAMESPACE and CGAL_END_NAMESPACE
by namespace CGAL { and } //namespace CGAL. in all .h and .cpp files
in a directory.
Apply it to all packages in the trunk
Remove macro definition from the config.h file.
2010-06-09 07:37:13 +00:00
Sylvain Pion 443277dab0 Pass Cell_handle and Vertex_handle by value instead of by const&. This undoes :
r19107 | afabri | 2003-10-17 10:49:19 +0200 (Ven 17 oct 2003) | 2 lignes
    Added const& for gaining performance

which was justified at the time by the fact that on VC++, handles encapsulated iterators.
2009-08-17 15:11:03 +00:00