Commit Graph

874 Commits

Author SHA1 Message Date
Andreas Fabri 552e8f9de6 Use halfspace intersection that has better vertex coordinates (even if the topology of the CH might not be fuly correct) 2016-12-01 12:54:19 +01:00
Andreas Fabri 466995a31b Add typedef for Polyhedron_3 2016-11-30 11:56:52 +01:00
Andreas Fabri 86a252c074 min -> (min) ; std::fabs -> CGAL::abs 2016-11-30 08:11:30 +01:00
Simon Giraudot 0d0e28ea68 Bugfix: do not delegate constructor 2016-11-28 08:02:56 +01:00
Simon Giraudot 310d81864e Merge branch 'Classification-GF-old' into Classification-GF 2016-11-23 08:55:57 +01:00
Simon Giraudot 0df67413eb Fix EfficientRANSACTraits requirements 2016-10-31 15:11:55 +01:00
Simon Giraudot db30ed1a82 Update with remarks from code review 2016-10-31 12:38:18 +01:00
Simon Giraudot 94b2fe7206 Better API: fulfill at least one of the threshold 2016-10-31 08:59:57 +01:00
Simon Giraudot 2d325b958a Document property maps and add alternative 2016-10-31 07:57:35 +01:00
Simon Giraudot 0ca9eccec8 Bugfix: missing typename 2016-10-31 07:47:26 +01:00
Simon Giraudot 40e273d5af Add possibility to give custom point_map and normal_map 2016-10-28 15:30:50 +02:00
Simon Giraudot f65db046b1 Merge branch 'Point_set_processing_3-Point_set_structuring-GF-old' into Point_set_processing_3-Point_set_structuring-GF 2016-10-28 15:02:48 +02:00
Simon Giraudot b6f68584fa Change API of remove_outliers: add distance based threshold 2016-10-28 11:19:10 +02:00
Simon Giraudot 22f0b2c1f8 Merge branch 'Point_set_3-GF-old' into Point_set_3-GF 2016-10-24 15:17:38 +02:00
Simon Giraudot 886ad42a7e Add method to get raw readers 2016-10-21 10:28:39 +02:00
Laurent Rineau 223c1cf5a4 Merge pull request #1530 from lrineau/Installation-compute_dependencies-GF
Compute and fix packages dependencies
2016-10-05 13:11:04 +02:00
Laurent Rineau 50675b9734 Merge pull request #1418 from afabri/Point_set_processing-static-GF
PSP: No need for thread local storage as readonly
2016-10-05 13:02:13 +02:00
Laurent Rineau 51f5697d3d Add missing #include 2016-09-30 15:23:14 +02:00
Andreas Fabri ed472c0904 Fix package Point_set_processing_3: include headers 2016-09-30 15:22:30 +02:00
Andreas Fabri 5136f5dda4 Fix package Point_set_processing: Add #include and rename variable _N -> N 2016-09-30 15:22:27 +02:00
Simon Giraudot 65910da1a6 Merge branch 'Point_set_3-GF-old' into Point_set_3-GF 2016-09-28 11:25:36 +02:00
Simon Giraudot 3a356505c8 Merge branch 'Point_set_3-GF' into Point_set_classification-GF 2016-09-21 09:42:41 +02:00
Simon Giraudot 401fa82461 Merge branch 'Point_set_classification-GF-old-old' into Point_set_classification-GF-old 2016-09-21 09:38:27 +02:00
Simon Giraudot 7034fe00a9 Remove lines about tparam that can be omitted (this was wrong) 2016-09-14 16:36:26 +02:00
Simon Giraudot ef4b531560 Add method to get raw readers 2016-09-13 17:14:12 +02:00
Simon Giraudot 80a8d49860 Add missing const 2016-09-09 14:28:22 +02:00
Simon Giraudot 2d035b3e6c Move Point_set_3 to its own package 2016-09-09 08:30:26 +02:00
Simon Giraudot 1e985f5ecd Merge branch 'Point_set_processing_3-Point_set_3-GF-old' into Point_set_processing_3-Point_set_3-GF 2016-09-08 12:58:25 +02:00
Simon Giraudot 29535531bb Fix constness of reference 2016-09-08 12:22:55 +02:00
Simon Giraudot bb7f153763 Improve Property_pmap and Property_back_inserter 2016-09-08 10:42:25 +02:00
Andreas Fabri 80541b6405 No need for thread local storage as readonly 2016-08-31 12:00:19 +02:00
Sébastien Loriot ff1b240a37 replace assert by CGAL_assertion in CGAL code 2016-08-25 11:12:17 +02:00
Simon Giraudot ea24e3ccde Add reference to user manual in ref manual 2016-08-25 09:31:20 +02:00
Simon Giraudot a3e4a8b927 Terminology correction (value type) 2016-08-25 09:05:02 +02:00
Simon Giraudot cb7914f1ec Document output iterators 2016-08-25 08:22:58 +02:00
Simon Giraudot d94a7a6316 Unify: location -> query 2016-08-25 08:06:24 +02:00
Simon Giraudot 00381feae4 Return output iterators 2016-08-25 07:53:00 +02:00
Simon Giraudot 7c633e8acc Remove useless and ambiguous template typenames 2016-08-18 14:52:38 +02:00
Simon Giraudot 08e4f7e6c8 Minor corrections in doxygen doc 2016-08-10 16:13:10 +02:00
Simon Giraudot 0de675ff3b Add doxygen doc and useful overloads 2016-08-09 11:37:45 +02:00
Simon Giraudot e9464de8f2 A bit more optimizations 2016-08-08 17:29:17 +02:00
Simon Giraudot c1fc95dc9f Code optimization 2016-08-08 16:52:21 +02:00
Simon Giraudot e99d74aefc Minor corrections 2016-08-08 10:30:33 +02:00
Simon Giraudot cbad1f375c Increase precision by keeping track of clusters' weights 2016-08-05 15:41:06 +02:00
Simon Giraudot 5b7d0a99cb Add 2D case 2016-08-05 08:30:59 +02:00
Simon Giraudot 11d59640a9 Add possibility to look for a range scale (instead of a K scale) 2016-08-04 15:34:56 +02:00
Simon Giraudot cd0ccf07c4 New algorithm: automatic scale selection for reconstruction 2016-08-04 15:27:14 +02:00
Simon Giraudot 4a03949eec Merge branch 'Point_set_classification-GF-old' into Point_set_classification-GF 2016-07-22 11:58:16 +02:00
Sébastien Loriot 3e9796e1ed remove unused types 2016-07-18 10:26:23 +02:00
Sébastien Loriot efa3e3b654 avoid relying on reference 2016-07-15 14:29:29 +02:00
Sébastien Loriot d9fb49f2dd fix all calls to get() free function for property maps
the return type of get is reference
2016-07-13 13:53:06 +02:00
Simon Giraudot 08b0711ee4 Merge branch 'Point_set_processing_3-Point_set_structuring-GF-old' into Point_set_processing_3-Point_set_structuring-GF 2016-07-05 14:16:54 +02:00
Simon Giraudot 85a5ef28dc Merge branch 'Point_set_classification-GF-old' into Point_set_classification-GF 2016-07-05 13:49:33 +02:00
Sébastien Loriot e3a44a9d75 remove the flag CGAL_USE_PROPERTY_MAPS_API_V1 and keep only new API 2016-07-04 10:17:38 +02:00
Simon Giraudot ace0238a7c Bugfix: deactivate corners if bad intersection 2016-05-17 15:37:41 +02:00
Simon Giraudot a6b11751b1 Merge branch 'Point_set_processing_3-Point_set_structuring-GF-old' into Point_set_processing_3-Point_set_structuring-GF 2016-05-17 10:00:03 +02:00
Simon Giraudot 02fa465c39 Use const ref in wlop get() 2016-05-09 15:37:39 +02:00
Simon Giraudot 345fe1f444 Use put() operator instead of using ref of get() 2016-05-09 14:44:28 +02:00
Simon Giraudot 3955da6b6e Fix API of property maps (get and put in same class + other minor corrections) 2016-05-09 11:35:10 +02:00
Simon Giraudot 2d412823ef Use built-in std::stack instead of system stack 2016-05-06 14:02:41 +02:00
Simon Giraudot e69411533a Correction of collect_garbage (using quick sort) 2016-05-06 12:34:49 +02:00
Simon Giraudot 2d41ea7aba Simplify API and handle removed points more nicely 2016-05-04 11:12:08 +02:00
Simon Giraudot 8a5a4efd5b Remove useless includes 2016-05-03 09:40:18 +02:00
Simon Giraudot be39736905 Document Point_set_3 2016-05-03 08:38:26 +02:00
Simon Giraudot a1c8ec9c3f Merge branch 'Polyhedron_demo-Enhance_point_set_properties-GF-old-old' into Polyhedron_demo-Enhance_point_set_properties-GF-old 2016-04-25 17:35:25 +02:00
Simon Giraudot 02632a035f Add size methods 2016-04-25 17:32:05 +02:00
Simon Giraudot 85e75065e8 Minor comment corrections 2016-04-25 16:27:52 +02:00
Simon Giraudot 860a30201f Warning fix: explicit cast from pointer to bool 2016-04-25 11:14:04 +02:00
Simon Giraudot a098899693 Document Point_set_with_structure class 2016-04-22 15:24:35 +02:00
Simon Giraudot ee4d9b76ee Add missing include 2016-04-20 08:34:28 +02:00
Andreas Fabri d18db3c527 Half the time of reading float and double for VC++ 2016-04-18 16:25:09 +02:00
Simon Giraudot ecf6b1c72d Move class out of internal namespace + improve API 2016-04-12 17:31:04 +02:00
Simon Giraudot bfde005726 Minor change in comments 2016-04-12 16:16:41 +02:00
Simon Giraudot 372b2d161a Merge branch 'Point_set_processing_3-Point_set_structuring-GF-old-old' into Point_set_processing_3-Point_set_structuring-GF-old 2016-04-12 14:01:45 +02:00
Simon Giraudot 2d5a38150b Merge branch 'Point_set_processing-Extend_ply_reader-GF-old' into Point_set_processing-Extend_ply_reader-GF 2016-04-12 11:56:01 +02:00
Simon Giraudot 89742a6bd9 Update doc (precision on boolean return value) 2016-04-12 11:50:34 +02:00
Simon Giraudot bad16c8ebf Add convenience function when reading double from float input 2016-04-11 18:17:48 +02:00
Laurent Rineau d4e8c9089c Merge pull request #988 from janetournois/Point_set_processing-fix_runtime_error_bis-jtournois
(Merge branch 'releases/CGAL-4.8-branch')
2016-04-11 15:42:35 +02:00
Simon Giraudot 117ab51f97 Merge branch 'Point_set_processing-Extend_ply_reader-GF' into Point_set_classification-GF 2016-04-06 08:44:54 +02:00
Simon Giraudot e922a1c858 Complete test on property existence (testing type in addition of tag) 2016-04-06 08:37:50 +02:00
Jane Tournois 061df89383 skip the infinite vertex to avoid computing stuff on associated points 2016-04-05 14:26:20 +02:00
Laurent Rineau a67bc9822e Merge pull request #895 from afabri/CGAL-LGPL-GF
Move infrastructure files into infrastructure packages and change their license
2016-03-29 11:08:43 +02:00
Simon Giraudot afb90d30da Merge remote-tracking branch 'cgal-dev/Point_set_processing-Extend_ply_reader-GF' into Point_set_classification-GF 2016-03-24 09:40:24 +01:00
Simon Giraudot 3aa0be9de4 Bugfix: corner might have degree > 3 2016-03-22 14:36:45 +01:00
Simon Giraudot f9c1f33564 Update example with recovery of adjacency information 2016-03-21 15:37:18 +01:00
Simon Giraudot 2463827cc5 Update doc following reviews 2016-03-21 12:34:53 +01:00
Simon Giraudot 79e2af52d3 Add note about what happens if no plane was detected 2016-03-21 11:17:32 +01:00
Andreas Fabri 324daa0b78 move value_traits 2016-03-09 16:35:49 +01:00
Andreas Fabri eb90e8e3e1 Include consistently <CGAL/property_map.h> 2016-02-24 12:09:36 +01:00
Simon Giraudot e03b1cb077 Bugfix: use property map to access content on Input_type 2016-02-18 16:19:25 +01:00
Simon Giraudot fdfebe43f8 Correction of push_back and clear functions 2016-02-17 14:44:59 +01:00
Simon Giraudot d243980a73 Add useful accessors and modifiers to Point_set_3 2016-02-17 11:53:20 +01:00
Simon Giraudot 1ebe99f9de Bugfix: check multiple swaps when applying indices change 2016-02-10 10:51:32 +01:00
Simon Giraudot 3413680a23 Bugfix: if test was inverted 2016-02-10 08:09:01 +01:00
Simon Giraudot 66c9b18012 WIP: use directly Properties instead of Surface_mesh in Point_set_3 2016-02-09 14:46:05 +01:00
Simon Giraudot 8ad613cdcf Simplify Ply_read_number using templates instead of explicit specialization 2016-02-03 11:53:45 +01:00
Simon Giraudot b800b12b55 Update doc with new API 2016-02-03 11:34:44 +01:00
Sebastien Loriot 4f737d4682 Merge pull request #702 from afabri/CGAL-source-GF
Use source() not prefixed with boost::
2016-02-03 09:45:01 +01:00
Simon Giraudot 7e77304239 Simplify API of PlyInterpreter introducing a Ply_reader class 2016-02-02 18:38:29 +01:00
Andreas Fabri b126649f37 less boost:: 2016-02-01 20:12:43 +01:00
Andreas Fabri 4c9c668dc9 deal with deprecated code 2016-02-01 15:52:52 +01:00
Andreas Fabri c772598ae6 Use source() not prefixed with boost:: 2016-02-01 09:56:57 +01:00
Simon Giraudot fd2e2e6395 Update namespaces with Properties moved out of Surface_mesh 2016-01-29 15:18:37 +01:00
Simon Giraudot 9362ca342c Fix warning: uninitialized variable 2016-01-29 07:14:23 +01:00
Simon Giraudot 490b90650b Improve readability of class Point set 2016-01-28 09:59:54 +01:00
Simon Giraudot c9bf1e1d12 Remove useless debug display 2016-01-28 08:44:48 +01:00
Simon Giraudot 6d16b5cb12 Bugfix: use reference on pmap for points instead of copy 2016-01-28 07:20:47 +01:00
Simon Giraudot 490de56688 Add missing SKIP_IN_MANUAL cond 2016-01-26 12:53:57 +01:00
Simon Giraudot 50bd422d1d More on manual 2016-01-26 11:52:47 +01:00
Andreas Fabri 6af27d6033 Add a typedef 2016-01-25 17:28:27 +01:00
Simon Giraudot 3e09542e0e Replace push_pmap with generalized template version 2016-01-25 15:28:32 +01:00
Andreas Fabri 59a2acf16b Add const to & 2016-01-25 12:56:01 +01:00
Andreas Fabri 006dcf0c97 cast to get rid of warnings 2016-01-25 11:31:33 +01:00
Simon Giraudot 262c697fb5 Fix how to access points and normals 2016-01-25 10:26:37 +01:00
Simon Giraudot 28f879eddf Use iterator on indices as default 2016-01-25 09:54:49 +01:00
Simon Giraudot ba40408f67 Erase function based on indices 2016-01-25 09:44:06 +01:00
Simon Giraudot b5bbafb2f4 Add index property map + functors for back insertion and point/normal push pmap 2016-01-22 15:43:52 +01:00
Simon Giraudot fdf3857226 Separate CGAL::Point_set_3 from Point_set_3 in polyhedron demo 2016-01-21 11:41:45 +01:00
Simon Giraudot 449ce4de7e Bugfix: incorrect types 2016-01-21 11:24:11 +01:00
Simon Giraudot db06ace31d More on reference manual 2016-01-20 15:58:48 +01:00
Simon Giraudot 1fafd34d32 Simplify Ply_interpreter writing for users 2016-01-20 11:42:13 +01:00
Andreas Fabri 97134babbf remove/add #includes 2016-01-20 10:19:08 +01:00
Simon Giraudot 5bfd8ba23e Warning fix: missing static_cast 2016-01-19 18:00:37 +01:00
Simon Giraudot 24270dd358 Remove obsolete comment 2016-01-19 16:26:48 +01:00
Andreas Fabri 993abde037 Add header todo: split it in just the point set and what is needed in the Polyhedron demo 2016-01-19 15:51:12 +01:00
Andreas Fabri 2b01b1763e move Point_set_3.h 2016-01-19 15:47:29 +01:00
Simon Giraudot 44eeb83a73 Add missing include 2016-01-14 15:33:10 +01:00
Simon Giraudot a3f03a0094 Move PLY reader and PLY interpreter out of internal 2016-01-14 11:14:57 +01:00
Simon Giraudot e3f201d881 Function to use custom interpreter + error messages + better naming 2016-01-14 11:10:04 +01:00
Simon Giraudot b8a74bf30f Add test to check if interpreter is applicable to current ply file 2016-01-14 10:55:27 +01:00
Simon Giraudot 907006ef0f Externalize functor to interpret ply input 2016-01-14 10:45:59 +01:00
Simon Giraudot 3a704227ee Reorganize code, separate header/content reading 2016-01-14 08:58:45 +01:00
Simon Giraudot 5649b0dd58 Protect std::min with parenthesis (illegal token error with VS) 2016-01-14 07:57:38 +01:00
Simon Giraudot 93637a28ef Warning fixes: conversions from double to std::size_t 2016-01-13 15:17:25 +01:00
Simon Giraudot 24f98d687f Bugfix: only compute centroid if non-empty point container 2016-01-13 09:09:11 +01:00
Simon Giraudot 5bfa2fdd7f Add missing include (limits) 2016-01-13 08:03:02 +01:00
Simon Giraudot 40257fefb5 Merge branch 'Point_set_processing_3-Point_set_structuring-GF-old' into Point_set_processing_3-Point_set_structuring-GF 2016-01-12 11:53:09 +01:00
Simon Giraudot f079c7538a Disable VC++ warning 2016-01-11 14:44:31 +01:00
Simon Giraudot 3fd7a3fb81 Warning fix: use std::size_t instead of int 2016-01-11 08:38:18 +01:00
Simon Giraudot 8c55b470ee Merge branch 'Point_set_processing_3-Point_set_structuring-GF' of github.com:CGAL/cgal-dev into Point_set_processing_3-Point_set_structuring-GF 2016-01-11 07:36:54 +01:00
Simon Giraudot 3a8937259c Remove #define CGAL_PSP3_VERBOSE and add condition to warning displays 2016-01-11 07:36:09 +01:00
Andreas Fabri f22051c8d0 Point -> const Point& 2016-01-09 10:21:11 +01:00
Andreas Fabri f7c0dd44d2 fix VC++ problem with max() 2016-01-09 10:12:50 +01:00
Simon Giraudot a33f7f89a8 Use std::numeric_limits<std::size_t>::max() instead of (std::size_t)(-1) 2016-01-06 15:13:58 +01:00
Andreas Fabri d497120e5f clean Point_set_processing 2016-01-05 17:17:10 +01:00
Sébastien Loriot 81d638341a prevent internal namespace to be documented 2015-12-28 10:51:49 +01:00
Simon Giraudot d2bf68506d Speed up computation of corners 2015-12-14 11:56:42 +01:00
Simon Giraudot 5f771f6732 Bugfix: break instead of continue made some corners badly defined 2015-12-11 17:56:35 +01:00
Simon Giraudot 55b01dda63 Speed up computation of corners (early ending added) 2015-12-11 15:14:39 +01:00
Simon Giraudot 8d55bb7a58 Add a coherence_type enum for clearer result meanings 2015-12-09 11:58:19 +01:00
Simon Giraudot 7c0006c4e8 Bugfix: do not run algorithm if no plane available 2015-12-04 08:44:20 +01:00
Simon Giraudot 0cc0550067 Remove useless accessor + more specific coherence values 2015-12-03 14:06:30 +01:00
Simon Giraudot 2a9d90728b Simplify notations by cleaning point set after algorithm 2015-12-02 14:08:11 +01:00
Simon Giraudot 82a08e343c Handle freeform coherence + public access methods 2015-12-02 12:59:08 +01:00
Simon Giraudot 26477bdf37 Change name of variable 2015-12-01 15:44:41 +01:00
Simon Giraudot 04b20c04a5 Add citation of point set structuring paper 2015-12-01 15:30:54 +01:00
Simon Giraudot 9e581355a3 Beginning of work on manual 2015-12-01 15:22:34 +01:00
Simon Giraudot 7d7d1073b1 Cleaning comments and add verbose ifdef 2015-12-01 12:53:02 +01:00
Simon Giraudot 2b97a3063f Also generate normals when structuring point set 2015-11-30 11:03:36 +01:00
Simon Giraudot d3016c5185 Bugfix: deactive corner if too far away from point set 2015-11-30 08:24:37 +01:00
Simon Giraudot 7ba0d499bf Filter Delaunay coherent facet with size parameter 2015-11-27 15:37:07 +01:00
Simon Giraudot 72a83bcbca Method to get coherent Delaunay facets 2015-11-27 11:51:28 +01:00
Simon Giraudot ca129b6684 Keep track of edge/corner indices 2015-11-27 09:38:37 +01:00
Simon Giraudot 5aac533a56 Merge branch 'Point_set_processing_3-Point_set_structuring-GF-old' into Point_set_processing_3-Point_set_structuring-GF 2015-11-26 14:48:54 +01:00
Simon Giraudot 37b446fc4e Projection bugfix + empty corners bugfix + missing distance test added 2015-11-26 09:53:42 +01:00
Simon Giraudot 7fb11280e2 Corner directions + sampling refinement 2015-11-25 12:50:37 +01:00
Simon Giraudot a1da4ab306 Refine sampling (WIP) 2015-11-25 10:47:43 +01:00
Simon Giraudot 30c352f025 Bugfix: OFF reader should accept comments and empty lines 2015-11-25 09:18:15 +01:00
Simon Giraudot 1f4191bbc7 Remove debugging code portion 2015-11-13 14:28:31 +01:00
Simon Giraudot 4602910059 Bugfix: wrong indices in loop 2015-11-13 14:02:47 +01:00
Simon Giraudot 6a0ee7e673 Method to get detailed output 2015-11-13 12:36:27 +01:00
Simon Giraudot 38b6c428f3 Simplified API + function to get output points 2015-11-13 11:11:39 +01:00
Simon Giraudot a7d7efbb22 Plane resampling 2015-11-13 10:50:04 +01:00
Simon Giraudot 8b8f97217b Merging corners 2015-11-13 10:02:14 +01:00
Simon Giraudot 06814e1a8a Corner computation 2015-11-13 09:13:10 +01:00
Simon Giraudot dcf06b4a13 Creation of edge points and anchor points 2015-11-12 14:58:43 +01:00
Simon Giraudot b1d9d6b611 Computing edges 2015-11-12 10:48:05 +01:00
Simon Giraudot ee247e6f90 Bugfix: inserting *it and not *begin in loop 2015-11-12 09:51:39 +01:00
Simon Giraudot cc934e45bb WIP: finding pairs of adjacent primitives 2015-11-10 15:43:32 +01:00
Simon Giraudot 6b0cccad0b File for point set structuring + general structure 2015-11-10 10:49:47 +01:00
Simon Giraudot 99d4fc84bd Merge branch 'Point_set_processing_3-IO_ply-GF-old' into Point_set_processing_3-IO_ply-GF 2015-10-15 14:27:57 +02:00
Laurent Rineau 18cac48bae Merge pull request #367 from sgiraudot/Point_set_processing-hierarchical_clustering-sgiraudot
New point set processing algorithm: Hierarchical clustering
2015-10-14 10:54:37 +02:00
Clement Jamin 145131e2e6 Use Real_timer in PSP3 and T3 since the algorithms might be parallel 2015-10-08 15:34:40 +02:00
Simon Giraudot 09d2c9e5a4 Revert removal of hack to handle char properly (std::stream treats boost::int8_t as char) 2015-10-08 10:18:16 +02:00
Simon Giraudot 39eef61847 Add headers 2015-10-08 10:08:39 +02:00
Simon Giraudot f614ce4ea1 Remove useless includes 2015-10-08 10:08:20 +02:00
Simon Giraudot 833982a32f Use boost fixed-width integer types for portability (and remove hack for reading ASCII 'char') 2015-10-08 09:52:45 +02:00
Simon Giraudot eb430e2397 Harmonize template indentation and remove outdated header 2015-10-08 09:24:35 +02:00
Simon Giraudot 79ca962159 Merge branch 'Point_set_processing_3-IO_ply-GF-old' into Point_set_processing_3-IO_ply-GF 2015-10-08 08:48:39 +02:00
Simon Giraudot 512273ae5f Update doc and tests 2015-10-08 08:47:14 +02:00
Simon Giraudot 0916c32ded Fix numeric_limits::max bug (conflict with other max) 2015-10-08 07:59:56 +02:00
Simon Giraudot b35e34238a Bugfix: if 2 input points are equal, avoid infinite loop and terminate non-empty cluster 2015-10-07 16:00:54 +02:00
Simon Giraudot a068249ac5 Minor code cleaning/rewriting 2015-10-07 16:00:53 +02:00
Simon Giraudot e6054bfdeb Rename function and files in accordance to content 2015-10-07 16:00:53 +02:00
Simon Giraudot 20698d4dde Make the algorithm a simplification algorithm instead of a clustering one 2015-10-07 16:00:53 +02:00
Simon Giraudot 28cf05f189 Remove duplicate code (use PCA_util.h to assemble covariance matrix) 2015-10-07 16:00:52 +02:00
Simon Giraudot 648c19b6f6 Remove unused typedef warning 2015-10-07 16:00:52 +02:00
Simon Giraudot b16f7605d6 Enhancement: keep current cluster an only build one side instead of two 2015-10-07 16:00:52 +02:00
Simon Giraudot cf9b7230d8 Algorithm is faster if the plane is not constructed 2015-10-07 16:00:52 +02:00
Simon Giraudot 5df527d2f0 Correct preconditions 2015-10-07 16:00:52 +02:00
Simon Giraudot bf8d876d6d More on user manual and reference manual 2015-10-07 16:00:51 +02:00
Simon Giraudot e6c757f463 Begin working on reference manual 2015-10-07 16:00:51 +02:00
Simon Giraudot 14567ae261 Add variant with default diagonalize traits 2015-10-07 16:00:51 +02:00
Simon Giraudot fea22733ee Speed up using list instead of queue (avoid multiple copies) + bugfix 2015-10-07 16:00:51 +02:00
Simon Giraudot 5ab793531c Bugfix: if one of the two sides is empty, only treat the non-empty side 2015-10-07 16:00:51 +02:00
Simon Giraudot ed2d3167e2 Stack is faster than queue in this case 2015-10-07 16:00:51 +02:00
Simon Giraudot 7babff9f05 Optimizations (using splice for lists and reference for queue.front()) 2015-10-07 16:00:51 +02:00
Simon Giraudot eb7266a42d Cleaning/reorganizing code, use diagonalize_traits and add variants with default parameters and template deduction 2015-10-07 16:00:50 +02:00
Simon Giraudot e8dd34cb21 Implemented the efficient computation of the second centroid.
The hierarchical clustering algorithm gets about 15% faster
(on test Eglise Fontaine, from 91s to 76s).
2015-10-07 16:00:50 +02:00
Simon Giraudot ee1e7ee714 Added the alternative implementation of hierarchical clustering using
the Eigen library.

