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
Philipp Möller
17797b7271
Merge next into this branch. There have been conflicts in the
...
AABB_tree documentation, Intersections_3 and Arrangement_on_surface_2.
The merge also introduced a regression for a bug fixed in R68387 which
fixed a bug in Triangle_3 Segment_3 intersections. The relevant
testcase is in triangle_other_intersection_test.cpp.
2012-04-24 15:06:19 +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
Philipp Möller
376b6309f4
Adapted AABB_tree to the new concept and documented the API changes
2011-11-15 17:13:09 +00:00
Philipp Möller
bddbfcc8e4
Adapted AABB_tree for new intersections
2011-11-10 16:00:22 +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
Stéphane Tayeb
b869d0956d
Move intersection predicates and constructions from AABB_tree to Intersection_3.
2009-11-09 12:10:23 +00:00
Pierre Alliez
ca4f73b860
fix #ifdefs
2009-10-29 10:42:53 +00:00
Laurent Rineau
83912b2952
Massive fix of svn:keywords properties, and $URL$ keyword.
2009-10-20 08:59:26 +00:00
Laurent Rineau
7bf0990dbb
Minor fix: the correct way to construct a FT from 0 or 1, that is
...
documented to work with all FT, is FT(0)/FT(1), and not
(FT)(0.0)/(FT)(1.0). The concept Field refines FromIntConstructible:
See:
http://www.cgal.org/Manual/last/doc_html/cgal_manual/Algebraic_foundations_ref/Concept_Field.html
and follow the "refines" chain until:
http://www.cgal.org/Manual/last/doc_html/cgal_manual/Algebraic_foundations_ref/Concept_FromIntConstructible.html
2009-10-20 07:34:13 +00:00
Stéphane Tayeb
1e4358dc07
Fix warning.
2009-10-20 07:03:58 +00:00
Stéphane Tayeb
99a5c3160a
Fix compilation error.
2009-10-15 06:40:45 +00:00
Stéphane Tayeb
aa3e601755
Computation and code factorization (to avoid early roundings).
2009-10-14 08:22:24 +00:00
Stéphane Tayeb
cfa88ab257
* Fix Triangle_3_line_3_intersection.h (implementation inspired from Triangle_3_line_3_do_intersect.h)
...
* Add test for triangle_3/line_3 intersection (should be enriched maybe) in file aabb_intersection.cpp
* Test exact_exact kernel in aabb_do_intersect_test.cpp
2009-10-09 14:09:14 +00:00
Stéphane Tayeb
9ba530384f
* Fix Triangle_3_segment_3_intersection.h (implementation inspired from Triangle_3_segment_3_do_intersect.h)
...
* Add test for triangle_3 segment_3 intersection (should be enriched maybe)
* Test more kernels in aabb_do_intersect_test.cpp
2009-10-05 09:41:47 +00:00
Stéphane Tayeb
5f464aec46
Merge [r51090:51960]
...
From branches/CGAL-3.5-branch/AABB_tree to trunk/AABB_tree
r51953 | stayeb | 2009-09-16 13:17:12 +0200 (Wed, 16 Sep 2009) | 1 line
* Fix AABB_tree missing default ctor.
r51936 | stayeb | 2009-09-14 19:37:18 +0200 (Mon, 14 Sep 2009) | 2 lines
* Fix ray_bbox & line_bbox do_intersect predicates for filtered kernels
* add a small test for do_intersect(seg/ray/line, bbox) queries
r51932 | lrineau | 2009-09-14 15:32:24 +0200 (Mon, 14 Sep 2009) | 3 lines
* Fix predicates of <CGAL/AABB_intersection.h>, so that they are correctly filtered when called from the global function template CGAL::do_intersect
r51931 | stayeb | 2009-09-14 15:22:12 +0200 (Mon, 14 Sep 2009) | 1 line
* Fix bbox_3_segment_3 intersection for filtered kernels.
r51868 | lrineau | 2009-09-07 17:01:48 +0200 (Mon, 07 Sep 2009) | 2 lines
* Fix the non-filtering of BBox_3-Segment_3 intersection.
2009-09-18 12:49:03 +00:00
Pierre Alliez
63d3ba8f0d
default constructor.
2009-09-15 10:36:40 +00:00
Pierre Alliez
bfaee9aae4
adds default constructor.
2009-09-15 10:01:58 +00:00
Sylvain Pion
8573fe26ce
Rename CGALi to internal.
2009-08-24 17:10:04 +00:00
Laurent Rineau
ccd0fcc73f
Merged revisions 51083 via svnmerge from
...
svn+ssh://scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.5-branch
........
r51083 | stayeb | 2009-08-06 09:48:42 +0200 (Thu, 06 Aug 2009) | 1 line
Minor fix: include CGAL/intersections.h instead of CGAL/intersection_3.h.
........
2009-08-18 14:13:54 +00:00
Pierre Alliez
d987180d75
fix copyrights.
2009-08-07 18:57:08 +00:00
Sylvain Pion
7e0db3191b
Fix & homogenize Copyright header lines :
...
- Copyrigth -> Copyright
- ETHZ (Suisse) -> ETH Zurich (Switzerland)
2009-08-07 11:18:32 +00:00
Laurent Rineau
f81561f3d4
Add copyright and license header
2009-07-31 21:06:50 +00:00
Laurent Rineau
968b31d684
Move the non-documented AABB_polyhedral_oracle.h to the polyhedron demo.
2009-07-22 14:06:10 +00:00
Stéphane Tayeb
0a784e8d1f
Fix AABB_polyhedral_oracle (needed by Polyhedron_demo).
2009-07-22 08:18:13 +00:00
Pierre Alliez
8baebaeded
some cleaning
2009-07-16 12:39:08 +00:00
Camille Wormser
6261018859
memory check
2009-07-16 12:25:46 +00:00
Pierre Alliez
eb645bed0c
AABB tree: fix quibble in comment.
2009-07-16 06:11:29 +00:00
Pierre Alliez
cd199a7504
AABB tree: added one message to track the last remaining error in the test suite.
2009-07-16 06:07:41 +00:00
Stéphane Tayeb
b92c3902f5
Fix a bug for demo benchmark. KD-Tree is now build right after its construction (instead of at the first query).
2009-07-09 11:46:28 +00:00
Pierre Alliez
72ef5cb900
AABB tree: intersection benchmark code made much shorter and more accurate (the random generation of queries is made once for all before benchmarking, hence the timings are more precise).
2009-07-08 22:27:55 +00:00
Laurent Rineau
0d7cc0b6b5
Fix: AABBTraits must not require size_type. The size_type is an
...
implementation detail of the class template AABB_tree, and traits classes
cannot know that type.
2009-07-08 16:16:15 +00:00
Pierre Alliez
1b26c8d562
AABB tree: fix one table line of the benchmark.
2009-07-08 12:17:31 +00:00
Pierre Alliez
de47ee0a27
AABB tree: do_intersect now calls the First_primitive traversal traits (much faster)
...
performance section updated
2009-07-08 12:02:28 +00:00
Pierre Alliez
7b0f96ca06
aabb tree: attempt to fix warning:
...
message is Triangle_3_segment_3_intersection.h:93: warning: control reaches end of non-void function
laurent (R) - can you take a look at it?
2009-07-06 19:40:54 +00:00
Pierre Alliez
9772610e5f
AABB tree: benchmark across kernels and updated intersection tests (more accurate).
...
need to fix compilation issue with EPIC kernel (I guess one include missing)
2009-07-05 13:58:00 +00:00
Pierre Alliez
1d6e776431
AABB tree: some more cleanup.
2009-07-01 20:49:03 +00:00
Pierre Alliez
bc80ee2e5c
AABB tree: point out some (level 4) warnings for L.Rineau.
2009-07-01 20:23:41 +00:00
Pierre Alliez
78d040c39a
aabb tree demo: fix one strange compilation error that happens only with VC2005 (took me hours to understand that it's probably a compiler bug).
...
benchmark distance queries in the demo and updated user manual (perf section)
2009-06-30 21:18:31 +00:00
Pierre Alliez
35170ac299
aabb tree: added performance section [to be completed with distance queries and curves]
2009-06-29 21:06:26 +00:00
Pierre Alliez
dfa149a2d7
aabb tree: more code cleanup
2009-06-27 15:19:29 +00:00
Pierre Alliez
4c19729e16
aabb tree: a bit of code cleanup
2009-06-27 06:44:31 +00:00
Pierre Alliez
a46598daa8
aabb tree: polishing user manual
2009-06-26 17:55:17 +00:00
Stéphane Tayeb
c8dc1d84f7
Add a CGAL_assertion (prevents std::bad_alloc).
2009-06-26 11:58:17 +00:00
Pierre Alliez
330640c7e2
aabb tree: more on tests
2009-06-25 20:45:09 +00:00
Pierre Alliez
597f9459d5
aabb tree: some cleanup
2009-06-25 20:08:51 +00:00
Pierre Alliez
88c549f6b1
aabb tree: more on tests
2009-06-23 20:26:45 +00:00
Stéphane Tayeb
761a218fff
* Fix configuration error (boost_system is now optional)
...
* Fix singular iterator copy construction error (build with -D_GLIBCXX_DEBUG)
2009-06-09 08:10:21 +00:00
Stéphane Tayeb
c337944925
Add typedef on template parameter AABBTraits in class AABB_node (CC-5.90_F7 error).
2009-06-08 08:29:46 +00:00
Camille Wormser
e03e9fb4fd
changes needed for the Polyhedron demo to compile
2009-06-05 18:04:47 +00:00
Stéphane Tayeb
c83f4d6812
Remove compiler warnings.
2009-06-03 09:40:47 +00:00
Pierre Alliez
c9964aa7ac
AABB tree: more on tests
2009-05-18 20:33:04 +00:00
Stéphane Tayeb
729ba7be05
Test suite code factorization. Minor fix (return type) in AABB_tree.h.
2009-05-18 14:26:29 +00:00
Stéphane Tayeb
04b5499caf
Improve clip in triangle_ray/line/seg intersection construction. There is more to do i think.
2009-05-15 17:22:03 +00:00
Stéphane Tayeb
8bde72f327
* remove workaround for weighted point from AABB_traits
...
* simplify code of AABB_tree::First_intersection_traits
* change intersection(ray,triangle) and intersection(line,triangle):
returned object is now an empty object, a point or a segment
* remove do_intersect test from Intersection::operator() of
AABB_traits: intersection(ray,triangle) and
intersection(line,triangle) do it.
2009-05-14 10:07:55 +00:00
Camille Wormser
f47e9f1f67
one more primitive,
...
more consistent names
2009-05-14 08:20:50 +00:00
Pierre Alliez
75a82ec32d
AABB tree:
...
- rebuild now returns void.
2009-05-13 07:32:41 +00:00
Laurent Rineau
df0e2ec0bc
size_type must be lowercase.
2009-05-12 14:29:36 +00:00
Camille Wormser
993c393cd4
forgotten detail
2009-05-11 23:30:04 +00:00
Camille Wormser
0d63e6c207
the Traits now conforms fuly to the documentation
2009-05-11 23:17:40 +00:00
Camille Wormser
614f220eb1
One last warning was missing: it appears only in the examples and not in the test suite.
...
It means we should add the Plane query case to the test suite.
2009-05-10 16:15:24 +00:00
Camille Wormser
74beff3b13
removed all warnings (-Wall -Wextra).
...
IMPORTANT THINGS
- We need to add Compute_squared_distance_3 (at least for Point_3, Point_3) to the traits requirements
- Since we use the (decorated) Traits as a template parameter for the Search_traits_3, we need to add
this as a requirement. Currently, the Search_traits_3 requests that the template parameter be a CGAL
kernel. This is much too strong!
2009-05-10 16:05:48 +00:00