Commit Graph

1026 Commits

Author SHA1 Message Date
Simon Giraudot 955100bb48 Force using std::tuple 2017-07-11 11:58:54 +02:00
Simon Giraudot b3723b7e3d Document needed specialization of Output_rep 2017-07-11 11:58:53 +02:00
Simon Giraudot e01f62a09f Use Output_rep to output colors 2017-07-11 11:58:53 +02:00
Simon Giraudot 4b3a506d44 Fix detection of required C++11 features 2017-07-11 11:58:53 +02:00
Simon Giraudot a644f31cd9 Include CGAL/config.h to test macros 2017-07-11 11:58:53 +02:00
Simon Giraudot 40ae0436e1 Add C++11 conditions/tests/warnings for LAS and PLY IO functions and related files 2017-07-11 11:58:53 +02:00
Simon Giraudot d118bc7600 Add license headers 2017-07-11 11:58:52 +02:00
Simon Giraudot bd94c3005b Move USE_AS_DLL as a temporary definition around LASlib header 2017-07-11 11:58:52 +02:00
Simon Giraudot 622bb6f691 Replace LAS_property classes using a Base class with templated types 2017-07-11 11:58:51 +02:00
Jane Tournois 5fb14a891a extract #include in non-GNUC context 2017-07-11 11:58:51 +02:00
Simon Giraudot 0354290268 Fix forgotten namespaces changes 2017-07-11 11:58:51 +02:00
Simon Giraudot 32bd5265dd Use cpp11::tuple and cpp11::get instead of std::tuple and std::get 2017-07-11 11:58:51 +02:00
Simon Giraudot ce362930f0 Separate PSP functions in groups 2017-07-11 11:58:51 +02:00
Simon Giraudot 61f1276a07 Update API with review (remove PLY/LAS namespaces) 2017-07-11 11:58:50 +02:00
Simon Giraudot 237a19037b Some corrections in the manual 2017-07-11 11:58:50 +02:00
Simon Giraudot 5027c9af2c Some corrections 2017-07-11 11:58:49 +02:00
Simon Giraudot ffd7af06ef Some typo corrections 2017-07-11 11:58:49 +02:00
Simon Giraudot 4027ef814c Capitalize tag classes 2017-07-11 11:58:49 +02:00
Simon Giraudot cb6e739f0e Replace namespaces Ply/Las to PLY/LAS 2017-07-11 11:58:49 +02:00
Simon Giraudot d0b760a9e2 User and reference manuals 2017-07-11 11:58:49 +02:00
Simon Giraudot ced26cc733 First version of LAS writer 2017-07-11 11:58:49 +02:00
Simon Giraudot 952c5a4984 Some corrections 2017-07-11 11:58:48 +02:00
Simon Giraudot 9ff95550e9 Use CGAL::IO::BINARY instead of a Binary template boolean 2017-07-11 11:58:48 +02:00
Simon Giraudot 54b7ef95ea Add all possible types for PLY header 2017-07-11 11:58:48 +02:00
Simon Giraudot 9175f39c86 Use cpp11::tuple instead of std::tuple 2017-07-11 11:58:48 +02:00
Simon Giraudot 5663a6836f Change API of PLY writer similarly to PLY reader 2017-07-11 11:58:48 +02:00
Simon Giraudot c394369d29 Update doc, examples and API 2017-07-11 11:58:48 +02:00
Simon Giraudot 24b1a690f3 Use empty structs to handle attributes 2017-07-11 11:58:47 +02:00
Simon Giraudot d827e9d65d First version of LAS reader 2017-07-11 11:58:47 +02:00
Simon Giraudot 731b4c27fe Change full API of PLY reader 2017-07-11 11:58:47 +02:00
Simon Giraudot 19f09d634b Changing API of PLY reader: first steps 2017-07-11 11:58:47 +02:00
Simon Giraudot ef57586cb8 Add read_las_points.h file with skeleton of functions 2017-07-11 11:58:47 +02:00
Simon Giraudot 3ce8e9fc64 Merge branch 'Classification-GF-old' into Classification-GF 2017-03-13 07:51:54 +01:00
Laurent Rineau f60275ff28 Merge pull request #1933 from janetournois/Polyhedron_demo-fix_warnings_msvc-jtournois
Polyhedron demo : fix warnings
2017-03-02 16:55:15 +01:00
Jane Tournois 60fd6aa27a fix conversion warning for msvc 2013, 32 bits 2017-02-28 10:32:03 +01:00
Simon Giraudot b7a0c704d5 Revert changes from std::floor to cast (risk of overflow) 2017-02-27 14:27:12 +01:00
Simon Giraudot 93f5f6276e Replace set by unordered_set (speed up 70%) 2017-02-27 09:57:18 +01:00
Simon Giraudot 0d92e5f2e1 Use cast to int instead of std::round without constructing Point (speed up 25%) 2017-02-27 09:33:43 +01:00
Laurent Rineau c8530ed22d Merge pull request #1909 from sgiraudot/Point_set_processing-Wlop_bugfix_radius2-GF
WLOP Bugfix: use radius2 in parallel version too
2017-02-16 17:34:23 +01:00
Simon Giraudot 57de2171ce Bugfix: use radius2 in parallel version too 2017-02-16 16:44:26 +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
Simon Giraudot 1beb340550 Merge branch 'Point_set_3-GF-old' into Point_set_3-GF 2017-01-03 15:23:23 +01:00
Sébastien Loriot 303ee311be Merge pull request #1776 from sgiraudot/Point_set_processing-Automatic_scale_selection-GF
Automatic Scale Selection
2017-01-02 19:10:22 +01:00
Sébastien Loriot 3d637745fe Merge pull request #1633 from sgiraudot/Point_set_processing_3-Point_set_structuring-GF
Point Set Structuring
2017-01-02 19:10:14 +01:00
Simon Giraudot 3fe7678874 Warning fix: forgot to remove pragma warning pop 2017-01-02 07:53:18 +01:00
Sébastien Loriot fe5e925367 Merge pull request #1701 from afabri/Convex_hull_3-FaceGraph-GF
Convex_hull_3: Switch to FaceGraph
2016-12-30 15:14:34 +01:00
Simon Giraudot 136a4806e8 Fix warning on Windows 32bits: use boost::intmax_t for difference 2016-12-30 14:30:06 +01:00
Andreas Fabri ab78464470 Fix VC++ min/max problem 2016-12-30 10:59:07 +01:00
Simon Giraudot 5edb6e1459 Warning fix: explicit conversion from size_t to unsigned int 2016-12-30 07:38:44 +01:00
Simon Giraudot d423e5e6f8 Fix warning with explicit casts 2016-12-29 09:28:36 +01:00
Simon Giraudot 2a37790e47 Add license header 2016-12-21 13:50:18 +01:00
Simon Giraudot fb9aae74c6 Merge branch 'Point_set_processing-Automatic_scale_selection-GF-old' into Point_set_processing-Automatic_scale_selection-GF 2016-12-21 13:06:36 +01:00
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
Simon Giraudot 77779ff559 PCA estimate normals parallelized with TBB 2015-08-18 11:16:46 +02:00
Simon Giraudot 0902708bfd Removed useless namespace 2015-08-18 11:09:34 +02:00
Simon Giraudot 6f0113054a Removed useless point counter 2015-08-18 11:08:28 +02:00
Andreas Fabri 67d72675fe split packages 2015-08-17 23:46:59 +02:00
Simon Giraudot 9ae599848d Compute average spaciong parallelized with TBB 2015-08-17 12:12:35 +02:00
Simon Giraudot 8fa51591d7 Added missing tbb include 2015-08-17 12:04:38 +02:00
Simon Giraudot 82d91da597 Removed unused propertymap attribute 2015-08-17 08:29:16 +02:00
Simon Giraudot f85b38361a Jet estimate normals parallelized with TBB 2015-08-17 08:28:09 +02:00
Simon Giraudot 34cc20a034 Removed useless function 2015-08-14 17:18:47 +02:00
Simon Giraudot 734c491ac8 Jet smoothing parallelized with TBB 2015-08-14 17:12:02 +02:00
Clement Jamin 3fac8e761a Merge branch 'Point_set_shape_detection_3-cjamin-old' into Point_set_shape_detection_3-cjamin 2015-06-30 10:36:11 +02:00
Clement Jamin ad91ed562f Fix a warning 2015-06-26 19:20:31 +02:00
Sébastien Loriot 646650be81 disambiguate call to std::sqrt for MSVC10 2015-06-10 16:12:59 +02:00
Sébastien Loriot 966f0188b2 force use of std::sqrt 2015-06-08 12:06:23 +02:00
Sébastien Loriot fb2a3a2f50 accomodate update of the halfspace intersection that is now outward oriented 2015-06-05 14:43:55 +02:00
Sébastien Loriot 11a75f1e3c remove extra semi-columns 2015-06-05 14:32:04 +02:00
Sébastien Loriot c2cd87865e Merge branch 'old/gsoc2014-VCM_3-jmeyron' into gsoc2014-VCM_3-jmeyron
Conflicts:
	Installation/changes.html
	Point_set_processing_3/doc/Point_set_processing_3/PackageDescription.txt
	Point_set_processing_3/doc/Point_set_processing_3/Point_set_processing_3.txt
	Point_set_processing_3/doc/Point_set_processing_3/examples.txt
	Point_set_processing_3/examples/Point_set_processing_3/CMakeLists.txt
	Polyhedron/demo/Polyhedron/CMakeLists.txt
