Laurent Rineau
2552ec6307
Merge branch 'releases/CGAL-4.14-branch' into releases/CGAL-5.0-branch
2020-07-07 11:44:01 +02:00
Laurent Rineau
0911586ae3
Merge pull request #4836 from CGAL/afabri-patch-3
...
Update AABB_halfedge_graph_segment_primitive.h
2020-07-07 11:41:33 +02:00
Andreas Fabri
23c29ff060
Update AABB_halfedge_graph_segment_primitive.h
...
Fix typos
2020-07-07 11:23:45 +02:00
Andreas Fabri
f547b947d3
Update AABB_face_graph_triangle_primitive.h
...
Fix documentation bug.
2020-07-07 11:20:03 +02:00
Sébastien Loriot
137971071c
hide for doxygen
2020-04-29 17:02:48 +02:00
Sébastien Loriot
531071907b
use relaxed order
2020-04-23 17:22:49 +02:00
Sébastien Loriot
f56cd59eb4
add the possibility to pass custom functors to build the tree
2020-04-23 16:13:32 +02:00
Sébastien Loriot
0c98cd8eee
fix no-thread
2020-04-22 16:53:36 +02:00
Sébastien Loriot
76aeb96682
fix wrong value
2020-04-22 16:35:11 +02:00
Sébastien Loriot
5ec5ad6c8e
doc clean up
2020-04-22 16:23:57 +02:00
Sébastien Loriot
c8eddc4efc
build() always trigger the reconstruction of the tree
...
It can be useful for a mesh with update vertex coordinates
2020-04-22 15:56:26 +02:00
Sébastien Loriot
cbd7dfc793
document the new behavior
2020-04-22 15:48:33 +02:00
Sébastien Loriot
13f83d6530
simplify constructors
2020-04-22 15:06:39 +02:00
Sébastien Loriot
5f05c610d1
make the construction of the search tree lazy
2020-04-22 14:57:20 +02:00
Sébastien Loriot
c5ba7d4621
fix the thread-safety of the lazy construction of the tree
...
* use c++11 memory model to fix the Double-Checked Locking
2020-04-22 14:41:57 +02:00
Sébastien Loriot
6d6b8426ad
(do_not_)accelerate_distance_queries() are non-const methods
2020-04-22 11:09:15 +02:00
Sébastien Loriot
e4010a7875
rename variable with ambiguous name
2020-04-22 11:03:04 +02:00
Sébastien Loriot
41ae2c31bb
extra run of the script to remove tabs and trailing whitespaces
2020-03-26 19:28:26 +01:00
Sébastien Loriot
c67d093ebf
Update branch from master after trailing whitespaces and tabs removal
2020-03-26 19:28:07 +01:00
Sébastien Loriot
8bb22d5b2c
extra run of the script to remove tabs and trailing whitespaces
...
right after the merge of the 5.0 release branch
+ manual fix of the files (indentation was changed in the meantime):
* Spatial_sorting/include/CGAL/Multiscale_sort.h
* Spatial_sorting/test/Spatial_sorting/test_multiscale.cpp
2020-03-26 14:26:59 +01:00
Sébastien Loriot
8b153fb495
Merge branch 'cgal/releases/CGAL-5.0-branch'
...
whitespace+tab removal, merged with option -Xignore-space-change
2020-03-26 14:22:32 +01: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
590612a563
run the script to remove tabs and trailing whitespaces
2020-03-26 13:25:16 +01:00
Ahmed Essam
2b9c2c1634
Test AABBTree move semantics
2020-03-07 04:28:13 +02:00
Ahmed Essam
49465bbcb6
Use stack variable instead of pointer
2020-03-06 16:28:21 +02:00
Ahmed Essam
5f8e3bc3cf
Use lval ref instead of perfect forwarding in set_children
...
Co-Authored-By: Sebastien Loriot <sloriot.ml@gmail.com>
2020-03-03 15:00:42 +02:00
Ahmed Essam
5e9801839d
Add move constructor to AABB tree and use smart pointers
2020-03-01 02:44:34 +02:00
Laurent Rineau
0fa0c4fbb9
Merge pull request #4244 from maxGimeno/AABB_tree-Make_accelerate_distance_queries_default-maxGimeno
...
AABB_tree: make accelerate distance queries default
2019-12-05 11:05:35 +01:00
Laurent Rineau
3b5d13f023
Merge pull request #4250 from maxGimeno/PMP-Side_of_tm-use_bbox-maxGimeno
...
PMP: Make Side_of_triangle_mesh faster for disjoint meshes
2019-12-05 11:05:29 +01:00
Maxime Gimeno
fb273ea62a
Fix indentation
2019-12-03 09:33:09 +01:00
Maxime Gimeno
53458f1f42
Indentation
2019-12-02 16:13:20 +01:00
Maxime Gimeno
7b05052a27
Test if the tree is empty before building the kd-tree (to fix all the execution failures in the tests)
2019-11-18 10:27:04 +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
Martin Skrodzki
16e0a475f4
Fix traversal order, add comment on benchmark results.
2019-10-14 00:28:08 +02:00
Sébastien Loriot
9221290bef
add missing const
2019-10-11 08:07:02 +02:00
Sébastien Loriot
6e73f92fd2
fix nb of primitives
2019-09-27 07:15:17 +02:00
Sébastien Loriot
a4aa6a7b77
rework expression
2019-09-26 15:54:43 +02:00
Andreas Fabri
6027b2d5f7
Add Traits::intersection_with_priority()
2019-09-26 15:15:50 +02:00
Maxime Gimeno
dd566a2c96
Fixes
2019-09-24 13:49:10 +02:00
Maxime Gimeno
15d42d6cd2
Make the accelerate_distance_query() lazy and add a function to disable it.
2019-09-24 11:38:19 +02:00
Maxime Gimeno
2a3cce88e8
Fix AABB_tree with 1 primitive
2019-07-04 10:31:48 +02:00
Laurent Rineau
23f946a58a
Merge pull request #3954 from maxGimeno/AABB_tree-All_intersected_primitives_for_tree-GF
...
AABB_tree: add do_intersect() for trees
2019-06-17 14:16:09 +02:00
Andreas Fabri
4581f1b7a8
Morte replacements
2019-06-05 08:39:55 +02:00
Maxime Gimeno
c873d7bf36
Documents do_intersect() for AABB_trees and add a test file
2019-05-23 16:14:56 +02:00
Sébastien Loriot
1d908c1c0b
remove code for CGAL_INTERSECTION_VERSION 1
2019-03-29 13:28:32 +01:00
Sébastien Loriot
affaa19327
remove workaround for non support of variadic template
2019-03-29 10:41:49 +01:00
Laurent Rineau
4d66f012c7
Merge pull request #3766 from sloriot/AABB_tree-more_robust_first_intersection
...
More robust first_intersection
2019-03-19 18:30:50 +01:00
Sébastien Loriot
3c0cc16c68
take the max coordinate instead of the non-zero one
2019-03-12 17:59:28 +01:00
Laurent Rineau
11bf3926e6
Merge branch 'releases/CGAL-4.12-branch'
2019-02-16 14:00:03 +01:00
Laurent Rineau
fdd8357915
Merge pull request #3580 from afabri/Stream_support-Color-GF
...
Fix warnings (Add/remove copy constructors, and other warnings)
Co-authored-by: Laurent Rineau <laurent.rineau@cgal.org>
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
Co-authored-by: Maxime GIMENO <maxime.gimeno@gmail.com>
2019-02-13 15:25:07 +00:00
Sébastien Loriot
0f9f217f50
add an important note for first_intersection
2019-02-12 16:10:41 +01:00
Laurent Rineau
0241fdc3eb
Compatibility with both Point_3 and Weighted_point_3
2019-02-11 13:46:06 +01:00
Laurent Rineau
d216131c79
New undocumented AABB primitive: cells of a 3D triangulation
...
The `Scene_c3t3_item` from our 3D demos now uses an AABB tree of
cells, instead of an AABB tree of triangles. That divides the number
of primitives by 4, and save times:
Before:
```
C3t3 facets AABB tree built in 22.010006904602051 wall-clock seconds
Scene_c3t3_item_priv::computeIntersections in 0.50893402099609375 wall-clock seconds
```
After:
```
C3t3 cells AABB tree built in 13.072829008102417 wall-clock seconds
Scene_c3t3_item_priv::computeIntersections in 0.41458892822265625 wall-clock seconds
```
The gain seems mostly in the construction of the tree (40% saved), and
the gain on the queries seems lower (about 20%).
2019-02-11 13:22:11 +01:00
Laurent Rineau
afc3de2894
Merge branch 'master' into Stream_support-Color-GF
2019-01-23 09:37:08 +01:00
Andreas Fabri
81d4227e57
Fix AABB tree
2019-01-10 18:40:10 +01:00
Andreas Fabri
6cc109f7c4
AABB Tree testsuite
2018-11-28 09:07:36 +01:00
Sébastien Loriot
6400cc5d5a
fix doc warning
2018-11-12 11:28:23 +01:00
Sébastien Loriot
9c9d4ea6c6
fix doc warnings
2018-11-02 14:40:53 +01:00
Sébastien Loriot
056c778305
Merge pull request #3370 from maxGimeno/AABB_tree-Change_facegraph_triangle_primitive_id-GF
...
Aabb_tree: change the id of AABB_face_graph_triangle_primitive and AABB_halfedge_graph_segment_primitive
2018-11-02 10:34:26 +01:00
Sebastien Loriot
5be2958fae
Merge pull request #3386 from maxGimeno/AABB_tree-Override_build_function_with_shared_data-GF
...
AABB_tree: Add an overload to build() for shared data
2018-11-02 10:31:22 +01:00
Sébastien Loriot
34527a3dc3
remove extra template keyword
2018-10-31 06:20:37 +01:00
Sébastien Loriot
cdbe19b480
Merge pull request #3369 from maxGimeno/AABB_tree-AABB_transformed_traits-GF
...
[Small Feature] Add collision detection in PMP
2018-10-30 15:49:38 +01:00
Laurent Rineau
62c33b9df4
Merge pull request #3390 from maxGimeno/AABB_tree-Add_datum_function-GF
...
AABB_tree: add datum()
2018-10-29 10:27:57 +01:00
Maxime Gimeno
c05f2f98f8
Use the helper type but hide it in the doc
2018-10-12 10:21:13 +02:00
Maxime Gimeno
500c2a7200
Only document Datum_reference as return type
2018-10-11 10:13:26 +02:00
Maxime Gimeno
8f6d68152b
add doc
2018-10-10 12:16:22 +02:00
Maxime Gimeno
eacf880034
Add a const function datum() to AABB_tree and test.
2018-10-10 11:55:23 +02:00
Maxime Gimeno
1b5cfa66e6
Edit after review
2018-10-09 15:06:14 +02:00
Sébastien Loriot
eb8e5e5b35
change the Id in the base class + update pmaps to handle also pairs
2018-10-09 14:15:26 +02:00
Maxime Gimeno
4615c636d5
Inherit from the helper class to avoid storing the graph if tag is true.
2018-10-09 14:14:51 +02:00
Maxime Gimeno
da01fb43ee
fix doc and don't duplicate the id. Use a pointer to the graph.
2018-10-09 14:14:51 +02:00
Maxime Gimeno
1d7e07b954
Fix doc
2018-10-09 14:14:51 +02:00
Maxime Gimeno
1960e01aeb
fixes and do the same for the edges
2018-10-09 14:14:51 +02:00
Maxime Gimeno
232373c9ca
Change the Id of the AABB_face_graph_triangle_primitive so it contains the mesh if necessary.
2018-10-09 14:14:51 +02:00
Sébastien Loriot
baf27bbd6e
use const map (non-const map should be convertible to const map in practice)
2018-10-09 10:28:45 +02:00
Maxime Gimeno
3e2d61e29d
Move traits in PMP/internal
2018-10-09 10:28:43 +02:00
Sébastien Loriot
c32820fe8b
reuse conversions
2018-10-09 10:28:43 +02:00
Sébastien Loriot
caa5135c18
simplify traits and always use transformed primitives
2018-10-09 10:28:42 +02:00
Sébastien Loriot
8486cff633
add an extra flag to force the evaluation of the transformation
2018-10-09 10:28:42 +02:00
Sébastien Loriot
680191dccd
remove trailing whitespaces
2018-10-09 10:28:42 +02:00
Sébastien Loriot
3d50da882e
cosmetic changes
2018-10-09 10:28:42 +02:00
Sébastien Loriot
e6c7c34783
fix bbox computation and factorize
2018-10-09 10:28:42 +02:00
Maxime Gimeno
622509816b
Fix rotation of boxes
2018-10-09 10:24:32 +02:00
Maxime Gimeno
f236176d55
Add missing file
2018-10-09 10:24:32 +02:00
Maxime Gimeno
2c23959347
rename and transform primitives. Don't transform mesh in test.
2018-10-09 10:24:32 +02:00
Maxime Gimeno
8e64d49513
WIP: Remove the traits_base
2018-10-09 10:24:32 +02:00
Maxime Gimeno
48c0cc02a2
Add Filtered_predicates support
2018-10-09 10:24:32 +02:00
Maxime Gimeno
36fd62f8c6
Add benchmark for tree intersection
2018-10-09 10:24:32 +02:00
Sébastien Loriot
f5ef4b0034
add a naive way to intersect two AABB-trees
2018-10-09 10:24:32 +02:00
Maxime Gimeno
d2f4e19e36
Add transformations to the new traits and add a test for it.
2018-10-09 10:24:32 +02:00
Maxime Gimeno
a764322b7d
Create a dummy traits and fix AABB_traits and AABBTraits implem/doc problems.
2018-10-09 10:24:31 +02:00
Maxime Gimeno
79e54aedd8
indentation
2018-10-08 14:26:44 +02:00
Maxime Gimeno
7990fd4f27
Add an overload to build() for shared data
2018-10-08 14:14:49 +02:00
Sébastien Loriot
3dd0aa112d
rename macro not following the convention
2018-10-08 10:28:55 +02:00
Sébastien Loriot
a2e8a1c68f
add the suffix Ref to doxygen link to reference
2018-10-08 10:26:56 +02:00
Sébastien Loriot
543495e8e0
build the kd-tree only if the AABB-tree is built
...
this avoid issues when using thread where the kd-tree is used
while being reconstructed
2018-07-18 17:40:09 +02:00
Sebastien Loriot
ae70d9ca9f
Merge pull request #3061 from lrineau/AABB_tree-fix_for_MSVC_2017_15.7-GF
...
A fix for MSVC 2017 15.7 with /permissive-
2018-05-15 22:30:46 +02:00
Andreas Fabri
d2b89df177
More Traits::
2018-05-02 15:14:46 +01:00
Laurent Rineau
a8bd3605a7
A fix for MSVC 2017 15.7 with /permissive-
...
MSVC is probably right that it was not a valid C++ code: the previous
version called a static member function of the enclosing class, without
qualification, and that static member function was defined *after*.
2018-04-26 16:16:10 +02:00
Sébastien Loriot
742a615527
fix doc warnings triggered essentially by the improvement of doxygen
2018-04-25 23:36:21 +02:00
Laurent Rineau
599f7c3b73
Merge pull request #2965 from sloriot/AABB_tree-Add_primitive_constructor
...
Add a constructor from iterator on id for AABB_primitive
2018-03-30 10:56:38 +02:00
Sébastien Loriot
4befc177c8
update requirements in the doc
2018-03-28 15:44:50 +02:00
Sébastien Loriot
f36657ca2b
add constructor from iterator
2018-03-27 21:07:24 +02:00
Maxime Gimeno
bc2410d4ad
Fixes
2018-02-28 11:40:49 +01:00
Maxime Gimeno
2156017402
Remove native gl.h include and native gl code in Surface_mesher/archive
2018-02-28 10:36:26 +01:00
Andreas Fabri
7675141f2b
AABB_tree
2018-01-17 19:43:47 +00:00
Andreas Fabri
38b2e57b11
PMP
2018-01-17 17:59:35 +00:00
Sébastien Loriot
ee57fc2d6c
add SPDX identifier for files under the GPL-3+ license
2017-11-12 10:17:51 +01:00
Sébastien Loriot
081338bbcb
remove backticks in arguments of \ref command
2017-08-03 13:22:51 +02:00
Andreas Fabri
360f955415
Adress todo of the github review
2017-07-18 17:20:46 +02:00
Andreas Fabri
6f6985065d
fix doc
2017-07-18 17:20:46 +02:00
Andreas Fabri
5bd5fbf825
Document the default
2017-07-18 17:20:46 +02:00
Andreas Fabri
39e6ad9139
Add missing #include
2017-07-18 17:17:34 +02:00
Andreas Fabri
aefd26b080
Add a template argument to AABB_traits for a face->bbox property map
2017-07-18 17:17:34 +02:00
Laurent Rineau
d878561809
Merge pull request #2102 from afabri/Kernel_Weighted_point_without_conversion-GF
...
Remove implicit conversions between points and weighted points
2017-07-03 12:08:57 +02:00
Mael Rouxel-Labbé
1624867249
Renamed a variable for clarity
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
dc648c9cc2
Removed unnecessary semicolons
2017-06-28 10:14:35 +02:00
Mael Rouxel-Labbé
e63de324ec
Use traits rather than .point() to access the bare point of weighted point
2017-06-28 10:14:35 +02:00
Andreas Fabri
60fa986e1f
make the Polyhedron demo mesh_3_plugin work
2017-06-28 10:14:35 +02:00
Sébastien Loriot
f348671e03
update doc that should have been updated when FaceGraph has been introduced
2017-06-26 10:08:42 +02:00
Laurent Rineau
376c2dd002
Merge pull request #1852 from maxGimeno/Doxygen_compare-GF
...
Compare two documentation outputs
2017-06-13 10:18:28 +02:00
Sébastien Loriot
0270ec473a
Merge pull request #1255 from afabri/CGAL-license_check-GF
...
Add a license check mechanism
2017-01-25 17:14:55 +01:00
Sébastien Loriot
2e1e2a28e6
Merge remote-tracking branch 'cgal/releases/CGAL-4.9-branch'
2017-01-25 17:07:10 +01:00
Sébastien Loriot
37cbdd065c
handle the case when the ray intersection is a segment
2017-01-24 14:19:56 +01:00
Maxime Gimeno
82860688d1
Fix the doc to avoid diffs between 1.8.4 and 1.8.13 outputs
2017-01-24 09:39:23 +01:00
Laurent Rineau
143f6042f7
Merge pull request #1833 from sloriot/AABB_tree-fix_ray_shooting
...
.. from a merge of branch 'cgal/releases/CGAL-4.9-branch'.
2017-01-19 17:38:42 +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
Sébastien Loriot
40a54cf932
fix a typo for computing the relative distance
2017-01-13 16:22:57 +01:00
Maxime Gimeno
1face074bf
Add offset support for the Cut_plugin
2016-12-02 12:03:46 +01:00
Sébastien Loriot
84fe181d7c
Use functors instead of member functions
2016-10-28 15:07:14 +02:00
Sébastien Loriot
98ebf748e0
add missing requirement for the point type
2016-10-28 11:36:53 +02:00
Laurent Rineau
d02ab0c626
Merge pull request #1575 from afabri/Spatial_searching-document_build-GF
...
Add the documentation for Kd_tree::build()
2016-10-18 11:06:37 +02:00
Laurent Rineau
f2e7050364
Merge pull request #1428 from sloriot/AABB_tree-fix_Closest_point
...
Fix implementation of AABB_traits::Closest_point
2016-10-17 10:03:20 +02:00
Andreas Fabri
64a901a863
Add the documentation for Kd_tree::build() and unify it with AABB_tree::build.
...
The latter was in a Section 'Advanced' (not \cgalAdvanced, just a \heading).
They are now both in the Section `Creation`.
2016-10-13 10:07:48 +02:00
Laurent Rineau
1c19028e5b
Merge pull request #1267 from maxGimeno/Random_generator-GF
...
Random generator
2016-10-05 13:02:29 +02:00
Sébastien Loriot
e2f7efa58a
clean up
2016-09-28 10:45:45 +02:00
Maxime Gimeno
35a328b1bf
Move Halfedge_and_face_graph_property_maps.h to BGL.
2016-09-28 10:45:45 +02:00
Maxime Gimeno
a88981ddf5
Make the doc of the file just basic comments so the clas sis not officially documented.
2016-09-21 15:15:03 +02:00
Maxime Gimeno
5649c3f56b
Renaming
...
- Rename AABB_C3T3_triangle_primitive in AABB_triangulation_3_triangle_primitive and change the doc accordingly.
2016-09-20 12:22:01 +02:00
Sébastien Loriot
8359f3796e
remove a no longer needed header
2016-09-01 16:05:04 +02:00
Sébastien Loriot
e8939a8db1
using Construct_projected_point_3 in Closest_point as it meant to be documented
2016-09-01 16:05:03 +02:00
Sébastien Loriot
c751ab4310
Add operators for segment and triangle types in Construct_projected_point_3
...
the original implementation comes from the AABB-tree package
2016-09-01 16:04:55 +02:00
Sebastien Loriot
62d06a2b88
Revert "AABB_tree : fix doc vs code inconsistency"
2016-08-23 11:12:33 +02:00
Jane Tournois
2fade16c73
replace Compute_closest_point with Construct_closest_point
2016-08-10 16:48:11 +02:00
Jane Tournois
1f530e0dc8
fix an inconsistency between the code and the doc
...
doc mentions `Compute_closest_point_3`, and code implements `Closest_point`
since `Compute_closest_point_3` should move to the Kernel at some point, I prefer
keeping this solution.
However, for backward compatibility with possibly existing user code, I keep Closest_point
in the non-documented code.
2016-08-10 15:47:35 +02:00
Maxime Gimeno
f8b9520764
Fix for Source_point_from_edge_descriptor::get().
2016-07-01 16:20:02 +02:00
Laurent Rineau
bc457b086a
Fix a documentation bug
...
`boost::get(vertex_point, graph)` may not compile, if the graph is not a CGAL face graph. Example: when it is an OpenMesh, in the `OpenMesh` namespace.
2016-06-09 13:05:32 +02:00
Andreas Fabri
6392adf636
another min max fix for VC++
2016-05-03 06:28:38 +02:00
Andreas Fabri
970460ec0b
Use std::priority_heap if boost version < 1.50
2016-05-02 10:27:55 +02:00
Andreas Fabri
12579a1214
Fix VC++ max problem
2016-05-01 17:37:11 +02:00
Andreas Fabri
b56c436ee6
Use boost::lambda::constant() - thank you Philipp
2016-04-26 17:12:17 +02:00
Sébastien Loriot
48a493893f
fix indentation issues
2016-04-26 17:12:16 +02:00
Sébastien Loriot
03f9c56c76
Make the code matching the submission
...
- rename first_intersection_and_primitive to first_intersection
- update examples and test
- switch on the function doc
- add implementation for first_intersected_primitive
2016-04-26 17:12:15 +02:00
Andreas Fabri
37e4ddb107
const&
2016-04-26 17:12:15 +02:00
Andreas Fabri
84ebe802ae
Add the second function implementation skeleton
2016-04-26 17:12:14 +02:00
Andreas Fabri
2fabd2c170
Add the second function; change changes.html
2016-04-26 17:12:14 +02:00
Andreas Fabri
285341bb57
Rename ray_intersection() to first_intersection()
2016-04-26 17:12:14 +02:00
Philipp Möller
e4e4e48ea5
Unused object warning
2016-04-26 17:12:14 +02:00
Philipp Möller
54d8839ac9
Comment out the do_intersect tests
...
They caused a performance problem when used with the tweaked AABB_traits
of Surface_mesh_segmentation.
2016-04-26 17:11:09 +02:00
Philipp Möller
3f4d185b1d
Use branchless min/max
2016-04-26 17:11:06 +02:00
Philipp Möller
7cd8369ab2
Prevent division by zero
2016-04-26 17:11:04 +02:00
Philipp Möller
ce6501a291
Use the original algorithm
2016-04-26 17:11:03 +02:00
Philipp Möller
b086fc6ec6
Return 0. for t_near < 0.
...
If t_near is smaller than 0. it means that the ray starts inside the
bounding box. t_near is the intersection point at the outside of the
box, but the actual intersection is at the start of the ray.
2016-04-26 17:11:02 +02:00
Philipp Möller
0db0027414
Performance bug
2016-04-26 17:11:01 +02:00
Philipp Möller
bfb36df712
Add the ability to use skip functor
2016-04-26 17:10:59 +02:00
Philipp Möller
83d7396cd8
Throw in some const
2016-04-26 17:10:57 +02:00
Philipp Möller
4d08cf6d33
Add a do_intersect test before intersection
2016-04-26 17:10:55 +02:00
Philipp Möller
b6e60ba6dc
Make the correct part of Node_ptr const
2016-04-26 17:10:54 +02:00
Philipp Möller
901c27724b
Use boost::priority_queue
2016-04-26 17:10:53 +02:00
Philipp Möller
8eded0292f
use visitation instead of get
2016-04-26 17:10:51 +02:00
Philipp Möller
ced2b87170
static_assert type equality
...
Ray is just a template parameter to avoid instantiation of this
function, make sure it is the type we expect.
2016-04-26 17:10:47 +02:00
Philipp Möller
e3fdda3bc0
Integrate changes from the submission
2016-04-26 17:10:46 +02:00
Philipp Möller
f94a74b93a
Document that AABB_traits can also model AABBRayIntersectionTraits
2016-04-26 17:10:41 +02:00
Philipp Möller
08f7efd1d2
Only use functors in Intersection_distance
2016-04-26 17:10:39 +02:00
Philipp Möller
2148ae6d4f
Directly use Ray type and avoid a function template
2016-04-26 17:10:37 +02:00
Philipp Möller
4466eb5df3
Simplify types a bit
2016-04-26 17:10:36 +02:00
Philipp Möller
5aef4c4ca5
Add missing base cases
2016-04-26 17:10:35 +02:00
Philipp Möller
33bc6f125f
Make child and data of a Node public
...
This is necessary so that other algorithms can traverse the hierarchy.
2016-04-26 17:10:34 +02:00
Philipp Möller
2540612e97
Drop-in for as_ray_parameter
...
This needs to be replaced with a non-hacky solution.
2016-04-26 17:10:33 +02:00
Philipp Möller
f4a506ed73
Fix wrong identifier names
2016-04-26 17:10:30 +02:00
Philipp Möller
69d7662ddc
Fix wrong template arguments
2016-04-26 17:10:29 +02:00
Philipp Möller
0e883861b5
Move Intersection_distance into its own base
...
This is necessary so that we only define it if the GeomTraits meet the
necessary requirements.
2016-04-26 17:10:27 +02:00
Philipp Möller
b1e99b3c71
Add is_ray_intersection_geomtraits
...
This meta-function can be used to make a somewhat accurate guess if the
argument is a model of the yet to be written
AABBRayIntersectionGeomTraits.
2016-04-26 17:10:26 +02:00
Philipp Möller
f6bed4128e
Forgot copy-right header
2016-04-26 17:10:25 +02:00
Philipp Möller
7c26fcb8b8
Parenthesis for max and min
2016-04-26 17:10:24 +02:00
Philipp Möller
a8f5e3f867
Use the slab method to compute intersection_distance
...
This code still relies on the types to be CGAL types.
2016-04-26 17:10:22 +02:00
Philipp Möller
01ef95783d
Add prototype for Intersection_distance
2016-04-26 17:10:21 +02:00
Philipp Möller
88acc3d1b3
Fix indentation of class intersection
...
Wrong indentation on nested classes made this tricky to decipher and
worth the change.
2016-04-26 17:10:20 +02:00
Philipp Möller
90542aa0ab
Add the doc for ray_intersection
2016-04-26 17:10:18 +02:00
Philipp Möller
2af2aa324d
Handle case 2 and 3
2016-04-26 17:10:16 +02:00
Philipp Möller
5cd89bd981
fixup
2016-04-26 17:10:15 +02:00
Philipp Möller
e7b3a7a97c
Handle both inner nodes
2016-04-26 17:10:13 +02:00
Philipp Möller
3abe4ed2c2
Add basic algorithm outline
2016-04-26 17:10:12 +02:00
Philipp Möller
4cc9d34cb5
Add prototypes and implementation file
2016-04-26 17:10:11 +02:00
Sébastien Loriot
b2196fca0c
remove non-needed OpenGL instructions
2016-01-18 13:17:41 +01:00
Andreas Fabri
56bfaa2746
merge
2016-01-05 17:06:04 +01:00
Andreas Fabri
88596c38ce
bugfix: the datum was a segment not a triangle
2015-12-16 16:58:27 +01:00
Andreas Fabri
0b2b5ee1e6
Add an AAB tree primitive for C3T3 facets
2015-12-11 16:15:36 +01:00