Commit Graph

455 Commits

Author SHA1 Message Date
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 f684295bde Update remove_outlier example with change of API 2016-10-28 11:19:29 +02:00
Sébastien Loriot 6b338eeb1f improve the name of projects in cmake scripts of examples 2016-09-08 00:02:55 +02:00
Simon Giraudot 307a64d45a Separate 2D and 3D examples and improve these examples 2016-08-18 14:53:45 +02:00
Simon Giraudot ba1812642b Update example 2016-08-10 16:12:36 +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
Sébastien Loriot 7f3772a50b replace the usage of raw pointer as property map
It was deprecated in boost 1.55
http://www.boost.org/users/history/version_1_55_0.html
2016-07-13 13:53:00 +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 fe94837cb3 Update examples with change of name and API of structuring class 2016-04-12 17:31:22 +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 83290fda5d Corrections of documentation (based on small feature review) 2016-04-11 17:24:33 +02:00
Simon Giraudot e922a1c858 Complete test on property existence (testing type in addition of tag) 2016-04-06 08:37:50 +02:00
Simon Giraudot acf69d320c Minor corrections and improvements on example 2016-03-22 14:36:22 +01:00
Simon Giraudot 6461315e67 Add mechanism to recover points with adjacency information 2016-03-21 15:36:59 +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
Simon Giraudot 7e77304239 Simplify API of PlyInterpreter introducing a Ply_reader class 2016-02-02 18:38:29 +01:00
Simon Giraudot 9362ca342c Fix warning: uninitialized variable 2016-01-29 07:14:23 +01:00
Simon Giraudot 1068067ea1 Update example with simpler interpreter API 2016-01-20 12:14:22 +01:00
Andreas Fabri 97134babbf remove/add #includes 2016-01-20 10:19:08 +01:00
Simon Giraudot 510e10fce3 Comments on the new example 2016-01-14 12:04:15 +01:00
Simon Giraudot db918de302 Add new example to read PLY file with colors 2016-01-14 11:58:55 +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
Andreas Fabri d497120e5f clean Point_set_processing 2016-01-05 17:17:10 +01:00
Simon Giraudot 3825c8cb41 Add missing examples to custom cgal_test_with_cmake 2016-01-05 10:38:08 +01:00
Simon Giraudot 0314c084ee Correct parameters selection 2015-12-02 10:48:24 +01:00
Simon Giraudot 0a182eeb79 Point set structuring example 2015-12-01 15:45:12 +01:00
Simon Giraudot 38b6c428f3 Simplified API + function to get output points 2015-11-13 11:11:39 +01:00
Simon Giraudot b1d9d6b611 Computing edges 2015-11-12 10:48:05 +01:00
Simon Giraudot baa54120a4 Add data for the new example 2015-11-10 15:21:42 +01:00
Simon Giraudot 61192d7b9d Point set structuring example 2015-11-10 10:50:08 +01:00
Simon Giraudot e028ff8955 Update doc and example 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 c965754d00 Update example of hierarchical clustering 2015-10-07 16:00:52 +02:00
Simon Giraudot 0841e423a2 Add example for hierarchical clustering 2015-10-07 16:00:51 +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 95682d11e0 Update PSP examples with concurrency template 2015-09-08 10:44:36 +02:00
Sébastien Loriot 50595505c4 Merge branch 'Fix_warnings-GF'
Fixes warnings in various packages

Successfully tested in CGAL-4.7-Ic-87
Approved by the release Manager
2015-07-17 14:21:21 +02:00
Sébastien Loriot d26e112cf4 fix warnings 2015-07-15 16:57:38 +02:00
Laurent Rineau f9917c487e CMake 2.8.11 2015-07-13 12:36:43 +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 a214819b8b write points on feature in a file 2015-06-02 09:40:07 +02:00
Andreas Fabri fcfd9a7fa1 Add the example in the user manual, examples/, and examples.txt 2015-05-11 20:53:51 +02:00
Andreas Fabri 754795d560 remove example that revealed the problem 2015-05-11 20:44:50 +02:00
Andreas Fabri b8d9925cbc remove target that does not exist 2015-04-30 10:24:53 +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 27a3531bd6 rename is_on_edge 2015-04-20 18:31:12 +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 f3d774e005 document the function to know whether a point is on a sharp feature
and hide the function trying to reconstruct edges
2015-04-20 17:05:42 +02:00
Shihao Wu ad20bfab93 CGAL::Bbox_3 might behave differently in Debug/Release mode. 2015-02-19 15:41:37 +02:00
Shihao Wu 6fc6e1ef42 Used another way to prevent the neighbor_size from being set too small in EAR.
If the value given by user is smaller than the default value,
the function will use the default value instead.
2015-02-19 15:07:09 +02:00
Sébastien Loriot c3c749ef0b Merge branch 'Point_set_processing-IO-GF'
improve doc and IO in examples

  Tested in CGAL-4.6-Ic-126
  Approved by the release manager

Conflicts:
	Point_set_processing_3/examples/Point_set_processing_3/wlop_simplify_and_regularize_point_set_example.cpp
2015-02-16 10:42:27 +01:00
Sébastien Loriot 66c8fe04de revert part of ef6488a7 that was supposed to be only a typo fix
|---------------------------------------------------
  |commit ef6488a7c6
  |Author: Andreas Fabri <andreas.fabri@geometryfactory.com>
  |Date:   Thu Feb 5 09:40:06 2015 +0100
  |
  |  fix typo
  |
  |  Approved by the release manager (SL interim)
  |--------------------------------------------------
