Commit Graph

331 Commits

Author SHA1 Message Date
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
Laurent Saboret 8556fa0452 Changes after submission review by AF (1):
* Point_set_processing_3 IO functions take now as parameter a std::istream instead of a filename.
* Removed read/write_pwn_point_set() which are replaced by read/write_xyz_point_set().
* Removed read_pnb_point_set() which obsolete.
2009-04-03 12:47:33 +00:00
Laurent Saboret 62e4c1e36f * Simplified normal_estimation.cpp example (moved code comparing the computed normals to the original ones to normal_estimation_test.cpp).
* Fixed test suite (test sphere926.pwn instead of ChineseDragon-10kv.off which is too difficult).
2009-03-17 12:03:16 +00:00
Laurent Saboret d0ff567259 Split Surface_reconstruction_3 into Point_set_processing_3 and Surface_reconstruction_points_3 (part 1):
* Move/rename files and folders.
* Rename point set IO functions.

Status: 
* Both packages compile on Unix/g++ 4.1.2. The test suite is OK.
* The documentation compiles for both packages.

TODO:
* Update the documentation and package_info
* Update Groviz
* Delete Surface_reconstruction_3
2009-03-13 15:50:14 +00:00
Laurent Saboret d3374184d7 Split Surface_reconstruction_3 into Point_set_processing_3 and Surface_reconstruction_points_3 (part 1):Move/rename files and folders 2009-03-12 15:19:49 +00:00
Laurent Saboret cb6e40b653 Split Surface_reconstruction_3 into Point_set_processing_3 and Surface_reconstruction_points_3 (part 1):Move/rename files and folders 2009-03-12 15:16:09 +00:00