Sébastien Loriot
79affebe42
make the traversal and expand using the traits class
...
stored in the AABB_tree
2012-05-14 11:54:16 +00:00
Sébastien Loriot
ce41bc6925
id() should be const with no ref
2012-05-11 12:14:21 +00:00
Sébastien Loriot
6c2ef90a21
remove default constructor
2012-05-10 16:41:23 +00:00
Sébastien Loriot
8a3d8e1d01
rename cache_primitive -> cache_datum
2012-05-10 16:18:33 +00:00
Sébastien Loriot
be1de01b22
*update AABB_primitive: the property maps must operate on Id!
...
*correct and complete implementation for HalfhedgeGraph models
2012-05-10 15:51:45 +00:00
Sébastien Loriot
388d53e0a3
correct enable_if
2012-05-10 08:19:38 +00:00
Sébastien Loriot
31d6ebe9bf
*add primitive types for HalfedgeGraph and FaceGraph (wip)
...
*clean up triangle and segment primitive
2012-05-09 17:11:09 +00:00
Sébastien Loriot
6efd7f7954
* remove a template parameter to primitive caching
...
* add a generic class that has two property map as template parameter to define a aabb_tree primitive
2012-05-09 07:14:49 +00:00
Sébastien Loriot
6e72bfd1a7
add a point property map to access reference_point, with a default that uses datum()
2012-05-04 14:59:14 +00:00
Sébastien Loriot
ed6ac1f4fd
rename Property maps template parameter
...
set primitive caching to false by default
2012-05-04 14:49:27 +00:00
Sébastien Loriot
58156fb1e9
merge from next
2012-05-04 12:24:50 +00:00
Laurent Rineau
b435af6afd
Add svn:eol-style=native. Rewrite EOLs accordingly.
2012-02-15 13:03:09 +00:00
Laurent Rineau
e0bc688832
Bug fix
...
<CGAL/internal/AABB_tree/nearest_point_segment_3.h> was doing stupid things
if there was a degenerate segment in the AABB tree.
2012-02-15 13:02:25 +00:00
Laurent Rineau
09d86739d0
Recode eol of two files: dos2unix, and add the eol-style=native svn property
2012-02-14 10:43:34 +00:00
Laurent Rineau
8f59fd9592
Turn QPL into LGPLv3+
2012-01-13 16:33:35 +00:00
Andreas Fabri
77b9fd79db
Remove ETHZ copyright, as Camille's contribution during his postdoc was minor
2011-09-29 15:34:00 +00:00
Sébastien Loriot
5e0c09d8ce
For backward compatibility reasons and according to this article:
...
http://gotw.ca/gotw/006.htm , accelerate_distance_queries and
clear_search_tree should be const.
To guarantee the read-only thread-safety, a mutex for the construction
of the internal kd-tree is used.
At the same time, optimize accelerate_distance_queries() to not
redo computation if nothing has changed in the aabb_tree.
Note that clear_search_tree does not need to be thread-safe as it is private.
2011-09-09 08:31:38 +00:00
Sébastien Loriot
c93ba3a215
remove temporary comment
2011-09-08 16:03:23 +00:00
Sébastien Loriot
f8449dcec4
more efficient usage of mutex. The lock is only done
...
if the build need to be done. We have an extra "if (m_need_build)"
but otherwise we would need to use mutex::try_lock() which results
in more code and as efficient.
2011-09-08 15:54:44 +00:00
Sébastien Loriot
a09f6640f5
remove non-const version of root_node added in r65337
...
for backward compatibility. It is not documented and not
used (in a non-const context).
2011-09-08 12:02:06 +00:00
Sébastien Loriot
795ab80486
use a mutex in const function root_node to protect the non const call to
...
build()
The class AABB_tree is now read-only thread-safe
2011-09-08 08:56:16 +00:00
Sébastien Loriot
eed2074f7f
Fix constness issues in AABB_tree
...
*remove mutable data members
*accelerate_distance_queries is not const
*clear_search_tree is not const
*root_node() const returns a const Node*
*add root_note() non-const version
*update documentation of AABB_tree class. function constness was not documented
*update changes.html
2011-09-07 09:55:59 +00:00
Sébastien Loriot
578d41a962
deprecate AABB_polyhedron_*_primitive
...
add triangle and segment property_map from polyhedron simplices
update examples to use these property maps with modified primitive classes.
2011-07-25 06:22:05 +00:00
Sébastien Loriot
7a0b2326e1
add property_map as template parameter of segment and triangle primitive
...
and add a template parameter to enable or disable the caching of the
or object inside the primitive.
Pb to handle: in case the object is not cached, point() might be
expansive
2011-07-20 21:59:14 +00:00
Laurent Rineau
72f323a5dd
The bbox() of AABB_tree can return a const reference.
2011-04-07 12:54:35 +00:00
Laurent Rineau
6f390c482e
Add a missing #include of OpenGL headers.
2011-01-10 16:26:44 +00:00
Sébastien Loriot
12e8540bbe
merge from candidate branch.
2011-01-10 10:46:16 +00:00
Laurent Rineau
8b08eb2b5b
Fix -pedantic error.
2010-09-28 21:23:13 +00:00
Sébastien Loriot
1daecf3943
move BBox vs {sphere,plane,triangle} do_intersect from AABB_tree to Intersections_3,
...
and update accordingly include directives. Update testsuite
remove unneed CMakeLists.txt from AABBtree testsuite
Remove Triangle_3_Plane_3 intersection from AABB_tree (I define it in Intersections_3 some days ago, thus a conflict)
2010-09-01 08:49:24 +00:00
Sébastien Loriot
4aa953888f
all polyhedron primitives to be constructed from non compact container iterators
2010-08-31 13:45:38 +00:00
Stéphane Tayeb
813d775fba
Add missing #include.
2010-07-08 07:35:44 +00:00
Andreas Fabri
54f913051c
int -> size_type/std::size_t
2010-06-21 15:38:26 +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
Stéphane Tayeb
afdd14bb62
Fix compilation on x86-64_Linux-2.6_llvm-clang-with-g++-4.4.1_F11: use fully qualified name for cross_product call.
2010-05-20 07:02:05 +00:00
Laurent Rineau
a65e49133b
Fix: in <CGAL/AABB_intersections.h>,
...
Kernel::Do_intersect_3()(Triangle_3, Bbox_3) was available
but not Kernel::Do_intersect_3()(Bbox_3, Triangle_3).
2010-05-05 14:54:49 +00:00
Sébastien Loriot
15557626cc
remove not needed break instructions (avoid warning with g++ (Debian 4.3.4-6) 4.3.4)
2010-03-31 08:45:58 +00:00
Andreas Fabri
0758e61952
fix for the case that one of the triangle vertices is on the plane
2010-02-25 11:55:20 +00:00
Sylvain Pion
85dc12f2a7
Remove empty lines at beginning and end of files
...
(apply Scripts/developer_scripts/remove_empty_lines.pl).
2010-02-01 12:55:28 +00:00
Stéphane Tayeb
90288a058b
Move do_intersect(Bbox,Bbox/Line/Ray/Seg) and intersection(Triangle,Line/Ray/Seg) to Intersections_3.
2009-12-18 15:13:30 +00:00
Stéphane Tayeb
e476966856
Change License to LGPL. Fix Copyrights.
2009-12-18 14:35:34 +00:00
Stéphane Tayeb
cab2982563
Implement Sylvain's comments:
...
+ add missing includes
+ avoid object copies
+ replace CGAL_kernel_assertion(false) by CGAL_error()
+ use is() function of CGAL::Object
+ improve style (remove spaces, white lines...)
2009-12-16 17:03:17 +00:00
Stéphane Tayeb
ab503ac11f
* Fix triangle_other test
...
* Fix Triangle_3_Ray_3_intersection.h header
2009-11-24 13:07:45 +00:00
Stéphane Tayeb
7ff50b95a0
* Rename test files which have to be moved to kernel
...
* Fix header protection names
2009-11-20 17:02:39 +00:00
Stéphane Tayeb
836d042180
Fix previous commit (thanks to compiler cache...).
2009-11-20 16:57:44 +00:00
Stéphane Tayeb
6550224744
Move and rename files (prepares integration into kernel).
2009-11-20 16:38:02 +00:00
Stéphane Tayeb
854fef2f8a
* Update (triangle, seg/line/ray) intersection computation
...
* Enrich (triangle, seg/line/ray) test suite
* Minor formatting change in Bbox_3_line_3_do_intersect.h
2009-11-20 13:09:08 +00:00
Stéphane Tayeb
4f50028d7b
Minor formatting clean.
2009-11-18 08:51:51 +00:00
Stéphane Tayeb
c095f38e66
Rewrite (seg/ray/line - bbox) predicates without divisions.
2009-11-17 16:41:57 +00:00
Stéphane Tayeb
3f1a416bc0
Fix syntax error.
2009-11-16 12:48:11 +00:00
Stéphane Tayeb
f7a63d0ec5
revert r52901-52902 (moving predicate from AABB_tree to Intersections_3)
2009-11-10 16:58:02 +00:00