Commit Graph

57 Commits

Author SHA1 Message Date
Jane Tournois e0335e3e5e move everything about C3t3 to new package MDS_3 2022-06-08 21:46:51 +02:00
Laurent Rineau 34cde36fd9 Merge pull request #5209 from janetournois/Mesh_3-debug_global_optimizers-jtournois
Mesh_3 global optimizers - improve projection to surface
2020-12-09 16:14:35 +01:00
Mael Rouxel-Labbé 35fa50213a Avoid copies in Mesh_triangulation_3's trivial functions
These exist because of P3M3
2020-12-03 12:25:37 +01:00
Jane Tournois 0ed6aca5a4 replace get_closest_point() by get_closest_triangle()
to use this function with Periodic_3_mesh_3
2020-11-27 13:04:06 +01:00
Laurent Rineau 40a0a1bf49 Allow the use of Default as concurrency tag in Mesh_triangulation_3
That is used in Tetrahedral_remeshing.
2020-07-29 16:41:37 +02:00
Laurent Rineau 3895932005 Fix the TDS: restore the concurrency tag 2020-06-25 16:56:37 +02:00
Laurent Rineau 86496e469e Repair the I/O of Mesh_vertex_3 2020-06-16 21:56:07 +02:00
Laurent Rineau b64a1718c4 Reduce size of symbols (and debug infos)
- one nested struct `Tds` in `Mesh_triangulation_3`,
- rework of `Mesh_vertex_base_3` and `Compact_mesh_cell_base_3`.

That reduction of debug infos and size of symbols will help the IDE
and debuggers.