2015-02-11 09:29:14 +01:00
Andreas Fabri 1e99228829 improve wording concerning value_type 2015-02-05 14:53:01 +01:00
Andreas Fabri f1bd6f1627 All examples now read from argv if argc!= 1 2015-02-05 14:29:20 +01:00
Andreas Fabri ef6488a7c6 fix typo
Approved by the release manager (SL interim)
2015-02-05 09:40:06 +01:00
Clement Jamin ecda2555ab Merge branch 'gsoc2013-Point_set_processing_3-point_set_consolidation-swu-old' into gsoc2013-Point_set_processing_3-point_set_consolidation-swu 2015-01-09 15:55:40 +01:00
Clement Jamin fe47edc68a Faster example 2015-01-09 15:51:09 +01:00
Clement Jamin c853129ac8 Reduce the number of points (the execution is too long for the testsuite) 2015-01-08 17:52:18 +01:00
Sébastien Loriot 652be47d1f remove conditional compilation that is no longer needed 2015-01-07 15:50:36 +01:00
Clement Jamin 7be3c2cbd2 Merge branch 'gsoc2013-Point_set_processing_3-point_set_consolidation-swu-old' into gsoc2013-Point_set_processing_3-point_set_consolidation-swu 2015-01-06 18:34:43 +01:00
Shihao Wu 1280fb4c67 Merge branch 'gsoc2013-Point_set_processing_3-point_set_consolidation-swu' of ssh://scm.cgal.org/var/git/cgal-gsoc into gsoc2013-Point_set_processing_3-point_set_consolidation-swu 2014-12-19 21:13:08 +08:00
Clement Jamin b85087260f Add the new examples in the custom cgal_test_with_cmake file 2014-12-19 13:29:29 +01:00
Shihao Wu 495c2e5af7 For WLOP, removed the saint data, selected better parameters. 2014-12-19 19:12:08 +08:00
Shihao Wu e6b640528a use sphere_20k for WLOP's example 2014-12-19 18:29:56 +08:00
Shihao Wu d2af2f3677 Merge branch 'gsoc2013-Point_set_processing_3-point_set_consolidation-swu' of ssh://scm.cgal.org/var/git/cgal-gsoc into gsoc2013-Point_set_processing_3-point_set_consolidation-swu 2014-12-19 18:26:24 +08:00
Shihao Wu 978f9602e3 use sphere_20k for example for WLOP 2014-12-19 18:26:06 +08:00
Clement Jamin 785f2fda7e Concurrency should be OFF by default 2014-12-17 14:46:36 +01:00
Sébastien Loriot 9bc80b47f2 reduce the number of points to add to speed up the runtime 2014-12-16 10:57:00 +01:00
Clement Jamin 766db429aa Added the ability to activate concurrency through environment variable 2014-12-15 11:03:02 +01:00
Clement Jamin c91979f236 Remove non-portable code 2014-12-15 09:57:28 +01:00
Shihao Wu b5e7de47c8 Change the radius estimation method in WLOP, in order to get good result for the sphere input. 2014-12-14 19:56:59 +08:00
Clement Jamin 170016ffaf Replace the saint_jean example by the sphere 2014-12-14 12:25:19 +01:00
Sébastien Loriot 8596cc316d update filename 2014-12-12 12:05:54 +01:00
Sébastien Loriot 6fc84fb659 remove warnings 2014-12-12 11:53:25 +01:00
Shihao Wu c6d5186493 cleaned up the code and tested three new examples. 2014-12-11 23:00:22 +08:00
Shihao Wu 210fe526b8 addressed Quentin's comments 2014-11-10 02:46:20 +08:00
Sébastien Loriot e5b72ac5b3 Merge branch 'old/gsoc2014-VCM_3-jmeyron' into gsoc2014-VCM_3-jmeyron
Conflicts:
	Arrangement_on_surface_2/examples/Arrangement_on_surface_2/bgl_primal_adapter.cpp
	BGL/examples/BGL_arrangement_2/primal.cpp
	BGL/include/CGAL/boost/graph/dijkstra_shortest_paths.hpp
	Installation/changes.html
	Point_set_processing_3/examples/Point_set_processing_3/CMakeLists.txt
2014-11-05 16:11:35 +01:00
Shihao Wu 9347ece127 simplified wlop example 2014-11-05 19:01:31 +08:00
Shihao Wu c5f3ba1f47 EPIC are replaced with Simple_cartesian. 2014-09-22 04:21:38 +08:00
Jocelyn MEYRON af3fd69dd1 divide the vcm_estimate_edges into a vcm_compute and construct_mst 2014-09-15 15:10:50 +02:00
Jocelyn MEYRON 663e41741b doc for vcm normals and feature edges estimation 2014-08-14 17:35:25 +02:00
Clement Jamin 7efbf6ca36 Use lowercase for const filename variables 2014-07-24 16:51:22 +02:00
Sébastien Loriot bc8e1f399d workaround a bug in dijsktra algorithm in boost 1.54 affecting normal estimation 2014-07-19 12:20:29 +02:00
Sébastien Loriot 6ed1ba826e Merge branch 'to-be-tested/Stop_testing_taucs-sloriot'
Taucs, Lapack and Blas supports are no longer tested

Approved by the Release Manager
Tested in CGAL-4.5-Ic-97

Conflicts:
	Polyhedron/demo/Polyhedron/CMakeLists.txt
