Commit Graph

971 Commits

Author SHA1 Message Date
Sébastien Loriot 6b338eeb1f improve the name of projects in cmake scripts of examples 2016-09-08 00:02:55 +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
Sébastien Loriot a412d93c34 do not add a nested typedef that make some free function calls ambiguous 2016-08-30 16:58:00 +02:00
Jane Tournois 47a5606eea this commit fixes the following issue :
<<The AABB_tree<AT> internally use the spatial searching and in particular instantiates Search_traits_3 with AT. This implies according to that page that the concept AABBTraits must be a Kernel.

A clean solution is adding a new concept in Spatial searching that describes requirements of the template parameter of Search_traits_3. Then we can say that AABBTraits refines this concept. For consistency, we do the same for the template parameter of Search_traits_2.
>>
2016-08-23 16:28:50 +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 23cfd95541 fix test 2016-08-10 15:47:44 +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
Sebastien Loriot be27bf69b7 Merge pull request #1198 from maxGimeno/Import_AABB_Tree_demo-GF
Polyhedron_Demo: Import AABB_Tree demo
2016-07-07 13:37:55 +02:00
Laurent Rineau 5ebfefe72c Merge pull request #894 from gdamiand/CGAL_headers_only_step1-gdamiand_cjamin
CGAL header-only: step 1

