Commit Graph

1099 Commits

Author SHA1 Message Date
Guillaume Damiand 24a8004ee0
Merge branch 'master' into gsoc2022-EBVs-Mostafa-ashraf19 2022-10-14 08:53:12 +02:00
Sébastien Loriot d86db9fa72 fix compilation issues 2022-10-05 16:51:31 +02:00
Mostafa-ashraf19 68b031e113 Uses overloading functions instead of different fill_buffer names. 2022-10-04 18:43:14 +02:00
Mostafa-ashraf19 796ec13391 Modified GraphicBuffer class name to snake case. 2022-10-03 13:27:22 +02:00
Mostafa-ashraf19 88193459ba Added two versions of add in T2 2022-10-01 18:48:41 +02:00
Mostafa-ashraf19 ac259bfc85 Fixed typo 2022-09-23 23:05:45 +02:00
Mostafa-ashraf19 53f0952e0f Modified T2. 2022-09-23 23:03:21 +02:00
Mostafa-ashraf19 cb4c77f1eb changed functor names. 2022-09-23 22:23:10 +02:00
Mostafa-ashraf19 6c95908e6c Renamed functors and GB, added handles to test functors. 2022-09-23 18:03:11 +02:00
Andreas Fabri d3fca65ae5 CGAL: No longer per package assertions 2022-09-23 12:49:40 +01:00
Mostafa-ashraf19 5fbaf43434 Modified Triangulation 2 to use new APIs version. 2022-09-23 00:23:39 +02:00
Laurent Rineau d0d0b30c12 Merge pull request #6807 from afabri/Parameterization-instantiation-GF
Parameterization: instanciation ->  instantiation
2022-09-13 12:33:05 +02:00
Mael Rouxel-Labbé 43378edd1f Minor speed up for T3::operator== 2022-09-02 14:29:15 +02:00
Mael Rouxel-Labbé 7d9d7844b1 Fix T23::operator== for dimension 0 2022-09-02 13:42:33 +02:00
Mael Rouxel-Labbé d940b5ca7e Add operator==(T2, T2) 2022-09-02 11:26:16 +02:00
Mael Rouxel-Labbé 649c401522 Add error messages to T2::is_valid() 2022-09-02 11:26:08 +02:00
Andreas Fabri 9c1ad6649d Parameterization: instanciation -> instantiation 2022-08-24 08:35:13 +01:00
Sébastien Loriot 861588abe1 Merge 'sloriot/CGAL-std_type_traits' into master 2022-08-03 20:19:51 +02:00
Sebastien Loriot f4a505ca2a
Merge pull request #6688 from gdamiand/CMap_index-gdamiand
CMap/GMap/LCC with index
2022-08-02 10:55:37 +02:00
Guillaume Damiand f2630fa4b9
Merge branch 'master' into CMap_index-gdamiand 2022-07-19 09:44:16 +02:00
Laurent Rineau 4789fcc474
Merge branch 'master' into Triangulation_2-mark_domains-GF 2022-07-11 16:38:15 +02:00
Laurent Rineau 561cc66264 Backport the patch of pull request #6602 from lrineau/Triangulation_2-fix_cdt_2-GF
Try to fix CDT_2 with inexact construction of intersections
2022-06-29 12:30:35 +02:00
Andreas Fabri 70a06b4696 Do not use CGAL::iterator_v<> as it is responsible for the ICE of VC2015 2022-06-27 08:58:17 +01:00
Laurent Rineau c84fab4d08 Detect Exact_kernel *and* exact_kernel() 2022-06-17 17:11:52 +02:00
Sébastien Loriot b96f6d5ce9 move is_iterator to type_traits 2022-06-10 09:43:59 +02:00
Sébastien Loriot 44250cb019 is_iterator_XXX<>::value --> is_iterator_XXX_v<> 2022-06-10 09:40:29 +02:00
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
Laurent Rineau 9bc4918853 Better implementation of can_construct_almost_exact_intersection_v 2022-06-03 14:31:56 +02:00
Laurent Rineau 258dd55c03 Make it work with the projection traits 2022-06-02 16:17:26 +02:00
Laurent Rineau 575f7a42fe Move exact_intersection_point back to CT_2 2022-06-01 20:31:22 +02:00
Laurent Rineau 8ba010f760 Factorize the insertion of the intersection point 2022-06-01 14:42:01 +02:00
Laurent Rineau 910c930ede Better usage of the dispatch on `itag` 2022-06-01 12:26:50 +02:00
Laurent Rineau 136c6e50f5 Fix typo 2022-06-01 12:01:06 +02:00
Laurent Rineau 53b4878a94 Use exact FT instead of exact Kernel 2022-05-31 18:09:00 +02:00
Laurent Rineau feaf6a4ca2 Add Kernel::Construct_exact_intersection_point_2 2022-05-31 16:40:34 +02:00
Laurent Rineau 70bbf644a1 Ensure pi in the union of the two triangles
If `pi` is the union of the two triangles incident to the constrained
edge `[vcc, vdd]`, then the reinsertion of  `[vcc, vi]` and `[vi, vdd]`
cannot trigger new intersections.
2022-05-25 15:47:27 +02:00
Laurent Rineau 9ab9cdf898 Add comments 2022-05-25 14:29:08 +02:00
Laurent Rineau 1b4db96562 Disable the previous workaround 2022-05-24 16:53:30 +02:00
Laurent Rineau dd299873af Add comments 2022-05-24 16:53:01 +02:00
Laurent Rineau 976e8e7691 Add a check intersection_not_in_the_two_triangle 2022-05-23 16:12:54 +02:00
Andreas Fabri f6c3952308 The hopefully two last warnings 2022-05-19 06:59:29 +01:00
Andreas Fabri b435e4079d Also #include the Triangulation headers for the #else case 2022-05-18 10:08:57 +01:00
Andreas Fabri 84a35e9cba Always #include for CDT as it has its own code for the noop draw() 2022-05-18 09:29:36 +01:00
Andreas Fabri 1afc3cc099 resolve merge conflict 2022-05-18 07:20:41 +01:00
Andreas Fabri 58774ef301 Define draw as no op 2022-05-17 09:28:21 +01:00
Sébastien Loriot 143d412ede fix unused variables 2022-05-16 17:24:27 +02:00
Guillaume Damiand 999a813b35 Rename XXX_handle into XXX_descriptor for CMap, GMap, LCC 2022-05-05 13:34:19 +02:00
Laurent Rineau 9413b74310 Fix a typo in a comment (spellchecking) 2022-03-30 16:11:27 +02:00
Laurent Rineau a1b8f81af6 Fix the detection of is_in_domain 2022-03-30 15:18:47 +02:00
Sébastien Loriot da7f93bc73 add missing include directive and use std 2022-03-23 09:10:35 +01:00
Sébastien Loriot 7fe8ad163e fix type 2022-03-22 18:04:07 +01:00
Andreas Fabri 97e3f60cf2 Improve documentation 2022-03-22 17:00:06 +01:00
Andreas Fabri 6fdd3341aa WIP 2022-03-22 16:37:17 +01:00
Andreas Fabri f2bfb52903 Make draw() work for a CDT_2 even if it's Face type has no is_in_domain member function 2022-03-22 16:10:16 +01:00
Andreas Fabri 109056d592 Improve documentation of function draw() 2022-03-22 14:10:13 +01:00
Andreas Fabri f236ccc98c CDT -> CT 2022-03-15 16:31:00 +01:00
Andreas Fabri 93832aa67f Add an example for Mesh_2 2022-03-15 16:08:11 +01:00
Andreas Fabri eddfe746b1 Cleanup and add a draw() function for constrained triangulations 2022-03-15 14:59:59 +01:00
Andreas Fabri 0a04f33a94 Rename and move stuff 2022-03-15 10:36:35 +01:00
Andreas Fabri a6ae3b1ac1 Rename and move stuff 2022-03-15 10:34:36 +01:00
Andreas Fabri b1926b715a
Update Triangulation_2/include/CGAL/mark_domains.h
Co-authored-by: Sebastien Loriot <sloriot.ml@gmail.com>
2022-03-15 08:54:19 +01:00
Andreas Fabri 849e18ae6c Triangulation_2: Add CGAL::mark_domains() 2022-03-14 23:05:15 +01:00
Andreas Fabri 48c462bf72 Change in CDTplus 2022-03-09 13:46:55 +00:00
Andreas Fabri 8501386fee
Update Triangulation_2/include/CGAL/Constrained_triangulation_plus_2.h
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
2022-02-03 08:33:12 +01:00
Andreas Fabri c30327c3ec Triangulation_2: Quiet a warning 2022-02-02 09:38:38 +00:00
Laurent Rineau 7906e3928a Merge pull request #6174 from afabri/CGAL_Discontinue_Geomview-GF
Remove Geomview
2021-12-20 18:06:29 +01:00
Mael Rouxel-Labbé 129f427d93 Move TDS2's graph traits into the TDS2 package 2021-12-16 13:48:01 +01:00
Andreas Fabri 115fa5ab39 Remove Geomview from the manual and the demos 2021-12-14 14:01:21 +00:00
Guillaume Damiand 2bbcabe71b The size of argv array is now 2, ending with nullptr. 2021-11-11 17:23:37 +01:00
Guillaume Damiand ee11c858b5 The size of argv array is changed to 1 in all basic viewers. 2021-11-10 09:59:48 +01:00
Mael Rouxel-Labbé 8166579e55 Merge branch 'PM-Fix_pmaps_reference_types-GF' into PM-Fix_pmaps_reference_types_master-GF 2021-10-11 19:58:07 +02:00
Mael Rouxel-Labbé 590ddf8015 Various fixes for pmaps:
- Use `value_type` when the returned type is not a reference
- Enforce `reference = value_type` if the returned type is not
  a reference (to avoid `typename PM::reference r = get(m, k)`,
  which will take a ref to a temporary if the `reference`
  typedef is an actualy reference)