2014-07-16 20:19:21 +02:00
Jocelyn MEYRON e6b4c7664a VCM normal estimation plugin 2014-07-15 14:53:51 +02:00
Laurent Rineau 84fcae4788 Workaround the incompatibility with Boost 1.54 2014-07-11 12:04:42 +02:00
Jocelyn MEYRON a46ebb1d94 begin working on edges detection + refactoring normal estimation 2014-07-09 17:28:22 +02:00
Jocelyn MEYRON c0c481571c Corrections on the documentation + add test if origin inside the
polyhedron during in halfspaces_intersection
2014-07-04 18:14:11 +02:00
Jocelyn MEYRON f26c973028 Add VCM normal estimation to the Point_set_processing_3 normal
estimation demo

Doc and tests must be made now
2014-07-02 10:23:37 +02:00
Sébastien Loriot aeb094e4cc more Taucs removal 2014-06-25 15:58:37 +02:00
Shihao Wu 3c7637d3a0 Double check and did more refinement for the 1st round review of three new functions. 2014-06-21 22:19:00 +08:00
Shihao Wu 07686efadd Added OUTPUT_FILENAME.c_str().
Added (Please cite the paper if you use this function).
2014-06-21 21:31:10 +08:00
Shihao Wu b8c47eac1a Refined the documentation. 2014-06-21 21:06:21 +08:00
Shihao Wu 3340ce305b Updated documentations according to Qmerigot's review about reference manual 2014-06-21 18:14:22 +08:00
Shihao Wu 7118ac8fe1 Updated documentations according to Qmerigot's review about user manual 2014-06-21 17:29:26 +08:00
Shihao Wu bc3674eef4 refined the doc of WLOP 2014-06-12 18:34:37 +08:00
Shihao Wu 860b476ac2 sharp_sigma -> sharp_angle 2014-06-09 18:35:39 +08:00
Shihao Wu d778282040 'compute density' -> 'require_uniform_sampling' 2014-06-09 16:37:56 +08:00
Shihao Wu 0aa78d6202 added INPUT_FILENAME 2014-06-09 15:26:33 +08:00
Shihao Wu 564d23607b "need_compute_density" -> "compute_density" 2014-06-09 15:13:45 +08:00
Shihao Wu dd422d09ab removed "#include <CGAL/tags.h>
#include <CGAL/Simple_cartesian.h>"
2014-06-09 15:04:32 +08:00
Shihao Wu 08cd36bcdb retained to the submission state.. 2014-03-27 18:28:49 +08:00
Shihao Wu b1c0196fc6 changed the performance figure
note: this version can test the parallel performance
2014-03-27 18:23:27 +08:00
Shihao Wu 16768cbb10 updated the parallel_WLOP_performance chart 2014-03-27 10:55:15 +08:00
Shihao Wu be4b8e817c Fixed a bug about need_compute_density, and changed its description in doc.
Note: When "need_compute_density = false", it won't compute density weights for original points.
      however, it still compute density weights for sample points.
2014-03-26 14:55:21 +08:00
Shihao Wu cc6cdf5a1a replace "way 1" and "way 2" as "with default parameters" and "with all parameters" respectively. 2014-03-26 10:11:33 +08:00
Pierre Alliez 8fcdcef4a4 few changes in doc
one comment in WLOP example
2014-03-25 13:06:00 +01:00
Shihao Wu c1671dd9e6 minor changes, removed some redundancy words 2014-03-19 11:02:31 +08:00
Shihao Wu 05911d932f added 2 PointPMap: PointPMapIn and PointPMapOut 2014-03-19 10:15:07 +08:00
Shihao Wu 3bace9f01e *remove unused codes for sample points 2014-03-17 15:47:41 +08:00
Shihao Wu 108b3ba790 * remove the timers and memory sizers from examples 2014-03-17 15:38:22 +08:00
Shihao Wu 866452aa14 * remove 'system("pause")' 2014-03-17 15:21:50 +08:00
Shihao Wu 575c3521f9 * restore grid_simplification_example.cpp to its original state. 2014-03-17 15:13:07 +08:00
Clement Jamin 143b6a6419 Merge branch 'gsoc2013-Point_set_processing_3-point_set_consolidation-swu-old' into gsoc2013-Point_set_processing_3-point_set_consolidation-swu
Conflicts:
	Point_set_processing_3/test/Point_set_processing_3/CMakeLists.txt
2014-02-27 13:57:34 +01:00
Shihao Wu 3d8e34e606 tiny modification 2014-02-24 18:31:58 +08:00
Shihao Wu 99220af199 confirmed wlop_simplify_and_regularize_point_set_example 2014-02-24 17:36:00 +08:00
Shihao Wu 7555d1ba9a confirmed edge_aware_upsampl_point_set_example 2014-02-24 17:03:28 +08:00
Shihao Wu 91e0fbf60c confirm the bilateral_smooth_point_set_example 2014-02-24 16:43:20 +08:00
Shihao Wu 3b520c1405 set need_compute_density default to 'false'.
However, we still compute sample densities inside the function.
2013-09-25 10:04:48 +08:00
Shihao Wu 1f5c21ec14 a small bug 2013-09-25 00:24:42 +08:00
Shihao Wu 0a0d49b535 abandoned compute orignal density weights to save time 2013-09-25 00:17:21 +08:00
Shihao Wu 2e70b4fa97 minor change, but found the code slower 2013-09-24 22:51:20 +08:00
Shihao Wu 32f3ebcf6a change way of call AABB-wlop 2013-09-24 14:27:17 +08:00
Shihao Wu f89b18a7a7 code-cleanups 2013-09-24 13:36:36 +08:00
Shihao Wu 48706aa565 unified the function call 2013-09-24 13:24:23 +08:00
Shihao Wu 234efb6812 back to version of parallelization, and the both sequential and parallel works 2013-09-24 12:43:57 +08:00
Shihao Wu fd3df5ad8e changes on ways of function call 2013-09-24 11:28:10 +08:00
Shihao Wu 32640b6f9c change parameters of WLop_AABB_tree 2013-09-24 00:06:28 +08:00
Shihao Wu 7c72370269 Back to bebug aabb slow problem 2013-09-19 23:35:24 +08:00
Shihao Wu ed5c9e69b9 Followed Clément's suggestion:
Another thing: it's better to use
  std::vector<Point> original_points;   +