(I actually do this merge for the Github interface for mobile phones! How much does that add to my geek-value?)
2016-07-05 19:50:36 +02:00
Maxime Gimeno fc68989e60 Use Simple_cartesian<double> to greatly enhance the performance. 2016-07-05 15:58:43 +02:00
Maxime Gimeno f8b9520764 Fix for Source_point_from_edge_descriptor::get(). 2016-07-01 16:20:02 +02:00
Laurent Rineau 1cde972cdb Remove whitespace at end of lines 2016-06-29 11:04:29 +02:00
Guillaume Damiand a53f16edac Merge branch 'CGAL_headers_only_step1-gdamiand_cjamin-old' into CGAL_headers_only_step1-gdamiand_cjamin 2016-06-09 19:09:38 +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
Guillaume Damiand 8ac37cc7df Add missing link with glu in demo. 2016-06-02 12:25:39 +02:00
Guillaume Damiand 10469f9c4e Update with master 2016-05-25 10:58:55 +02:00
Andreas Fabri d17a61b5ca no template in non-template code 2016-05-05 08:33:36 +02:00
Andreas Fabri c8d335e227 polish #includes 2016-05-04 09:01:40 +02:00
Andreas Fabri 7ea7719d68 no need for template keyword inside non-template code 2016-05-04 08:23:55 +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
Sébastien Loriot 2e7e70ce92 add missing semi-column 2016-04-29 13:50:08 +02:00
Andreas Fabri b56c436ee6 Use boost::lambda::constant() - thank you Philipp 2016-04-26 17:12:17 +02:00
Sébastien Loriot a832d23339 fix doc warning 2016-04-26 17:12:16 +02:00
Sébastien Loriot 48a493893f fix indentation issues 2016-04-26 17:12:16 +02:00
Andreas Fabri 145ab7e3db Add an example for ray shooting 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
Sébastien Loriot e2ed883dfc refer according to Pierre's comments 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 db7ceaa8bd Fix doc typo 2016-04-26 17:10:45 +02:00
Philipp Möller 19ecfc4b4d Add missing 3D in doc 2016-04-26 17:10:44 +02:00
Philipp Möller 21f2fbbc7a Fix typos in AABBRayIntersectionTraits 2016-04-26 17:10:42 +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 2f263bb697 Add the AABBRayIntersectionGeomTraits concept
This concept is necessary to know when we are able to define
Intersection_distance in AABB_traits
2016-04-26 17:10:40 +02:00
Philipp Möller 08f7efd1d2 Only use functors in Intersection_distance 2016-04-26 17:10:39 +02:00
Philipp Möller af1d4494e8 Beef up the testcase 2016-04-26 17:10:38 +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 5e6ae0f29d Add test case for ray_intersection
The test compares the results of using the naive approach to the results
of using ray_intersection directly.
2016-04-26 17:10:31 +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 4a1ec53c30 Add a test for Is_ray_intersection_traits 2016-04-26 17:10:28 +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 bec142d51f Add an example for ray_intersection 2016-04-26 17:10:19 +02:00
Philipp Möller 90542aa0ab Add the doc for ray_intersection 2016-04-26 17:10:18 +02:00
Philipp Möller a7f563092d Add the AABBRayIntersectionTraits concept 2016-04-26 17:10:17 +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
Maxime Gimeno 524a8da107 Remove glu from all the CMakeLists 2016-04-14 09:29:50 +02:00
Sébastien Loriot 4c29bf1b44 CMAKE_SOURCE_DIR -> CMAKE_CURRENT_SOURCE_DIR 2016-03-24 16:33:46 +01:00
Guillaume Damiand a528ff0847 Remove commented line 2016-03-09 14:42:24 +01:00
Guillaume Damiand dff63d83d3 Correct the problem of cmake qt5 macro not available in header only when configuring cgal_qt5.
To solve this problem, we added in the macro check_cgal_component the find package of qt5 if we are configuring cgal_qt5.
2016-03-09 10:44:15 +01:00
Clement Jamin c27ff9e85c Rename some cmake variables 2016-03-09 10:42:46 +01:00
Clement Jamin 221c9462db Should be set, not message 2016-03-09 10:37:58 +01:00
Guillaume Damiand 561b1f2a38 Do not need cgal_include_moc_files macro 2016-03-09 10:37:58 +01:00
Guillaume Damiand 16a19eb33e Ok for demo for aabbtree 2016-03-09 10:37:57 +01:00
Guillaume Damiand 78cde742ce Work on demo with qt5; ok for AABBtree (but need to be improved) 2016-03-09 10:35:22 +01:00
Sébastien Loriot 881e4d3199 request Core only in examples, tests and demos when really needed 2016-03-07 22:36:57 +01:00
Sébastien Loriot 2d191d6651 commit CMakeLists.txt for all examples and tests 2016-03-07 17:39:36 +01:00
Laurent Rineau def3952e0e Merge pull request #767 from bo0ts/Documentation-no_internal_in_title-pmoeller
Remove internal release number from documentation title
2016-02-11 15:42:40 +01:00
Philipp Möller 0a04a3a48f Use CGAL_DOC_VERSION 2016-02-11 15:37:54 +01:00
Maxime Gimeno 0a37521263 Revert "Fix for the context"
This reverts commit 552aaa159f.

Conflicts:
	Linear_cell_complex/examples/Linear_cell_complex/linear_cell_complex_3_viewer_qt.h