2015-06-04 11:27:56 +02:00
Sébastien Loriot a2f05fb8bb remove warning 2015-05-19 16:43:27 +02:00
Sébastien Loriot bdba9d2c7c do not convolve if nb neighbors <= 0 2015-05-19 16:09:41 +02:00
Sébastien Loriot 0036cc585e add a switch to use constructions in the covariance computation 2015-05-19 15:28:28 +02:00
Sébastien Loriot 115e22ec29 copy input point to be able to use the insert by range of DT 2015-05-19 15:17:53 +02:00
Sébastien Loriot 1a51d32df9 size_t -> std::size_t 2015-05-19 15:06:14 +02:00
Sébastien Loriot 48b41d8610 avoid using a map to get the index of a point and use reserve 2015-05-19 15:04:36 +02:00
Sébastien Loriot d43529c131 save the indexof the point covariance matrix to avoid a lookup in a map 2015-05-19 11:28:01 +02:00
Laurent Rineau a2ffb7d6f8 Merge pull request #80 from afabri/CGAL-array_as_property_map_example-GF
Add an example for an array as property map
2015-05-18 11:17:23 +02:00
Andreas Fabri b7f9849599 Replace CGAL::get() with CGAL::get_pointee_or_identity() and remove using get:: 2015-04-30 11:31:21 +02:00
Sébastien Loriot 82e7da19a5 forgot to init the array
this is a bug in introduced in this commit:
  |--
  |commit 8bc716abf6
  |Author: Sébastien Loriot <sebastien.loriot@cgal.org>
  |Date:   Mon Apr 20 17:59:52 2015 +0200
  |
  |    directly use CGAL::cpp11::array rather than a custom class
  |--