original_points.reserve(nb_points_original)   +
original_points.push_back
than
  std::vector<Point> original_points(nb_points_original);   +   *it = blabla;
because it avoids initializing member variables twice.
2013-09-19 23:09:46 +08:00
Shihao Wu 43b70bd3e3 finished AABB in regularize_and_simplify_point_set.h 2013-09-19 22:12:42 +08:00
Shihao Wu d33724369e successfully used AABB in compute_average_term function 2013-09-18 16:25:45 +08:00
Shihao Wu bdd71f289f Added AABB test codes, can't get neighborhood now 2013-09-18 00:45:55 +08:00
Shihao Wu 6c87a6c09d use different ways to call function 2013-09-13 16:17:18 +08:00
Andreas Fabri 3d6ceb79bb Add newline at end of file 2013-09-12 14:12:12 +02:00
Shihao Wu 6b1abd547b add Concurrentcy_tag to wlop example 2013-08-31 23:17:13 +08:00
Shihao Wu ee86560649 Improved readability of bilateral_smooth.. 2013-08-30 22:58:15 +08:00
Shihao Wu 4da24d2c1c added wlop default parameters, estimate default neighborhood radius 2013-08-28 10:45:42 +08:00
Shihao Wu faf1e46ac3 An example of std::vector "swap" problem for Clément to try 2013-08-27 10:54:19 +08:00
Shihao Wu 6d42c0ef9c refined codes, updated documentations, added tests 2013-08-27 09:49:22 +08:00
Shihao Wu 8908fd4d85 try to fix git problem 2013-08-27 09:43:35 +08:00
Shihao Wu 58d90edde9 rename example files 2013-07-31 17:43:01 +08:00
Shihao Wu f1c15e1678 refined the code for wlop_regularize_and_simplify points
mainly try to replace index with iterator
2013-07-31 17:39:07 +08:00
Shihao Wu fd81a098f8 finished large data experiment 2013-07-30 13:56:05 +08:00
Clement Jamin 8d49452482 Improved example (input filename) 2013-07-26 18:26:15 +02:00
Clement Jamin 62a4472c6c Corrections in the example so that it can be built 2013-07-24 20:13:50 +02:00
Clement Jamin 3394a8c39a Corrected the position of the TBB-related code in CMakeLists.txt 2013-07-24 20:12:51 +02:00
Shihao Wu 296f51c320 change function name to: edge_aware_upsample_point_set
Added three .h files with new names
2013-07-19 22:13:58 +08:00
Shihao Wu 894fcbe3d2 change function name to: bilateral_smooth_point_set 2013-07-19 21:59:44 +08:00
Shihao Wu 884f6306f6 change function name to: wlop_regularize_and_simplify_point_set_using_rich_grid 2013-07-19 21:51:24 +08:00
Shihao Wu 5e8d302f89 added tbb to CMakeLists.txt
tried to add Concurrency_tag but have compile error..
2013-07-17 00:47:02 +08:00
Shihao Wu bed181be5c added a sphere test data, the upsample codes works well on it too 2013-07-14 23:41:15 +08:00
Shihao Wu d8ea879471 added predict neighbor size and threshold size.
this version work well on the example
2013-07-14 20:24:20 +08:00
Shihao Wu c9150d9854 consistency with my original old code.
I found the result is not perfect, so I checked carefully with the old code.

I tested some data with exact parameters.

The result is almost the same, the difference is cased by numerical problem.

So I commit this version for record.
2013-07-14 13:52:24 +08:00
Shihao Wu 34b61f3471 finished the first version of upsample_point_set
the rest is how to speed up by estimating radius

and make it more easy for parallelization
2013-07-12 01:01:18 +08:00
Shihao Wu 43bb5bd574 now back_inserter works, the pipeline of upsample have set up 2013-07-11 00:17:24 +08:00
Shihao Wu e1e6df6575 added the key part of upsample_point_set
considering how to use back_inserter
2013-07-10 22:32:16 +08:00
Shihao Wu 9de9f54ebd Started coding for upsample_point_set.
added two new files and one new test data.
2013-07-10 00:20:52 +08:00
Shihao Wu f15ba84402 add a new test data "fin90_with_PCA_normals.xyz" 2013-07-09 22:48:42 +08:00
Shihao Wu b370deff80 added timing and sharpness_sigma parameter 2013-07-09 19:20:44 +08:00
Shihao Wu b8b2379c09 update formating for denoise_point_set 2013-07-09 18:54:20 +08:00
Shihao Wu 863462e10a modified denoise_point_set for new PROPERTY_MAPS, and fixed a bug in kd-tree
now the example can run and I added a new test data "sphere_20k_normal.xyz"
2013-07-09 18:44:17 +08:00
Shihao Wu 091f17b3dd working on code formating and get some wired errors
Maybe I'm working in a wrong branch?
2013-07-08 22:39:47 +08:00
Shihao Wu 1ececf54a1 limit each line to 80 characters. 2013-07-08 17:09:50 +08:00
Shihao Wu 273eb39cd2 Added Rich_grid.h file
Modified regularize_and_simplify_point_set_using_balltree for Rich_grid