2016-02-11 14:16:04 +01:00
Maxime Gimeno 552aaa159f Fix for the context 2016-02-09 14:48:26 +01:00
Sébastien Loriot e211843b4f Merge pull request #654 from maxGimeno/FixForMac-GF
Demo fix for OS X (fix for #437)
2016-02-03 14:39:48 +01:00
Maxime Gimeno ec0928c044 Fix for AABB_demo
- The scene was not initialized when viewer->initializeGL() wwas called (still because OS X calls initialzeGL() during the setupUI instead of the first draw)
2016-01-19 17:13:06 +01:00
Sébastien Loriot b2196fca0c remove non-needed OpenGL instructions 2016-01-18 13:17:41 +01:00
Sebastien Loriot 32a3972c33 Merge pull request #592 from afabri/CGAL-dont_submit_cleanup-GF
Towards getting rid of dont_submit files
2016-01-08 14:14:08 +01:00
Sebastien Loriot f3bc10ef81 Merge pull request #549 from afabri/Polyhedron-clipping_in_shader-GF
Improve C3T3 item and meshing of a segmented image
2016-01-07 13:49:16 +01:00
Sébastien Loriot e64ae35a6e Merge pull request #542 from bo0ts/Documentation-release_build2-pmoeller
Allow to build the documentation in a release
2016-01-07 09:21:46 +01:00
Andreas Fabri a41165b6eb various 2016-01-05 18:04:14 +01:00
Andreas Fabri 56bfaa2746 merge 2016-01-05 17:06:04 +01:00
Sebastien Loriot 2b49997c7e Merge pull request #493 from afabri/CGLAL-thread_local_storage-GF
Remove boost thread dependency
2016-01-04 16:49:26 +01:00
Andreas Fabri 078afb18b3 Alpha_shapes_2 2015-12-31 16:19:26 +01:00
Philipp Möller 71b4e9c515 Use CGAL_FULL_VERSION in all Doxyfile.in 2015-12-17 16:33:28 +01:00
Andreas Fabri 88596c38ce bugfix: the datum was a segment not a triangle 2015-12-16 16:58:27 +01:00
Pierre Alliez a33f8326d4 Update aabb_tree.txt
fix typos (, vs .) in table
2015-12-15 09:35:48 +01:00
Andreas Fabri 0b2b5ee1e6 Add an AAB tree primitive for C3T3 facets 2015-12-11 16:15:36 +01:00
Philipp Möller 79b7fc5081 Handle the INPUT cases where the whole include dir is used 2015-12-10 17:03:46 +01:00
Sébastien Loriot ee5f29b07c add a warning to not put degenerated objected in the tree 2015-11-24 00:12:36 +01:00
Andreas Fabri 547be5cd2a Use wrapper for the very basic mutex locking 2015-09-04 08:42:34 +02:00
Maxime Gimeno 61072a8e75 Clean-up 2015-08-10 09:04:01 +02:00
Maxime Gimeno 71b0fd8d31 Replaced the OpenGL 3 3 Core context by a 2_1 context. 2015-08-10 08:46:09 +02:00
Maxime Gimeno 970e767bbf GL security enhancement
- Version of the shaders added and depth test enabled at each draw.
2015-08-06 15:05:00 +02:00
Maxime Gimeno fd38d1192b Plane manipulated secured
- Should resolve all the remaining problems about the manipulated frame, except for the wheels events.
- Added glEnable(GL_DEPTH_TEST) to the draw() function of the viewer to avoid errors in certain cases
2015-08-06 14:47:21 +02:00
Laurent Rineau 508b467203 Merge branch 'CGAL-Qt5_support-GF' 2015-08-05 11:23:40 +02:00
Laurent Rineau 55c30d0808 Qt::AA_UseDesktopOpenGL is usable from Qt-5.3 only 2015-08-04 10:55:26 +02:00
Maxime Gimeno 839d09e82a ManipulatedFrame fps fix
- I used the startTimer(0) to cadence the calls to cutting_plane()
- Now if the plane is spinning, the fast_distance is used.
2015-08-04 09:03:15 +02:00
Laurent Rineau 87a406ab81 Fix a warning with MSVC
> aabb_tree_demo\Scene.cpp(1313) : warning C4138: '*/' found outside of comment

Trivial bug-fix.
2015-07-30 13:04:29 +02:00
Sébastien Loriot 6dc5695989 remove unused variable warning 2015-07-22 15:47:23 +02:00
Jane Tournois 012110cfa5 fix warning for windows 2015-07-21 15:59:03 +02:00
Sébastien Loriot cffdb2ca5d fix unused variable warning 2015-07-17 13:56:04 +02:00
Laurent Rineau 04db43556f Do not warn when Qt5 is not found. 2015-07-13 15:55:41 +02:00
Laurent Rineau 15c1469a54 CGAL requires CMake>=2.8.11. 2015-07-10 17:01:42 +02:00
Laurent Rineau 3ec0c69f8f We want 2.8.10 for all demos
Previous versions are not tested by the CGAL daily test suite.
2015-07-09 17:50:22 +02:00
Maxime Gimeno 278e9d9829 Merge branch 'CGAL-Qt5_support-GF' of github.com:CGAL/cgal-public-dev into CGAL-Qt5_support-GF
Conflicts:
	Circular_kernel_3/demo/Circular_kernel_3/Circular_kernel_3.cpp
	Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.h
2015-07-08 12:40:14 +02:00
Maxime Gimeno f76bb19734 Windows fix
- add an attribute at the application in the main() function
- add a custom context to the viewer
2015-07-08 12:16:51 +02:00
Sébastien Loriot e199f546d4 remove QT4 specific code 2015-07-07 19:36:04 +02:00
Sébastien Loriot 722abba27b cosmetic changes to remove mentions of QT4 2015-07-07 18:00:43 +02:00
Maxime Gimeno 8c391c1cdf Windows context problems fixed
- Called setAttribute(Qt::AA_UseDesktopOpenGL) in the main function.
2015-07-07 15:31:18 +02:00
Maxime Gimeno 620abb640d WIP : still on the windows OGL context 2015-07-07 15:23:15 +02:00
Maxime Gimeno ce6e05e8bd WIP : forcing windows to use the right opengl context. 2015-07-07 15:12:41 +02:00
Maxime Gimeno 47e827764a Trying to force the context to use OpenGL3_3_Core. 2015-07-07 13:42:37 +02:00
Maxime Gimeno 22dbcfaa2c Still on that SIGSEGV 2015-07-07 11:50:05 +02:00
Sébastien Loriot 84dfabf3b4 remove REQUIRED keyword for CGAL_Qt5 in demos
The handling should be with a status message
2015-07-07 11:23:46 +02:00
Maxime Gimeno 870795d79d Add some info display 2015-07-07 11:22:01 +02:00
Maxime Gimeno 8b02b4f914 Still trying to fix that SIGSEGV with glGenTextures 2015-07-07 11:18:14 +02:00
Maxime Gimeno 9c501a57d4 Merge branch 'CGAL-Qt5_support-GF' of github.com:CGAL/cgal-public-dev into CGAL-Qt5_support-GF 2015-07-07 10:59:42 +02:00
Maxime Gimeno b0d87a9236 Fix for the SIGSEGV at runtime
- initializeOpenGLFunction and GglGenTextures() have been moved to draw to be sure they have a working context.
2015-07-07 10:58:30 +02:00
Andreas Fabri 1aa3ca438e Merge branch 'CGAL-Qt5_support-GF' of github.com:CGAL/cgal-public-dev into CGAL-Qt5_support-GF 2015-07-07 10:46:55 +02:00
Andreas Fabri 795a0bfafe static_casts 2015-07-07 10:46:43 +02:00
Maxime Gimeno d442644c8d Fix for the SIGSEGV at the runtime
- draw only if the vectors of vertices aren't empty.
2015-07-07 10:43:52 +02:00
Maxime Gimeno 2c8bb3f978 changed() fixed
-  are_buffers_initialized = true instead of ==true in initialize_buffers().
2015-07-07 08:36:17 +02:00
Maxime Gimeno 85afa81ebd Changed() fixed. 2015-07-07 08:33:47 +02:00
Maxime Gimeno f5ddbfdf96 Merge branch 'CGAL-Qt5_support-GF' of github.com:CGAL/cgal-public-dev into CGAL-Qt5_support-GF 2015-07-07 08:24:24 +02:00
Maxime Gimeno 12501598bb Changed() fix and texture ID generation. 2015-07-07 08:21:56 +02:00
Laurent Rineau e5bcdc5f3e Update all CMakeLists.txt
- CMake 2.8.11 or later is now required
- GLEW is no longer used by demo/Polyhedron/
2015-07-06 18:14:34 +02:00