Sébastien Loriot
003bf47781
move alpha computation into a functor
2023-06-08 14:05:09 +02:00
Laurent Rineau
d2bc415a15
Merge pull request #6950 from lrineau/CGAL-allow_Epick_with_float-GF
...
Simple_precision_epick: an Epick-like kernel with float as FT
2023-05-04 16:37:17 +02:00
Laurent Rineau
1dce90ee79
Merge remote-tracking branch 'cgal/master' into CGAL-allow_Epick_with_float-GF
2023-04-07 10:59:51 +02:00
Sébastien Loriot
b1d2744821
Merge branch 'master' into PMP-decimation
2023-03-02 14:24:27 +01:00
Laurent Rineau
78e2d5e4d2
Merge pull request #6478 from afabri/Nef_3-replace_deque_by_vector_and_reserve-GF
...
Nef_3: Add overloads with ORIGIN in predicates
2023-03-02 13:42:35 +01:00
Sébastien Loriot
fbe559adc9
Merge 'cgal/master' into PMP-decimation
2023-02-14 08:33:24 +01:00
Sébastien Loriot
9e137bca24
Merge 'cgal/master'
2023-01-31 12:26:55 +01:00
Mael Rouxel-Labbé
4bb2d13272
Rephrase comment
2022-11-22 12:36:07 +01:00
Laurent Rineau
b56a79eacf
Compute_[abcd]_[23] return references
...
That simplifies the code, and is more correct.
2022-11-08 11:06:44 +01:00
Laurent Rineau
c685810119
Add Construct_point_on_3(Line_3), for efficiency
2022-10-28 12:07:58 +02:00
Sébastien Loriot
0cac6a9da8
Merge remote-tracking branch 'sloriot/PMP-decimation' into PMP-decimation
2022-10-25 14:55:57 +02:00
Laurent Rineau
3745073df6
Fix a compilation error
2022-10-13 18:25:58 +02:00
Mael Rouxel-Labbé
73de5e49f4
Remove unnecessary include
2022-10-12 21:32:30 +02:00
Mael Rouxel-Labbé
2c23a6d5c5
Revert back to wrapping result_type to distinguish FT-necessary operator()s
2022-10-12 21:24:59 +02:00
Mael Rouxel-Labbé
d0fe75e908
Add missing FT_necessary tags
2022-09-23 11:35:12 +02:00
Mael Rouxel-Labbé
214e072959
Switch from RT_sufficient to FT_necessary
2022-09-22 12:02:53 +02:00
Laurent Rineau
a267cee598
Avoid one intermediate call to the global (non-internal) function
2022-09-15 16:05:35 +02:00
Laurent Rineau
f52298a8c5
WIP: try to always use Filtered_predicate_RT_FT
2022-09-08 17:30:14 +02:00
Sébastien Loriot
ebf9fb025a
Merge remote-tracking branch 'cgal/5.4.x-branch'
2022-05-26 18:13:59 +02:00
Sébastien Loriot
f29015ef1c
please intel 2019 compiler
2022-05-25 00:22:24 +02:00
Sébastien Loriot
2b547ec58a
Merge remote-tracking branch 'cgal/5.4.x-branch'
2022-05-13 17:26:04 +02:00
Andreas Fabri
46d1aea329
Convex_hull_3: Use K::Boolean and not bool
2022-05-09 15:30:26 +01:00
Andreas Fabri
9023aaa542
More code for ORIGIN
2022-04-07 10:39:01 +01:00
Sébastien Loriot
3a03201ff1
Merge pull request #6338 from MaelRL/PMP-Orient_PS_with_PS-GF
...
Add orient_triangle_soup_with_reference_triangle_soup()
2022-03-30 08:03:29 +02:00
Andreas Fabri
71bba3e226
Add Plane_3 constructor with Origin/Vector_3
2022-03-17 22:35:09 +01:00
Mael Rouxel-Labbé
8d95d22a9e
Tiny indentation fix
2022-03-15 00:46:39 +01:00
Sébastien Loriot
d16dfc381e
add Compare_angle_3 functor in the Kernel
2022-01-27 19:43:21 +01:00
Andreas Fabri
a24229a6b2
Use homogeneous coordinates
2021-11-04 15:46:45 +01:00
Andreas Fabri
7cb53ab8ef
Change to NonZeroCoordinateIndex
2021-11-03 17:30:26 +01:00
Mael Rouxel-Labbé
e424356ffa
Add Construct_projected_point_3(P3, P3) + correct parameter order
...
Not a kernel requirement
2021-09-28 15:34:51 +02:00
Andreas Fabri
ea647297b9
Kernel_23: Fix Non_zero_dimension
2021-05-22 16:21:49 +02:00
Sébastien Loriot
68dc09b3d9
optimize filter failures
...
cmp_epeck_points.cpp runtime goes from 23s. to 5s.
based on mglisse suggestion
2021-04-10 07:12:25 +02:00
Laurent Rineau
1b54449dc5
Merge pull request #4878 from danston/Kernels-decltypes-danston
...
Improve decltype/result_of/invoke_result
2021-04-06 15:13:21 +02:00
Laurent Rineau
de704d8bb9
Merge pull request #5522 from afabri/Nef_3-accelerate_do_intersect_internally-GF
...
Nef_3: Do not test has_on for a point where we know that it will be true
2021-04-06 15:13:07 +02:00
Laurent Rineau
0f61f96c80
Merge pull request #5556 from MaelRL/Kernel_23-Dont_recompute_normal_in_proj_point-GF
...
Fix inconsistency in normal computation in robust projection code
2021-04-06 15:12:53 +02:00
Mael Rouxel-Labbé
48bb925b65
Fix inconsistency in robust projection code
...
If the triangle/plane is degenerate, the case is handled separately.
If we know the plane is not degenerate, the normal should not
be recomputed in a different manner, which might lead
to a null normal and some issues down the line.
2021-03-26 10:41:30 +01:00
Andreas Fabri
e0b410e2e6
int -> result_type
2021-03-24 16:03:51 +01:00
Andreas Fabri
a28a7cd44a
Return directly
2021-03-23 17:11:26 +01:00
Andreas Fabri
e98198178f
Add the functor Non_zero_dimension_3 to the Kernel
2021-03-23 15:45:54 +01:00
Dmitry Anisimov
00c185b028
Merge branch 'master' into Kernels-decltypes-danston
2021-03-12 12:06:20 +01:00
Laurent Rineau
f1e550fdd2
Merge pull request #5363 from sloriot/Kernel-Oriented_side_extra_operator
...
Add an extra operator to have an exact plane
2021-03-03 17:33:20 +01:00
Andreas Fabri
d5a5b20ce8
Make it clear that the functor is not part of the Kernel concept
2021-02-19 20:23:20 +00:00
Dmitry Anisimov
81d9556707
Merge remote-tracking branch 'upstream/master' into Kernels-decltypes-danston
2021-02-10 10:06:45 +01:00
Dmitry Anisimov
af3f6dd07f
fixed warnings with Intersect_3 and result_of
2021-02-09 17:30:06 +01:00
Sébastien Loriot
107567e809
add an extra operator to have an exact plane
2021-01-15 15:38:28 +01:00
Andreas Fabri
5791bc1400
fix do_intersect for 3 planes
2020-10-20 14:55:52 +01:00
Andreas Fabri
fefbc4bc1a
Add funcion intersection_point for Line/Plane
2020-10-20 09:17:15 +02:00
Andreas Fabri
eafad68789
Add a function that only constructs a point intersection for 3 planes
2020-10-20 09:17:15 +02:00
Andreas Fabri
46698620e3
Hack for a fix of do_intersect(Plane_3,Plane_3,Plane_3)
2020-10-20 09:17:15 +02:00
Dmitry Anisimov
ad813b4cb0
further removed result_of and result
2020-07-30 16:19:02 +02:00
Dmitry Anisimov
da0635e4b1
result_of changed to decltype
2020-07-20 17:03:28 +02:00
Sébastien Loriot
4476663eba
fix compilation error...
2020-04-08 16:14:44 +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
52164b1fba
First pass on removing license notice in header for LGPL files
2019-10-19 15:40:30 +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
Laurent Rineau
3e4b177506
Merge pull request #4116 from MaelRL/Kernel_23-Generalize_ray_point_method-GF
...
Change ray_23 and line_23's point(int) function to point(FT)
2019-08-19 12:54:38 +02:00
Mael Rouxel-Labbé
6c8a8f347d
Change ray/line.point(int --> FT)
...
There is no real requirement on it being an 'int', except some symmetry with
the segment.
2019-07-26 15:59:52 +02:00
Andreas Fabri
4581f1b7a8
Morte replacements
2019-06-05 08:39:55 +02:00
Laurent Rineau
90782d4b7f
Revert the merge of two pull-requests that target CGAL-4.14-branch
...
- Revert "Merge pull request #3857 from MaelRL/CGAL-Fix_duplicate_non_manifold_vertices-GF"
- Revert "Merge pull request #3898 from lrineau/Mesh_3-stop_during_protection-lrineau"
2019-05-14 17:50:45 +02:00
Andreas Fabri
e60f69e669
Compute sqrt only once
2019-04-11 09:48:32 +02:00
Andreas Fabri
42af962bc2
Add overload for two vectors
2019-04-11 09:48:32 +02:00
Andreas Fabri
0e75cea23c
Simplify the code
2019-04-11 09:48:30 +02:00
Andreas Fabri
d62d88196e
Add a function to compute the angle between three 3D points
2019-04-11 09:48:30 +02:00
Sébastien Loriot
1d908c1c0b
remove code for CGAL_INTERSECTION_VERSION 1
2019-03-29 13:28:32 +01:00
Sébastien Loriot
0685423ae8
update from cgal/master
2018-11-02 11:32:31 +01:00
Sébastien Loriot
0202bc879e
add an extra operator for plane-line(pt,pt)
2018-06-04 17:21:01 +02:00
Andreas Fabri
0d3ac75518
Introduce namespace Intersections
2018-05-04 08:57:56 +02:00
Maxime Gimeno
67ca3f9dcb
fixes
2018-04-27 09:18:48 +02:00
Maxime Gimeno
b20d0e0908
Optimization
2018-04-26 10:02:43 +02:00
Maxime Gimeno
bcfb7afead
Add an operator for a Ray_3 to ConstructProjectedpoint_3
2018-04-25 15:32:36 +02:00
Sébastien Loriot
0698f79aff
add SPDX identifier for files under the LGPL-3+ license
2017-11-12 10:17:50 +01:00
Laurent Rineau
9076ecaddf
Add K::Has_on_bounded_side_3(Sphere_3, Sphere_3, Point_3, Point_3)
2017-10-13 15:57:02 +02:00
Mael Rouxel-Labbé
11786a7b90
Fixed minor mistakes from a rebase
2017-06-28 10:16:23 +02:00
Andreas Fabri
b949b667ab
Use Construct_point_3 inside functor
2017-06-28 10:14:35 +02:00
Sébastien Loriot
ae900ae297
force the usage of CGAL compare function
...
this fixes an issue detected whenusing LEDA without GMP
2017-05-22 09:43:36 +02:00
Andreas Fabri
432a40df72
improve implementation as suggested by @mglisse
2017-05-12 09:49:41 +02:00
Andreas Fabri
9ccc9c1178
Fix compare_slope()
2017-05-12 09:49:39 +02:00
Andreas Fabri
061a9b1ecd
Kernel:23 Add Compare_slope_3
2017-05-12 09:48:21 +02:00
Mael Rouxel-Labbé
c79e2d4b36
Added Compute_power_product_2 to the 2D kernel predicates
...
doc + test included
2017-04-21 13:07:40 +02:00
Mael Rouxel-Labbé
bb086ff739
Added power_side_of_bounded_power_circle_2 to the 2D kernel predicates
...
A partial implementation was deleted from the Alpha_shapes_2 package without
moving the functions to the kernel...
This implementation adds the missing overloads (4, 3, and 2 points)
Test + doc included
2017-04-21 11:37:27 +02:00
Mael Rouxel-Labbé
a751464ab6
Minor fixes to weighted functors (doc + cleaning)
2017-04-21 11:31:13 +02:00
Mael Rouxel-Labbé
232c38cee1
Removed documentation of degenerate cases of power_side_of_oriented_* predicates
...
See Issue https://github.com/CGAL/cgal/issues/2067
2017-04-20 12:54:39 +02:00
Mael Rouxel-Labbé
1223f5f5a0
Improved readability of weighted point-related functors (no real changes)
...
Fixed indentation, trailing whitespace, english, etc.
2017-04-19 11:40:58 +02:00
Mael Rouxel-Labbé
dd2e7f3a0c
Made compute_squared_smallest_orthogonal_circle_2() a kernel functor
...
and documented, tested, etc. it
Previously in Alpha_shape_2
2017-04-19 11:06:14 +02:00
Mael Rouxel-Labbé
365cfd0566
Fixed predicate Power_side_of_oriented_power_sphere_3
...
The Homogeneous kernel doesn't know how to run that predicate
for 3 or 4 arguments so it must be defined in Kernel/function_objects until
those operators are added
2017-04-06 21:57:21 +02:00
Sébastien Loriot
9ae7b37845
Merge pull request #1745 from sloriot/Polyhedra_corefinement-enhancements-sloriot
...
Add corefinement operations in PMP
2017-01-12 12:05:18 +01:00
Sébastien Loriot
cba8456715
add constructions for the intersection point of a plane by a line and of 2 lines
...
this is undocumented and allow to have a lazy node for this construction
2017-01-02 19:23:48 +01:00
Laurent Rineau
7e9d909602
Fix comments with wrong statements
2016-12-30 16:44:08 +01:00
Andreas Fabri
226da32579
std::max() does only take two arguments
2016-12-21 09:42:33 +01:00
Maxime Gimeno
b0dd7d25cb
Add Compute_L_infinity_distance_3.
2016-12-21 09:41:33 +01:00
Andreas Fabri
eb7e38493c
Add the function FT l_infinity_distance(Point_2, Point_2)
...
as well as the corresponding functor
This is a function where the implementation is in the file
Kernel_23/include/CGAL/Kernel/function_objects.h
When the implementation is different for Cartesia and Homogeneous coordinates
the code should go into the function_objects.h files
in the packages Cartesian_kernel and Homogeneous_kernel
2016-12-21 09:40:53 +01:00
Laurent Rineau
bbf430b0b1
Merge pull request #585 from afabri/Kernel-Weighted_point-GF
...
Introduce Kernel::Weighted_point_3 together with functors
2016-12-20 19:52:02 +01:00
Laurent Rineau
2f4a32f089
fix Construct_projected_point_3 with degenerate triangles
...
`Construct_projected_point_3::operator()(Point_3, Triangle_3)` now
checks if the triangle is degenerated (actually it checks if its
supporting plane is degenerated). If it is, it falls back to
`operator()(Point_3, Segment_3)` with the segment that is equivalent to
the triangle. When using non-exact floating point numbers, it chooses
the edge of the triangle that has the biggest l-infinity length.
2016-12-02 13:14:14 +01:00
Jane Tournois
e633fb0a3b
add missing "-" needed for conversion from Sign to Bounded_side
2016-11-24 16:53:55 +01:00
Jane Tournois
6af2db1b91
Use Power_side_of_bounded_power_sphere instead of Side_of_bounded_orthogonal_sphere
...
both functors made the same computation, up the sign of the result.
The return type now is CGAL::Bounded_side, which makes things easier
to understand and use
2016-11-03 14:55:39 +01:00
Jane Tournois
f3a021a195
rename in_smallest_orthogonal_sphereC3 to power_side_of_bounded_power_sphereC3
2016-11-03 14:53:54 +01:00
Andreas Fabri
ad9d2c369c
Rename tests following Olivier's recommendations
2016-11-03 14:53:54 +01:00
Andreas Fabri
f488b9baf9
Changes after Laurent's review
2016-11-03 14:53:15 +01:00
Andreas Fabri
dcf5f32dc0
Improve the doc
2016-11-03 13:07:50 +01:00