Used CGAL::Timer instead
2013-07-08 16:02:15 +08:00
Clement Jamin 14fdaa57da Separate function calls 2013-07-05 10:44:34 +02:00
Clement Jamin 6b6c8b1d60 Using "resize" seems more meaningful here 2013-07-05 10:29:53 +02:00
Clement Jamin 6c44ab3306 Merge branch 'gsoc2013-Point_set_processing_3-point_set_consolidation-swu-old' into gsoc2013-Point_set_processing_3-point_set_consolidation-swu 2013-07-05 08:58:45 +01:00
Shihao Wu b836e36808 added denoise_point_set function/files and example
also refine the code of wlop
2013-07-05 00:28:39 +08:00
Shihao Wu eeb5350fce Added a new file/function for Grid Tree implementation
The new file/function name is "regularize_and_simplify_point_set_using_balltree"
2013-07-04 00:17:51 +08:00
Shihao Wu c4d7e2d39b Add guess KNN trick
To speed up compute_average_term
I guess the suitable KNN size to reduce the redundant visit.
2013-06-28 00:51:16 +08:00
Shihao Wu 03054d786f <Fixed the bug of density function>
<Now the linear version of WLOP is finished
,next is try parallel>
2013-06-25 21:53:15 +08:00
Shihao Wu 6f1c8567e5 <Finished density weight function> 2013-06-25 00:18:04 +08:00
Shihao Wu 93574ff377 <Fix a huge bug>
<Now is the real LOP,
Ready to add density weight>
2013-06-21 16:15:41 +08:00
Shihao Wu d36371a334 <Finished repulsion term>
<Now we can see some effect of
L2 LOP>
2013-06-20 23:16:28 +08:00
Shihao Wu 3f9a760553 <Just a bit change> 2013-06-19 22:09:01 +08:00
Shihao Wu 45b11a0b57 <Added new functions>
<Added KDD neighborhood searching
 Added compute_average_term>
2013-06-19 20:15:05 +08:00
Shihao Wu 0074af2b90 Add a new function regularize_and_simplify_point_set(). doing nothing but randomly copy sampled points inside the function space.
Than I want to update these sampled points position using WLOP algorithm.

At last, I will copy back the modified points to the original points as output.
2013-06-18 23:03:28 +08:00
Sébastien Loriot 0e5d524577 CGAL::Typed_identity_property_map_by_reference has been renamed, update missed examples 2013-06-05 09:02:31 +02:00
Sébastien Loriot 677bc07a4d rename Typed_identity_property_map_by_reference to Identity_property_map
and update its documentation
2013-05-13 11:38:07 +02:00
Sébastien Loriot 17dd21def5 Merge branch 'First_of_pair_property_map-new_version-iyaz-old' into First_of_pair_property_map-new_version-iyaz
Conflicts:
	Point_set_processing_3/examples/Point_set_processing_3/property_map.cpp
	Point_set_processing_3/include/CGAL/IO/read_off_points.h
	Point_set_processing_3/include/CGAL/IO/read_xyz_points.h
	Point_set_processing_3/include/CGAL/IO/write_off_points.h
	Point_set_processing_3/include/CGAL/IO/write_xyz_points.h
	Point_set_processing_3/include/CGAL/Point_with_normal_3.h
	Point_set_processing_3/include/CGAL/improved_jet_smooth_point_set.h
	Point_set_processing_3/include/CGAL/improved_laplacian_smooth_point_set.h
	Point_set_processing_3/include/CGAL/jet_estimate_normals.h
	Point_set_processing_3/include/CGAL/jet_smooth_point_set.h
	Point_set_processing_3/include/CGAL/pca_estimate_normals.h
	Point_set_processing_3/include/CGAL/pca_smooth_point_set.h
2013-05-06 15:57:36 +02:00
Sébastien Loriot 1284566438 Bug-fix: a get is not guarantee to return a reference. put should be used ...
... for overwritting the value
2013-05-03 09:43:20 +02:00
iyaz 041d702089 Fix indentation 2013-04-30 18:28:39 +03:00
iyaz 0af0077757 Update examples: remove CGAL_USE_OLD_PAIR_PROPERTY_MAPS related parts 2013-04-30 17:14:44 +03:00
iyaz 9cf096b92e Examples updated 2013-04-30 02:27:47 +03:00
Sébastien Loriot d62c514d18 remove a swap call for resizing a vector that is useless for a list 2013-03-26 09:46:55 +01:00
Andreas Fabri 3c209bc60a remove an unused parameter 2013-02-26 17:11:08 +01:00
Philipp Möller 1adf441b18 Convert all CRLF files to LF 2012-12-03 18:44:24 +01:00
Laurent Rineau 2db4effa7e CMake: Fix the handling of cmake_policy
That is a followup-to my commit last year:
  | ------------------------------------------------------------------------
  | r63198 | lrineau | 2011-04-28 19:45:22 +0200 (Thu, 28 Apr 2011) | 5 lines
  | 
  | Try to fix my last revision about cmake_policy, with CMake-2.6.x
  | 
  | CMake gives an error if one tries to use cmake_policy(VERSION x.y.z) if
  | x.y.z is greater than the current CMake version.
  | 
  | ------------------------------------------------------------------------

The following check:
  if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" VERSION_GREATER 2.6)
is useless just after a call to:
 cmake_minimum_required(VERSION 2.6.2)



The script used to fix that was:


#!/usr/bin/env perl

$replacement=<<'END';
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_GREATER 2.8.3)
  cmake_policy(VERSION 2.8.4)
else()
  cmake_policy(VERSION 2.6)
endif()
END