The initialization was done in the default construtor of the custom class
2015-04-29 23:31:21 +02:00
Sébastien Loriot 97c8a07289 remove experimental code to extract feature polylines that is not working good
update the demo plugin accordingly
2015-04-27 21:42:22 +02:00
Sébastien Loriot c9131379e1 accomodate Pierre's review 2015-04-27 14:15:30 +02:00
Andreas Fabri 688e16b26a Add an example that works with built-in array as property map; Add using ::get 2015-04-24 08:55:38 +02:00
Sébastien Loriot 200229dcec eigen foo -> eigenfoo 2015-04-24 08:52:12 +02:00
Sébastien Loriot 90530f83ce greatest -> largest 2015-04-24 08:38:40 +02:00
Sébastien Loriot 3c7c06e539 rename variables 2015-04-23 15:46:59 +02:00
Sébastien Loriot 8adf56212d overlay -> overload 2015-04-23 15:22:40 +02:00
Andreas Fabri 52382276a8 Escape the word Index with '%' 2015-04-23 12:04:35 +02:00
Sébastien Loriot 94d84aebf7 fix compilation issues 2015-04-23 10:30:02 +02:00
Sébastien Loriot 40c5fc574c make Eigen optional through the abstraction of a concept 2015-04-22 19:54:06 +02:00
Sébastien Loriot c990781b78 fix typo 2015-04-22 19:16:21 +02:00
Sébastien Loriot 6b139d10ae move the eigen traits in the CGAL dir 2015-04-22 19:13:45 +02:00
Sébastien Loriot 1e502253cd gather the usage of eigen into a traits 2015-04-22 19:08:46 +02:00
Sébastien Loriot a0d60a94de remove warnings 2015-04-22 18:43:13 +02:00
Sébastien Loriot 7fab19d2df forgot to rename a is_on_edge 2015-04-22 11:44:04 +02:00
Sébastien Loriot f098d8508c use mathjax for the matrix 2015-04-20 18:39:41 +02:00
Sébastien Loriot 27a3531bd6 rename is_on_edge 2015-04-20 18:31:12 +02:00
Sébastien Loriot e312edf41d add doc todo 2015-04-20 18:30:52 +02:00
Sébastien Loriot 8bc716abf6 directly use CGAL::cpp11::array rather than a custom class 2015-04-20 18:11:25 +02:00
Sébastien Loriot e553310940 update of is_edge and vcm_estimate_normals 2015-04-20 17:40:08 +02:00
Sébastien Loriot d7e6b7dfa8 update doc of vcm_compute 2015-04-20 17:10:40 +02:00