```
Debug info size (with gcc-9, and `-g`)

ORIG	AFTER	RATIO  		FILE IN examples/Mesh_3/
56532	55572	1.01727		mesh_3D_image_with_custom_initialization.debug
64696	63420	1.02012		mesh_cubes_intersection_with_features.debug
56700	55536	1.02096		mesh_3D_image.debug
56488	55324	1.02104		mesh_implicit_sphere.debug
56496	55332	1.02104		mesh_implicit_sphere_variable_size.debug
56776	55604	1.02108		mesh_3D_image_variable_size.debug
56520	55296	1.02214		mesh_cubes_intersection.debug
56684	55428	1.02266		mesh_3D_gray_image.debug
56796	55536	1.02269		mesh_3D_gray_image_multiple_values.debug
56732	55472	1.02271		mesh_3D_gray_vtk_image.debug
57128	55824	1.02336		mesh_optimization_example.debug
57420	56088	1.02375		mesh_optimization_lloyd_example.debug
56948	55560	1.02498		mesh_implicit_domains_2.debug
56932	55544	1.02499		mesh_implicit_domains.debug
69160	63304	1.09251		mesh_hybrid_mesh_domain.debug
72212	66088	1.09266		mesh_3D_image_with_features.debug
70172	63924	1.09774		mesh_two_implicit_spheres_with_balls.debug
75388	66128	1.14003		mesh_polyhedral_domain_sm.debug
75676	64412	1.17487		mesh_polyhedral_complex_sm.debug
81544	67772	1.20321		mesh_polyhedral_domain.debug
87456	71672	1.22023		mesh_polyhedral_domain_with_features_sm.debug
87524	71600	1.2224		remesh_polyhedral_surface_sm.debug
92332	74528	1.23889		mesh_polyhedral_complex.debug
98640	77448	1.27363		mesh_polyhedral_domain_with_lipschitz_sizing.debug
95640	74456	1.28452		mesh_polyhedral_domain_with_features.debug
95132	74000	1.28557		mesh_polyhedral_domain_with_surface_inside.debug
95724	74388	1.28682		remesh_polyhedral_surface.debug

1899448	1695256	1.12045		total
```
2020-06-16 17:47:00 +02: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
Mael Rouxel-Labbé c28e05be0c Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2018-02-23 12:50:06 +01:00
Andreas Fabri 5efce459da Mesh_3 2018-01-18 08:49:52 +00:00
Mael Rouxel-Labbé 0e71201778 Renamed template parameters to avoid conflicts with base class typedefs 2017-12-12 11:25:27 +01:00
Mael Rouxel-Labbé ba3a59ed5a Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2017-11-30 15:54:00 +01:00
Mael Rouxel-Labbé 812109df83 Added Mesh_3_regular_triangulation_3_wrapper
This wrapper around Regular_triangulation_3 adds undocumented, straightforward
functions which are required for Mesh_3 because of Periodic_3_mesh_3:
they are functions for which both (periodic and non-periodic) triangulations
have fundamentally different implementations, usually because Periodic_3_mesh_3
does not know the offset of a point and must brute-force check all
possibilities. To allow Periodic_3_mesh_3 to use Mesh_3's files,
each mesh triangulation implements its own version.
2017-11-22 14:23:59 +01: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é 78b32eb91b Fixed trailing whitespace (no real changes) 2017-11-06 13:19:14 +01:00
Laurent Rineau 9fa470c79f (!) Version that compiles, but does not work with multiple surfaces 2017-09-18 14:56:48 +02:00
Mael Rouxel-Labbé 04c0681ef4 Fixed erroneous auto-merging 2017-05-12 17:06:55 +02:00
Mael Rouxel-Labbé bf425a46e6 Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
Strongly breaks P3T3, will be fixed in the next commits
2017-05-11 17:45:15 +02:00
Mael Rouxel-Labbé fb81482652 Cleaned uses of obsolete traits class Regular_triangulation_euclidean_traits 2017-04-15 23:23:23 +02:00
Mael Rouxel-Labbé 45241b92a2 Moved Robust weighted filtered circumcenter traits out of Mesh_3
Also, these traits do not derive from Regular_euclidean_traits anymore.
2017-02-13 18:13:19 +01: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
Andreas Fabri a2e6f59f7b Fix K -> K_ 2016-03-23 12:18:12 +01:00
Andreas Fabri 92ccbb7745 fix shadow bug (was not produced with VC++ 2016-03-23 05:45:19 +01:00
Andreas Fabri 78f00eb2e6 Introduce CGAL::Default for the geometric traits 2016-02-25 17:11:20 +01:00
Clement Jamin 2706cbfeff Compact_container: erase counter strategy is now automatically deduced from T.
If the T::increment_erase_counter() function exists, then the erase counter
value will be updated by the Compact_container.
2013-09-30 18:25:41 +02:00
Clement Jamin 206b20bc15 Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin 2013-07-02 17:37:50 +02:00
Jane Tournois 4a1f9cc831 deprecate Mesh_cell_base_3 and use Compact_mesh_cell_base_3 in Mesh_triangulation_3.h 2013-06-20 12:29:46 +02:00
Clement Jamin e53771028c Fix: ">>" replaced by "> >" 2013-05-22 17:24:34 +02:00
Jane Tournois c37c3ca167 remove Mesh_vertex_base_3 and rename Compact_mesh_vertex_base_3.h to Mesh_vertex_base_3.h 2013-05-17 14:50:50 +02:00
Clement Jamin 1e13fce56e Added vertex_base and cell_base to Mesh_triangulation_3 template params
And a placeholder for the future Concurrency_tag (unused for now)
2013-03-28 10:35:49 +01:00
Clement Jamin 02165589ff Changed the order of the Mesh_triangulation_3 template params. 2013-03-07 13:37:54 +01:00
Clement Jamin 3eae2927e7 Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin 2013-03-04 15:50:57 +01:00
Clement Jamin 0ac62b355c Replaced Parallel_mesh_triangulation_3 by a specialization of Mesh_triangulation_3 2013-02-28 19:50:53 +01:00
Clement Jamin ee0dfa30ab Updated compact cell + bugfix when CGAL_LINKED_WITH_TBB is not defined 2013-02-18 16:46:42 +01:00
Clement Jamin 864f4eca81 Moved Spatial_grid_lock_data_structure_3.h to STL_Extension 2013-02-18 13:09:12 +01:00
Clement Jamin 8d5352e15f Better grid lock data structure.
There is just one grid lock data structure class now, with several specialization.
Moreover, now the type of the lock data structure is only defined in the triangulation.
2013-02-18 12:58:57 +01:00
Clement Jamin bce43fbb8e Improved the way parallelism is handle in Mesh_3/Triangulation_3
Added a better support for parallelism in Triangulation_3.
Simplified how to enable/disable concurrency in Mesh_3.
Moved the Compact_container stategies to a new file.
2013-02-15 18:07:43 +01:00
Clement Jamin eb2ed63d8b Changed the way we activate concurrency in Triangulation_3 + Code clean-up 2013-02-11 19:12:30 +01:00
Jane Tournois dbfcb44e69 include config.h to use or not compact_mesh_cell_base using the macro 2013-02-07 16:01:19 +01:00
Clément Jamin 160e87bf4f Use Compact_mesh_cell_base_3 and Compact_mesh_vertex_base_3 in the parallel, if CGAL_COMPACT_MESH_VERTEX_CELL is defined 2012-10-17 15:35:44 +00:00
Clément Jamin 1ca7174e01 Merge from Mesh_3-improvements-GF
+ some bugfixes (most of them are related to the parallel version)

This version works (sequential and parallel) as long as the following macros are NOT defined:
* CGAL_COMPACT_MESH_VERTEX_CELL
* CGAL_INTRUSIVE_LIST
* FORCE_STRUCTURAL_FILTERING
2012-10-16 14:02:16 +00:00
Jane Tournois d903910ac9 add GF copyright 2012-07-24 12:28:38 +00:00
Jane Tournois a67c7e2179 Introduce a vertex and cell class that does derive less so that we can order data members in decreasing size
r66473 and r66474 from Mesh_3-experimental-GF
2012-07-23 10:26:24 +00:00
Clément Jamin b268598665 Replace LINKED_WITH_TBB by CGAL_LINKED_WITH_TBB. 2012-06-13 09:33:08 +00:00
Clément Jamin b948543cc6 Use of a Tag (template parameter) to activate/deactivate concurrency in Mesh_3, instead of #ifdef macros. 2012-06-09 08:52:37 +00:00
Clément Jamin d284cf0e22 Lazy removal of cells from the refinement queue 2012-02-13 11:47:24 +00:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00