while(<>) {
    if(/if\("\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}" VERSION_GREATER 2.6\)/) {
        while(<>) {
            if(/^endif\(\)/) {
                print "$replacement";
                while(<>) {
                    print;
                }
                exit 0
            }
        }
    }
    print;
}
2012-08-22 12:35:03 +00:00
Sébastien Loriot e702f20986 Eigen 3-1 is out.
Require Eigen 3.1.0 in CMake scripts.
2012-06-27 12:38:32 +00:00
Sébastien Loriot 2865113c8c Point_set_processing test/example also uses lapack 2012-01-16 15:15:34 +00:00
Laurent Rineau 3c02e07b23 Try to fix my last revision about cmake_policy, with CMake-2.6.x
CMake gives an error if one tries to use cmake_policy(VERSION x.y.z) if
x.y.z is greater than the current CMake version.
2011-04-28 17:45:22 +00:00
Laurent Rineau c97205f085 Global handling of CMake policies (second part)
We declare 
  cmake_minimum_required(VERSION 2.6.2)
but we also use
  cmake_policy(VERSION 2.8.4)
to declare that our CMake scripts are OK with all the defaults of CMake policies
as of CMake-2.8.4. That shuts down the warnings of CMake-2.8.4.

That way, we no longer need any declaration of specific policies.

Those two lines must be present and maintained in all our CMakeLists.txt
files (the one for the libraries, and also the one for examples and demos,
and maybe tests).
2011-04-28 10:55:56 +00:00
Laurent Rineau 0631943153 Uniform capitalization in our CMake script: use lowercase for commands 2011-04-28 10:36:18 +00:00
Laurent Rineau ca5c92e034 Global maintenance of CMakeLists.txt: CMake minimal version is -2.6.2
The documentation of CGAL says that the minimal version of CMake must be
CMake-2.6.2.
  - change cmake_minimum_required to VERSION 2.6.2
  - no longer any need for the policy CMP0003 (was for 2.4.x)
  - no longer any need for CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS (was for 2.4)
2011-04-27 17:58:27 +00:00
Laurent Rineau 32f6d6d555 Fix cgal_test_with_cmake from Point_set_processing_3 and
Surface_reconstruction_points_3:
  - [ "a" == "b" ] is a syntax of Bash. The POSIX way if with a single '='.
  - do not override MAKE_CMD if it is already set (to jom, for example).
2010-08-11 09:10:46 +00:00
Laurent Saboret fe8353441a Port to Windows 64 2009-09-02 12:10:05 +00:00
Laurent Saboret be09d80d95 * Bug fix: fixed compatibility of TAUCS/BLAS/LAPACK precompiled libraries with Visual C++ 9.0 2008:
CGAL 3.5 will include TAUCS/BLAS/LAPACK precompiled libraries for Visual C++ 8.0 and 9.0. 
Auto-link is modified accordingly.