For now, both implementations are available (switchable with a
2015-10-07 16:00:50 +02:00
Pierre Alliez 00fad8756a Add comments in hierarchical clustering and fix indentations 2015-10-07 16:00:50 +02:00
Simon Giraudot b87d1bbc3e Very first version of the hierarchical clustering added (work in
progress).

It contains somes functions that may be more relevant in some other
package :
* 2 functions to compute the covariance matrix of a 3D point set
* 2 functions to split a point set according to a plane

Also the function of the actual hierachical clustering algorithm.
2015-10-07 16:00:50 +02:00
Sebastien Loriot 62644a62aa Merge pull request #318 from sgiraudot/CGAL-Solver-package-GF
Regroup solver interface in Solver_package
2015-10-07 15:54:48 +02:00
Simon Giraudot 30323c816a Write PLY headers 2015-10-07 15:34:08 +02:00
Simon Giraudot 1e068b0844 Skeleton of write_ply_points.h file 2015-10-07 15:12:19 +02:00
Simon Giraudot 0004aed5bc Bug fix: explicitly ask an integer when reading char/uchar from stream 2015-10-07 15:06:08 +02:00
Simon Giraudot a8bea5e6d9 Handle detailed types (e.g. int16 instead of short) 2015-10-07 14:19:26 +02:00
Simon Giraudot f732c100c3 Fix warnings and use union instead of reinterpret_cast 2015-10-07 14:08:03 +02:00
Simon Giraudot c2e38b72a6 Merge branch 'Point_set_processing_3-IO_ply-GF-old' into Point_set_processing_3-IO_ply-GF 2015-10-07 13:52:06 +02:00
Simon Giraudot fddcb24197 Polyhedron demo ply_to_xyz reader 2015-10-07 13:50:57 +02:00
Simon Giraudot 850f28ed07 Ply reader for point sets 2015-10-07 12:10:29 +02:00
Simon Giraudot 867a731d48 WIP: processing PLY header 2015-10-06 15:36:35 +02:00
Simon Giraudot ac3dbad721 Skeleton of new read_ply_points.h file 2015-10-06 15:01:50 +02:00
Simon Giraudot ac591cf257 Merge branch 'Point_set_processing_3-TBB-GF-old' into Point_set_processing_3-TBB-GF 2015-09-29 13:50:17 +02:00
Sébastien Loriot da650cbd1c Merge branch 'old/CGAL-Solver-packages-GF' into CGAL-Solver-package-GF 2015-09-26 15:47:54 +02:00
Simon Giraudot 13e4a76cd8 Merge branch 'Point_set_processing_3-TBB-GF-old' into Point_set_processing_3-TBB-GF 2015-09-24 12:45:58 +02:00
Sébastien Loriot cdfc7f1c31 Merge branch 'old/CGAL-split_packages-GF' into CGAL-split_packages-GF 2015-09-23 10:08:41 +02:00
Sébastien Loriot 68aa21292a Merge branch 'old/CGAL-Solver-packages-GF' into CGAL-Solver-package-GF 2015-09-21 07:34:18 +02:00
Simon Giraudot a4f242a0cc Replace Internal_diagonalize_traits by Diagonalize_traits + corrections in Concepts/Models 2015-09-16 11:41:26 +02:00
Andreas Fabri 58b7dc7319 fix typo 2015-09-16 09:29:09 +02:00
Simon Giraudot b840307161 Generate compile-time error if Parallel_tag is used without TBB 2015-09-08 15:31:28 +02:00
Simon Giraudot 2c6e6e5e57 Update Reference Manual with additional template parameter 2015-09-08 12:38:34 +02:00
Simon Giraudot 935956a10f Merge branch 'Point_set_processing_3-TBB-GF-old' into Point_set_processing_3-TBB-GF 2015-09-08 11:11:07 +02:00
Simon Giraudot 0afe0249f9 Bugfix: badly placed #ifdef caused bug if TBB was not used 2015-09-08 10:42:47 +02:00
Simon Giraudot 63f77a05a5 Merge branch 'CGAL-Solver-package-GF-old' into CGAL-Solver-package-GF 2015-09-07 10:01:12 +02:00
Simon Giraudot 136de97318 Bugfix: DiagonalizeTraits now really returns largest eigenvalue + inversion of parameters in voronoi_covariance is corrected. 2015-09-04 16:01:46 +02:00
Simon Giraudot dd271ecca5 Revert "Bugfix: function extract_largest_(...) is now called extract_smallest_(...) to be consistent with what is actually extracted."
This reverts commit 8410aab93c.
2015-09-04 15:13:57 +02:00
Simon Giraudot 8410aab93c Bugfix: function extract_largest_(...) is now called extract_smallest_(...) to be consistent with what is actually extracted. 2015-09-03 18:55:19 +02:00
Laurent Rineau 9bae0c0e63 Merge pull request #270 from sgiraudot/Polyhedron_demo-WLOP_plugin-sgiraudot
Polyhedron demo point set processing plugins
2015-09-03 17:22:54 +02:00
Simon Giraudot 26aab5fc5c Use default diagonalization interface for VCM functions 2015-09-03 14:36:47 +02:00
Simon Giraudot 8f98d9dc0a Fixed indentation issues 2015-08-31 10:09:54 +02:00
Simon Giraudot 28e5432c16 Renaming 'VCM' to 'diagonalize' 2015-08-31 08:30:01 +02:00
Sébastien Loriot aed4e8b2fc fix doc typos 2015-08-28 15:36:29 +02:00
Simon Giraudot bd7ea48403 Propagating API change to Point_set_processing package (vcm_estimate_*) 2015-08-26 14:01:47 +02:00
Simon Giraudot 146378dd38 Fix compilation errors if TBB is missing (missing #ifdef in the files) 2015-08-24 10:22:54 +02:00
Simon Giraudot abf9063561 Move Eigen_vcm_traits.h to Solver package 2015-08-20 16:43:58 +02:00
Simon Giraudot 05e0965655 Fix warnings of possible loss of data converting std::size_t to unsigned int 2015-08-19 15:22:17 +02:00
Simon Giraudot bf70be5a52 Update function calls with concurrency tag 2015-08-19 11:59:22 +02:00
Simon Giraudot 84528727a1 Fix warning unused variable 2015-08-18 11:50:26 +02:00
Simon Giraudot 24c89aaf00 Added missing TBB includes 2015-08-18 11:49:25 +02:00