- Do not use `put_get_helper` if the property map is not a `lvalue`
  **mutable** property map: the `put()` is `map[k] = v`, which
  is broken if `operator[]` does not return a reference
- The concept `boost::lvalue_property_map_tag` requires `operator[](key)`,
  not a reference in `get(map, key)`. You can have a readable property map
  returning a reference through its `get(map, key)`, but if there is
  no `operator[]`, it's just a `boost::readable_property_map_tag`
- Some const correctness to avoid copying maps with state
  or heavy keys in `get(map, key)` / `put(map, key, value)`
- Base the category of a wrapping pmap on what it offers instead
  of just forwarding the base property map's category
- Tried to do something like mutable lvalue pmap:
  * `value_type& operator[](key&)`
  * `ref get(map, const key&)`
  * `put(map, const key&, const value_type&)`
  and non-mutable lvalue pmap:
  * `const value_type& operator[](const key&)`
  * `ref get(map, const key&)`
  but not everything fits properly...
2021-10-08 15:38:47 +02:00
Sébastien Loriot 5945e48a3e restore sub-directories accidently removed in 98e471849b 2021-09-17 08:14:06 +02:00
Sébastien Loriot dacbd186d1 accomodate changes of internal -> Pkg/internal 2021-08-30 12:35:34 +02:00
Sébastien Loriot 4454c5b3ed Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-08-30 12:25:51 +02:00
Sébastien Loriot 98e471849b moving files from internal to PKG/internal 2021-08-26 11:33:39 +02:00
Mael Rouxel-Labbé bcce76c062 Fix test & warnings 2021-08-26 11:08:16 +02:00
Maxime Gimeno f7df517f57 Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-08-09 09:14:23 +02:00
Laurent Rineau 5759a800e3
Merge pull request #5705 from maxGimeno/CGAL-Clean_up_boost_versions-maxGimeno 2021-07-28 10:14:38 +02:00
Laurent Rineau c6f79b6d2e Merge pull request #5175 from sloriot/T2-projection_traits_intersect_cleanup
Clean Intersect_2 in Triangulation_2_projection_traits_3
2021-07-27 15:55:27 +02:00
Maxime Gimeno a3d1765ab4 Merge remote-tracking branch 'cgal/master' into CGAL-Clean_up_boost_versions-maxGimeno 2021-07-19 14:18:40 +02:00
Maxime Gimeno 83b69b5a98 Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-07-08 11:33:42 +02:00
Sébastien Loriot bdec4360d3 Merge remote-tracking branch 'cgal/5.2.x-branch' 2021-06-25 10:05:19 +02:00
Sébastien Loriot dfcdb4c05b Merge remote-tracking branch 'cgal/5.1.x-branch' into HEAD 2021-06-25 10:02:58 +02:00
Sebastien Loriot 7e039fa21a
Update Triangulation_2/include/CGAL/Triangulation_2/internal/Triangulation_2_projection_traits_base_3.h
Co-authored-by: Laurent Rineau <Laurent.Rineau@cgal.org>
2021-06-21 07:07:50 +02:00
Sébastien Loriot a00340d232 TWS 2021-06-17 17:49:47 +02:00
Sébastien Loriot fc40a2760f update from master branch 2021-06-17 17:45:25 +02:00
Andreas Fabri 1948cf304f Fix (unintendedly) skipping the next point after erasure of a constraint point
In 'it = set.erase(it)', it is already the next element, so the ++it
of the loop makes the algorithm skip an element, which might have had
to be removed if it also didn't have a corresponding triangulation vertex.
2021-06-15 14:21:35 +02:00
Maxime Gimeno 2d5f91f763 Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-05-27 09:06:59 +02:00
Maxime Gimeno 75db0292f6 Rename internal classes 2021-05-19 09:25:13 +02:00
Maxime Gimeno 3795c5236a Changes after review 2021-05-18 10:16:24 +02:00
Maxime Gimeno 393ae7dae6 Clean-up boost_version reqs 2021-05-12 15:03:53 +02:00
Sébastien Loriot 4e519a3c7a move documented IO functions in IO namespace 2021-05-05 13:15:37 +02:00
Sébastien Loriot fb6f703b55 IO namespace for files in IO directories 2021-05-04 14:36:06 +02:00
Maxime Gimeno 6205f26d09 license 2021-03-19 13:57:02 +01:00
Maxime Gimeno 120ea6de99 Re add a deprecated version of the original header and a test for it. 2021-03-19 13:30:03 +01:00
Mael Rouxel-Labbé ede18b776c Merge remote-tracking branch 'cgal/master' into Triangulation_on_sphere_2-GF 2021-03-18 10:42:52 +01:00
Maxime Gimeno 82d2258f0b Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-03-10 15:10:20 +01:00
Maxime Gimeno 93e060591c Move the traits class in Kernel_23 2021-03-10 14:44:56 +01:00
Maxime Gimeno 7f334a0133 save intermediary result to avoid computing it up to 3 times in Less_along_2_axis 2021-03-10 13:33:01 +01:00
Maxime Gimeno d2ba62aa21 Fixes in concepts and addition of missing functors for complyance to PolygonTraits_2. 2021-03-10 12:25:24 +01:00
Laurent Rineau cb8e564ac7 Merge pull request #5349 from afabri/Polyline_simplification-simplify_overlaps-GF
2D Polyline simplification: Also simplify overlapping vertex sequences
2021-03-03 17:35:27 +01:00
Laurent Rineau b1d78a909f Merge pull request #5433 from sloriot/CGAL-last_bind
Remove last bind
2021-03-03 17:32:59 +01:00
Laurent Rineau 6f8f36462f Merge pull request #5433 from sloriot/CGAL-last_bind
Remove last bind
2021-03-03 17:10:13 +01:00
Laurent Rineau 1a040c8552
Merge pull request #4749 from danston/Polygon_mesh_processing-triangulate_hole_with_cdt2-danston 2021-02-19 07:59:59 +01:00
Laurent Rineau 8fc88a9463 Merge pull request #5409 from lrineau/Triangulation_3-fix__move__semantic__of__Triangulation_hierarchy_3-GF
Fix the move-semantic of Triangulation_hierarchy_3
2021-02-18 15:19:11 +01:00
Laurent Rineau 0539b1ab3a Merge pull request #5409 from lrineau/Triangulation_3-fix__move__semantic__of__Triangulation_hierarchy_3-GF
Fix the move-semantic of Triangulation_hierarchy_3
2021-02-18 15:18:00 +01:00
Maxime Gimeno 2e77ad352d Fix plan to plane 2021-02-17 12:39:39 +01:00
Sébastien Loriot 4bb0406240 do not include boost/bind.hpp (shouldn't be used anymore) + fix remaining bind
(nasty using namespace boost!)
2021-02-12 15:35:19 +01:00
Laurent Rineau 3bd7181ff3 Merge pull request #5244 from afabri/Triangulation_2-Intersect_use_variant-GF
Nef_3, Triangulation_2:  Change the result type of the Intersect_2 functor
2021-02-05 16:12:58 +01:00
Laurent Rineau b8bb3ffc09 Apply on triangulation_hierarchy_2 the same fix as in 3D 2021-02-04 09:21:36 +01:00
Sébastien Loriot 3082808434 restore original code 2021-02-01 10:12:16 +01:00
Maxime Gimeno a85cf6ed52 Move the include in the ifdef 2021-01-26 09:45:18 +01:00
Andreas Fabri 105b93b35a Now it should work with overlapping polylines 2021-01-14 08:51:39 +00:00
Andreas Fabri 44260a88fc Store vertex handles in the MPQ and have a map from Vertex_handle to Vertices_in_constaint_iterator 2021-01-13 20:56:34 +00:00
Maxime Gimeno 04753381e5 Rename file and add ::Qt 2021-01-12 13:22:34 +01:00
Maxime Gimeno 95192d6d4b factorize context initialization 2021-01-12 13:08:58 +01:00
Maxime Gimeno 2a212bb2a8 Upgrade non-compatibility sahders in Basic_viewer to glsl 150 and add a context creation before the creation of the QApp in draw_xxx examples 2021-01-07 13:06:40 +01:00
Maxime Gimeno 02eb3648ad Try something else 2021-01-07 11:43:13 +01:00
Andreas Fabri 2b77481cd4 Move a typedef to where it is used 2021-01-07 10:31:14 +00:00
Maxime Gimeno 7c6bbaaea0 debug 2021-01-07 11:27:49 +01:00
Maxime Gimeno 7418c4217b Try to select context according to OS 2021-01-07 11:15:39 +01:00
Andreas Fabri 31037aa014 Fix Triangulation_2_projection_traits_3 2020-12-08 16:48:19 +00:00
Andreas Fabri 4079954ee0 Fix Triangulation_2_projection_traits_3 2020-12-08 16:27:21 +00:00
Dmitry Anisimov c2085ea36c
Merge branch 'master' into Polygon_mesh_processing-triangulate_hole_with_cdt2-danston 2020-12-04 18:32:25 +01:00
Andreas Fabri 2e24249f13 Triangulation_2: Change the result type of the Intersect_2 functor 2020-12-04 16:44:22 +00:00
Sébastien Loriot 3aced7f7e7 add projected segment overlapping case + clean up 2020-11-19 20:01:31 +01:00
Mael Rouxel-Labbé d6f06b9f14 Merge remote-tracking branch 'cgal/master' into Triangulation_on_sphere_2-GF 2020-11-17 10:24:16 +01:00
Laurent Rineau 16a929c310 Merge branch 'releases/CGAL-5.0-branch' into 5.1.x-branch 2020-10-21 09:27:51 +02:00
Sebastien Loriot bdc2f3e0db
Merge pull request #5076 from lrineau/Triangulation_2-improve_CDT_plus_2-GF
Triangulation_2: improve CDT_plus_2
2020-10-20 13:28:12 +02:00
Mael Rouxel-Labbé e3c08cf7dc Merge remote-tracking branch 'cgal/master' into Triangulation_on_sphere_2-GF 2020-10-19 16:17:27 +02:00
Laurent Rineau 45f41cc69e Fix a possible compilation error with CGAL_CDT_2_DEBUG_INTERSECTIONS 2020-10-15 15:44:35 +02:00
Laurent Rineau ab5cdc6fa4 Add a debug message 2020-10-15 15:44:23 +02:00
Laurent Rineau 267b1dc3d1 Bug-fix
In degenerated cases, when a subconstraint is subdivided by an
intersection point between two other subconstraints, then it is
possible that a subconstraint is already split when one calls
`add_Steiner`. Let's remote the assertion.
2020-10-15 15:43:39 +02:00
Laurent Rineau e37c290841 Better debug messages 2020-10-15 15:08:21 +02:00
Dmitry Anisimov d5b24c4b05
Merge branch 'master' into Polygon_mesh_processing-triangulate_hole_with_cdt2-danston 2020-10-07 10:55:57 +02:00
Sébastien Loriot 090b82e762 Merge remote-tracking branch 'cgal/releases/CGAL-5.0-branch' 2020-10-02 15:08:56 +02:00
Maxime Gimeno a7c92f2c23 Init li and lt to fix warning 2020-09-29 10:30:26 +02:00
Mael Rouxel-Labbé db1823a470 Merge remote-tracking branch 'cgal/master' into Triangulation_on_sphere_2-GF 2020-09-22 14:27:09 +02:00
Mael Rouxel-Labbé af8ad79dcc Tiny varible name fix 2020-09-22 14:13:18 +02:00
Mael Rouxel-Labbé f82396ece2 Construct_point should grab references whenever possible 2020-09-22 14:13:18 +02:00
Dmitry Anisimov 7ac04fd907 checking the hole simplicity with the extended triangulation projection traits 2020-06-08 14:21:12 +02:00
Laurent Rineau 871c97273a Merge pull request #4496 from lrineau/CGAL-move_semantic_for_triangulations-GF
Add move-semantic to Compact_container and Triangulations
2020-06-03 16:23:22 +02:00
Laurent Rineau 20bc78a7d7 Merge pull request #4726 from afabri/Mesh_2-deterministic_V2-GF
Mesh_2: Make it deterministic  V2
2020-05-27 16:33:28 +02:00
Laurent Rineau 14b18f81ee Merge pull request #4735 from lrineau/Triangulation_2-fix_CDT_2_degenerate_case-GF
Fix a bug in <CGAL/Constrained_triangulation_2.h>
2020-05-27 16:33:21 +02:00
Laurent Rineau a8fca35b1d Merge pull request #4735 from lrineau/Triangulation_2-fix_CDT_2_degenerate_case-GF
Fix a bug in <CGAL/Constrained_triangulation_2.h>
2020-05-27 16:32:49 +02:00
Laurent Rineau 0ea385712f Fix compatibility with C++03 2020-05-22 14:52:18 +02:00
Laurent Rineau dcc4fb1cc1 Merge remote-tracking branch 'cgal/master' into CGAL-move_semantic_for_triangulations-GF
# Conflicts:
#	STL_Extension/include/CGAL/Compact_container.h
2020-05-20 09:46:26 +02:00
Laurent Rineau 3cd52cdc3e Fix a bug in <CGAL/Constrained_triangulation_2.h>
The function parameter was locally shadowed by a local `int i`
variable!

Then the edge `(f, i)` in the call `remove_constrained_edge(f, i)` was
the wrong one!

The bug was introduced by ecfd82e287,
ten years ago.

The bug was only triggered on degenerated cases, when two constraints
intersect, but the code failed to compute the intersection. Then, if
the intersection vertex `vi` was either `vaa` or `vbb` (and not `vcc`
or `vdd`), then the edge `(f, i)` was the wrong one.
2020-05-19 17:25:10 +02:00