* Also fixed compatibility of cgal_test_with_cmake.bat scripts with VC++ 9.0.
2009-08-26 16:23:28 +00:00
Laurent Saboret d43c10552a Improved traces 2009-08-24 16:05:08 +00:00
Laurent Saboret 0b1c2932ca Removed debug traces from Point_set_processing_3 examples 2009-08-05 11:36:34 +00:00
Laurent Saboret 977aceca2d * Updated Point_set_processing_3 reference manual to describe the influence of each knn parameter.
* Fixed bug in Point_set_processing_3 examples/tests: use reasonable default knn parameters (0.1 or 0.15% of point set was overkill.* Updated the Point Set demo to use the recommended knn values by default.
2009-07-17 14:42:18 +00:00
Laurent Saboret d879d0191a Fixed potential conflicts with third party libraries (Visual C++ only):
Removed _HAS_ITERATOR_DEBUGGING=0 setting to go back to default settings.
This setting could create conflicts with third party libraries like _SECURE_SCL=0 crashes boost program options.

Note that no conflict with _HAS_ITERATOR_DEBUGGING was reported. This is just a safety change.
2009-07-16 18:16:24 +00:00
Laurent Saboret abb22ee92f * Fixed g++ warning in average_spacing_example.cpp
* Print error message if input file is missing
* Fixed indentation of .cpp files included in manual
2009-07-08 09:36:16 +00:00
Laurent Saboret 11cb5a223f Fixed bug in cgal_test_with_cmake and compiler warning on platform Cygwin/Visual C++/NMake. 2009-07-08 08:51:56 +00:00
Laurent Saboret 205446a67a Port to g++/Linux 2009-07-02 11:37:36 +00:00
Laurent Saboret 43a9e6b4ac Added missing
#include <CGAL/Memory_sizer.h>
2009-06-26 13:05:09 +00:00
Laurent Saboret 92e5ef0499 Fixed bugs in cgal_test_with_cmake when executed by CGAL test suite:
* cgal_test_with_cmake does not work when $MAKE_CMD environment variable exists.
* cgal_test_with_cmake returns an error when an application cannot be compiled.
2009-06-24 13:36:01 +00:00
Pierre Alliez 4045ec3e30 point set processing: user manual 2009-06-18 14:28:04 +00:00
Laurent Saboret 533dfcf207 Added examples with Dereference_property_map and tuple property map 2009-06-18 13:28:00 +00:00
Pierre Alliez 584f0e5131 point set processing: user manual: intro + io 2009-06-18 10:09:44 +00:00
Nader Salman cae412f834 added a small doc on the dereference_property_map in io.tex
added a small example on the use of CGAL::Dereference_property_map<T> in remove_outliers_example.cpp
2009-06-18 09:12:49 +00:00
Nader Salman 7fcf846193 updated the examples comments and removed the deprecated includes 2009-06-18 08:45:04 +00:00
Nader Salman d89d383f46 Modified two more examples to use pairs <Point,Vector> instead of Point_with_normal_3 type.
=>More generic examples.
2009-06-17 15:50:22 +00:00
Nader Salman 96e2418555 Corrected a big compilation bug
:= When Point type is a pair or a tuple compute_average_spacing, jet_estimate_normal, jet_smooth_point_set,
pca_estimate_normals, pca_smooth_point_set, remove_outliers and remove_outliers_wrt_median_knn_sq_distance 
files couldn't compile. Now they can!

Written a detailed example (average_spacing_example.cpp) that uses the tuples type.
==> Pairs and tuples are now used in the examples.
2009-06-17 12:39:51 +00:00
Laurent Saboret e3aea2e92d Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (12):
Document property maps and move them to Support Lib:

* Added new chapter "CGAL abd Boost Property Maps" (Property_map) to Support Lib:
- it is located in Point_set_processing_3/doc_tex/Property_map.
- it documents Dereference_property_map, First_of_pair_property_map, Second_of_pair_property_map and Nth_of_tuple_property_map.

* Renamed point_set_property_map.h as property_map.h

* Moved Normal_vector_property_map to Point_with_normal_3.h and renamed it Normal_of_point_with_normal_pmap.
2009-06-17 07:49:35 +00:00
Nader Salman 9f60273060 Added Property maps in read_write_xyz_point_set_example.cpp
Fixed bug in read_off_points_and_normals and  read_xyz_points_and_normals : Initialization of Normals to NULL_VECTOR when normal information is missing in the input file.
2009-06-15 14:15:59 +00:00
Laurent Saboret 0805bd26ac Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (11):
Changes requested by AF on 06/12/2009:

* Point_set_processing_3:
- Added grid_simplify_example.cpp. It replaces random_simplify_example.cpp in Point_set_processing_3 User Manual.
2009-06-15 08:07:10 +00:00
Laurent Saboret 1625af0907 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (11):
Changes requested by AF on 06/12/2009:

* Point_set_processing_3:
- Fixed description of grid_simplify_point_set()
- Fixed description of read_xyz_points(), write_xyz_points(), read_off_points(), write_off_points()
- Added grid_simplify_example.cpp. It replaces random_simplify_example.cpp in Point_set_processing_3 User Manual.

* Surface_reconstruction_points_3:
- Small fixes in the User Manual.
2009-06-15 08:04:42 +00:00
Laurent Saboret a15b486d24 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (10):
Removed IndexPMap parameter of mst_orient_normals():

* Removed IndexPMap parameter of mst_orient_normals(). Instead, mst_orient_normals() creates internaly an Index_property_map object.

* Index_property_map is a template class "index" property map, which associates a 0-based index (unsigned int) to Iter iterators.
2 specializations exist:
- if Iter is a random access iterator (typically vector and deque), get() just calls std::distance() and is very efficient;
- else, the property map allocates a std::map to store indices and get() requires a lookup in the map.

* Index_property_map is moved to an independent header Index_property_map.h but is not documented.
2009-06-12 09:05:03 +00:00
Laurent Saboret 66332c8646 Fixed bugs on Cygwin/Visual C++ platform:
* The compiler output is now correctly logged.
* Fixed make clean call.
2009-06-12 08:58:26 +00:00
Laurent Saboret eef69acca3 Modified version of cgal_test_with_cmake which:
- is cross-platform Unix/make and Cygwin/VisualC++
- concats all log files to cgal_test_with_cmake.log
- does not clean up object files and executables (too slow when called by developer)
2009-06-08 13:46:39 +00:00
Laurent Saboret cb58a26a32 Modified version of cgal_test_with_cmake which:
- is cross-platform Unix/make and Cygwin/VisualC++
- concats all log files to cgal_test_with_cmake.log
- does not clean up object files and executables (too slow when called by developer)
2009-06-08 11:52:56 +00:00
Laurent Saboret 30a5f7be9b Scott Meyer's "swap trick" to trim excess capacity 2009-06-02 16:28:18 +00:00
Nader Salman 31afd00f94 Updated memory issue on normal estimation code 2009-06-02 10:50:17 +00:00
Nader Salman 593a5a8be3 Corrected memory issue using Scott Meyer's "swap trick" to trim excess capacity 2009-06-02 08:46:23 +00:00
Laurent Saboret 09568b8346 Scott Meyer's "swap trick" to trim excess capacity 2009-05-29 10:13:09 +00:00
Laurent Saboret bfc3fa82d6 Compare logs with Beyond Compare 2009-05-26 17:06:30 +00:00
Laurent Saboret 45998fee86 Added /FR option to turn on VC++ IntelliSense
Added -DDEBUG_TRACE to print memory footprint
2009-05-26 17:05:36 +00:00
Laurent Saboret 3f72786f2a Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (8):
* Port to g++ 4.3.1/Linux
* Update automatic documentation
2009-05-18 17:41:58 +00:00
Laurent Saboret 521b24b556 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (8):
* The code matches the documentation and uses the new API with property maps:
- The code uses the new API with property maps.
- The test suites work.
- The MFC and Qt demos work.
- Copied Pierre's comments in Reference Manual to C++ comments.

* Renaming:
- merge_simplify_point_set -> grid_simplify_point_set.
- read_xyz_point_set split() as read_xyz_points() + read_xyz_points_and_normals().

* Gyroviz stuff:
- merge_simplify_nearest_point_set renamed as grid_simplify_nearest_point_set and moved to Poisson demo (as it is limited to Gyroviz_point_3 points).
- The code in Point_set_processing_3 uses the new API with property maps.
2009-05-18 15:42:15 +00:00
Laurent Saboret 402ef86aef Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (7):
Documentation of the new API with property maps.

* The User and Reference Manuals are updated wrt the new API with property maps.
* The examples included in the User and Reference Manuals are updated.

Warning:
* The code of these packages does not match the documentation!
* Do not call generate_reference_manual on these packages. This would remove the new API documentation.

TODO:
* Modify the code to match the documentation.
2009-05-11 16:38:05 +00:00
Laurent Saboret 87be199e78 Updated list of files that svn should ignore 2009-05-07 13:57:04 +00:00
Laurent Saboret 85c602c7dc Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (6):
Proof of concept of the new API with property maps.

* Proof of concept: 
- mst_orient_normals() is implemented using the new API with property maps. It returns an iterator over the first non oriented normal.
- Same thing for radial_orient_normals() [private API].
- the test suite works fine.
- removed Orientable_normal_3 class.

* point_set_property_map.h contains all property map classes of Point_set_processing_3:
- Former property maps in property_map.h are modified to take an iterator as key instead of a value type. This is more general (works if key = int), safer (no bug if key passed by value) and coherent with Boost Graph Library.
- identity_property_map and Point_set_vertex_point_const_map are merged as Dereference_property_map.
- Point_set_vertex_normal_map is moved from Point_set_3.h and renamed Normal_vector_property_map.
- Random_access_container_index_pmap is moved from Random_access_container_index_pmap.h and renamed Index_property_map.
- added free functions make_*() to create these property maps.
- removed get() functions to create these property maps.

* Demos:
- fixed Poisson MFC demo.

Gyroviz code is limited to containers of Gyroviz_point_3 (no property maps):
- removed class class Point_set_vertex_cameras_const_map.
- changed implementation of orient_normal_wrt_cameras().

TODO:
- update documentation.
- change API of all other functions of these packages to use property maps.
2009-05-07 13:13:56 +00:00
Laurent Saboret 6f181f3a7f Fixed compilation and test suite error: pca_estimate_normals_example example has been renamed normals_example. 2009-05-07 12:46:40 +00:00
Laurent Saboret bc97f27897 Use STL vector and list instead of deque in examples 2009-05-07 12:43:21 +00:00
Gaël Guennebaud 2acec520ee add a property_map example working with multiple buffers (e.g., multiple
std::vector)
2009-04-30 17:32:02 +00:00
Pierre Alliez 46a035df4e point set processing: more on user ref 2009-04-29 15:23:47 +00:00
Pierre Alliez 61eb85e4e2 point set processing: more on user ref 2009-04-28 21:12:02 +00:00
Laurent Saboret 39552d040f Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (5):
Simplified the API:
- removed OrientableNormal_3, PointWithOrientableNormal_3, ReconstructionTriangulation_3, ReconstructionVertexBase_3 concepts.
- classes Orientable_normal_3, Reconstruction_triangulation_3 abd Reconstruction_vertex_base_3 are not documented anymore.
- For free functions provided with 2 variants mutable/non mutable, removed the non mutable one.

TODO:
- remove Orientable_normal_3 class.
- modify mst_orient_normals() to return an iterator over the first non oriented normal.
- fix Poisson MFC demo which does not compile anymore.
2009-04-28 14:10:05 +00:00
Gaël Guennebaud 12769c1304 fix compilation 2009-04-26 17:02:50 +00:00
Andreas Fabri 4007cc6e2a That's how it could look like with boost property maps 2009-04-23 15:33:55 +00:00
Laurent Saboret e580938c7f Updated Point_set_processing_3 's CMakeLists.txt files 2009-04-22 15:04:20 +00:00
Laurent Saboret 17dea5f329 Backup previous log file 2009-04-22 15:03:07 +00:00
Laurent Saboret 87e3e65ddb Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (3):
* Renamed functions part of the public API:
average_spacing_3 -> compute_average_spacing
read_off_point_set -> read_off_point_set
read_xyz_point_set -> read_xyz_point_set
write_off_point_set -> write_off_point_set
write_xyz_point_set -> write_xyz_point_set
jet_normal_estimation -> jet_estimate_normals
pca_normal_estimation -> pca_estimate_normals
jet_smoothing_3 -> jet_smooth_point_set
merge_simplification_3 -> merge_simplify_point_set
random_simplification_3 -> random_simplify_point_set
mst_normal_orientation -> mst_orient_normals
outlier_removal_3 -> remove_outliers
surface_reconstruction_output_surface_facets -> output_surface_facets_to_polyhedron and output_surface_facets_to_triangle_soup 

* and similar renaming for private/Gyroviz functions:
poisson_refinement_3 -> poisson_refine_triangulation
improved_laplacian_smoothing_3 -> improved_laplacian_smooth_point_set
merge_simplification_nearest_points_3 -> merge_simplify_nearest_point_set
outlier_removal_wrt_median_knn_sq_distance_3 -> remove_outliers_wrt_median_knn_sq_distance
outlier_removal_wrt_camera_cone_angle_3 -> remove_outliers_wrt_camera_cone_angle_3
radial_normal_orientation_3 -> radial_orient_normals
2009-04-21 14:10:02 +00:00
Laurent Saboret 5e6fffaace Fixed traces 2009-04-14 13:42:16 +00:00
Laurent Saboret c6ad02b857 Replace custom polyhedron class Enriched_polyhedron by a regular Polyhedron_3 + a call to compute_vertex_normal() (borrowed from Polyhedron demo).
The new code is shorter and easier to understand.
2009-04-10 14:40:47 +00:00