Commit Graph

339 Commits

Author SHA1 Message Date
Pierre Alliez 7d5cd23287 more on case studies. 2009-08-14 09:50:46 +00:00
Pierre Alliez 9109f19e63 recontruction: improve bench images. 2009-08-14 09:01:17 +00:00
Laurent Saboret 89065b78a8 Turn on TAUCS traces to debug random crash in test suite 2009-08-07 10:50:18 +00:00
Laurent Saboret 318876bb07 User Manual: added Case Studies and Performance sections for Poisson reconstruction 2009-08-06 16:38:37 +00:00
Laurent Saboret 7e99eef316 Images used in the User Manual (rasterized) 2009-08-04 14:41:59 +00:00
Laurent Saboret ac3d842098 Fixed the default Surface Mesher parameters:
* Default Surface Mesher parameters for Poisson are now  
- triangle radius = 100 * point set average spacing and 
- approximation distance = 0.25 * point set average spacing 
(instead of 0.1 * point set radius and 0.002 * point set radius).
As Poisson is a function piecewise linear in the tetrahedra of the underlying triangulation, the goal of this change is to ensure that the Surface Mesher creates a mesh with triangles larger than the underlying tetrahedra.

* Default Surface Mesher parameters for APSS are now the same as Poisson to ease comparison among both methods, and simplify code maintenance
(instead of APSS distance = 1.5 * Poisson distance to get reconstructed surfaces of roughly the same number of faces).
2009-08-04 11:35:02 +00:00
Laurent Saboret 8107390e77 Fixed compilation error on Linux/g++ 2009-08-03 17:28:38 +00:00
Laurent Saboret 31f36744c7 * Fixed color of reconstructed surfaces (magenta -> light gray).
* Fixed size of splats for nicer screenshots:
- knn parameter allows now to change the size of splats
- fixed offset by 1 in use of knn
- knn default changed from 18 (medium) to 6 (small)
- knn min changed from 6 (small) to 1 (tiny)

* Compute reconstruction error after APSS and Poisson (in fact the distance from input points to reconstructed mesh).
2009-08-03 15:36:25 +00:00
Laurent Saboret d5475f496c Improved performance traces 2009-08-03 14:47:05 +00:00
Laurent Saboret 7ef33128f2 Fixed bug in Point Set demo Save As dialog: prompt warning if saving failed 2009-08-03 07:57:39 +00:00
Laurent Saboret f7831a6a82 Improved performance traces 2009-07-31 10:49:16 +00:00
Laurent Saboret fa4a22f837 Bug fix: fixed scene item name when loading a file with several dots in the name. 2009-07-31 09:44:13 +00:00
Laurent Saboret 0a8d0e30f3 Temporary workaround:
remove robocat_deci from tst suite to avoid an infinite loop with APSS.
2009-07-30 17:12:35 +00:00
Laurent Saboret 1a1ecba11a Fixed bug in Save As dialog 2009-07-30 17:11:24 +00:00
Laurent Saboret aacac9bdf0 Improved performance traces 2009-07-30 12:55:44 +00:00
Laurent Saboret f46faa4ca0 Fixed minimum value of percentage field (set to 0.01%) 2009-07-29 15:49:50 +00:00
Laurent Saboret eef098c440 Use approximation distance = 0.015 (instead of 0.01) to match the recommended values. 2009-07-29 12:56:39 +00:00
Laurent Rineau f1a3f94274 Merge to trunk commits from CGAL-3.5-branch so far.
Merged revisions 50855,50859,50863,50868,50871,50878-50879,50886,50893,50930-50934 via svnmerge from 
svn+ssh://scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.5-branch

........
  r50855 | lrineau | 2009-07-27 13:47:18 +0200 (Mon, 27 Jul 2009) | 1 line
  
  Attempt to fix links to precompiled demos.
........
  r50859 | lrineau | 2009-07-27 14:37:54 +0200 (Mon, 27 Jul 2009) | 2 lines
  
  update the AUTHORS list
........
  r50863 | lrineau | 2009-07-27 14:53:14 +0200 (Mon, 27 Jul 2009) | 3 lines
  
  Remove occurences of "3.4" in various files (problem reported by
  J. Reichel)
........
  r50868 | lrineau | 2009-07-27 15:38:39 +0200 (Mon, 27 Jul 2009) | 2 lines
  
  Fix target names conflicts with Triangulation_2.
........
  r50871 | lrineau | 2009-07-27 15:48:57 +0200 (Mon, 27 Jul 2009) | 2 lines
  
  Taucs will be updated for CGAL-3.5.
........
  r50878 | lrineau | 2009-07-27 16:10:03 +0200 (Mon, 27 Jul 2009) | 2 lines
  
  There was still a 3.4 in that file.
........
  r50879 | lrineau | 2009-07-27 16:16:11 +0200 (Mon, 27 Jul 2009) | 2 lines
  
  Fix a problem with \cgalrawversion{}: use "\cgalrawversion" instead!
........
  r50886 | reichel | 2009-07-27 19:09:07 +0200 (Mon, 27 Jul 2009) | 2 lines
  
  Set CGAL_SONAME_VERSION to 4 and CGAL_SOVERSION to 4.0.0.
........
  r50893 | lsaboret | 2009-07-28 10:27:31 +0200 (Tue, 28 Jul 2009) | 2 lines
  
  * Fixed include path.
  * Fixed order of libraries: TAUCS must be listed before LAPACK.
........
  r50930 | lrineau | 2009-07-29 11:58:00 +0200 (Wed, 29 Jul 2009) | 2 lines
  
  Add periodic_3_demo to "make demos".
........
  r50931 | lrineau | 2009-07-29 11:59:33 +0200 (Wed, 29 Jul 2009) | 2 lines
  
  Add CGAL ipelets to "make demos".
........
  r50932 | lrineau | 2009-07-29 12:57:59 +0200 (Wed, 29 Jul 2009) | 2 lines
  
  Add the polyhedron demo to "make demos".
........
  r50933 | lrineau | 2009-07-29 13:04:50 +0200 (Wed, 29 Jul 2009) | 2 lines
  
  Add the points set demo to "make demos".
........
  r50934 | lrineau | 2009-07-29 13:09:22 +0200 (Wed, 29 Jul 2009) | 2 lines
  
  Make the windows installer fetch the manual from the right place!
........
2009-07-29 12:49:27 +00:00
Laurent Saboret 47065c2ae1 * Workaround orientation bug in output_surface_facets_to_off(): call output_surface_facets_to_polyhedron() then save polyhedron to OFF.
* Also change make_surface_mesh() tag parameter from Manifold_with_boundary_tag to Manifold_tag as implicit functions have no boundaries.
2009-07-29 09:45:42 +00:00
Laurent Saboret f7ca35ad47 * Workaround orientation bug in output_surface_facets_to_off(): call output_surface_facets_to_polyhedron() then save polyhedron to OFF.
* Also change make_surface_mesh() tag parameter from Manifold_with_boundary_tag to Manifold_tag as implicit functions have no boundaries.
2009-07-29 09:13:15 +00:00
Laurent Saboret f9d7cbd843 Update trunk/Surface_reconstruction_points_3 wrt CGAL-3.5-branch for revisions 50663-r50904:
r50904 | lsaboret:
Fixed compilation error in cgal_test_with_cmake introduced in r50885

r50901 | lrineau:
-#include <Qt/qglobal.h>
+#include <QtCore/qglobal.h>

r50885 | lsaboret:
* Fixed compilation errors on Windows/VC++ introduced in r50866 (one needs to update a DLL's config file when renaming the DLL).
* Use "PS_demo_" prefix instead of "reconstruction_" in target names (to be coherent, and because long names break cmake on Windows - see r50533).
* Renamed polyhedron_demo_plugin() as point_set_demo_plugin() (to be coherent, and because the code diverges from Polyhedron demo).

r50877 | lsaboret:
Fixed link error on Windows (in splatting code)

r50688 | palliez:
point set demo: one attempt to solve compilation issues.

r50679 | palliez:
move point set demo

r50678 | palliez:
move point set demo

r50677 | palliez:
move point set demo

r50676 | palliez:
move point set demo

r50675 | palliez:
move point set demo

r50668 | lsaboret:
* 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.

r50666 | ggael:
automagically computes the slpat radii when needed

r50663 | ggael:
remove the splatting mode if it is not supported
2009-07-28 12:07:14 +00:00
Laurent Saboret 341a2a7a28 Move Surface_reconstruction_points_3 with APSS (targeting CGAL 3.6) from experimental-packages to trunk 2009-07-28 09:20:13 +00:00
Laurent Saboret 4b8de7a701 Move Surface_reconstruction_points_3 with APSS (targeting CGAL 3.6) from experimental-packages to trunk 2009-07-28 08:25:53 +00:00
Laurent Saboret 0295e64d9b Move Surface_reconstruction_points_3 with APSS (targeting CGAL 3.6) from experimental-packages to trunk 2009-07-28 07:26:07 +00:00
Laurent Saboret 740a0faa6e Move Surface_reconstruction_points_3 with APSS (targeting CGAL 3.6) from experimental-packages to trunk 2009-07-28 07:24:21 +00:00
Laurent Rineau aa5fac11fe Change targets names to avoid conflicts with target names from the
polyhedron demo.
2009-07-27 13:15:58 +00:00
Pierre Alliez 44305e3ff0 point set demo: one attempt to solve compilation issues. 2009-07-19 07:11:08 +00:00
Pierre Alliez 237985093b move point set demo 2009-07-17 16:47:50 +00:00
Pierre Alliez 9e2bb054e6 move point set demo 2009-07-17 16:44:43 +00:00
Pierre Alliez a1abe90c8f move point set demo 2009-07-17 16:44:00 +00:00
Pierre Alliez 20b534eadf move point set demo 2009-07-17 16:42:18 +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
Gaël Guennebaud b7e9fbd52b automagically computes the slpat radii when needed 2009-07-17 11:33:55 +00:00
Gaël Guennebaud 88114984f2 remove the splatting mode if it is not supported 2009-07-17 09:25:43 +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 d0f9df8576 Partial fix of assertion failure in make_surface_mesh() when running
poisson_reconstruction data/sphere926.pwn sphere926_poisson_0.001.off -sm_distance 0.001:
- set dichotomy error to 1/10th of distance to surface (as suggested by MY)
- added trace
2009-07-16 16:48:00 +00:00
Laurent Saboret 1dde029f4e Added to reproduce "Point is already on surface" assertion in the Surface Mesher, when using Poisson reconstruction 2009-07-15 15:50:29 +00:00
Laurent Saboret 15e3dd6fee Removed APSS from CGAL 3.5 2009-07-13 09:50:06 +00:00
Laurent Saboret 8c67185b2b Fixed bug in Point Set demo:
plug-ins with long name are not properly compiled (at least on CMake 2.6/VisualC++ 2005).

I am not sure if the bug is related to the plugin's name or to the full path.

The workaround is to use shorter names:
- "PS_demo_APSS_reconstruction_plugin" is renamed "PS_demo_APSS_plugin"
- "PS_demo_poisson_reconstruction_plugin" is renamed "PS_demo_poisson_plugin"
- "PS_demo_point_set_simplification_plugin" is renamed "PS_demo_simplification_plugin"
2009-07-10 12:29:06 +00:00
Laurent Saboret 37fdaefe04 Fixed compilation error on Linux/g++ 4.3.1 2009-07-08 11:03:17 +00:00
Laurent Saboret 76c0775f80 Fixed bug in cgal_test_with_cmake and compiler warning on platform Cygwin/Visual C++/NMake. 2009-07-08 08:59:42 +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 7477e91147 Attempt to fix test suite on Cygwin/VisualC++/NMake:
added cgal_test_with_cmake.bat to dont_submit file.
2009-07-06 17:01:08 +00:00
Laurent Saboret a0581b1122 Fixed bug in Point Set demo:
plug-ins with name longer than 48 characters are not properly compiled 
(at least on CMake 2.6/VisualC++ 2005).

The workaround is to use shorter names:
Each "Point_set_demo_XXX_plugin" is renamed "PS_demo_XXX_plugin".
2009-07-06 16:13:24 +00:00
Laurent Saboret 1d93f37726 * Fixed bug in read_xyz_points_and_normals() when loading a .xyz file with empty lines
* Fixed bugs in Point Set demo "Save As" feature:
- saving as .xyz did not work
- replacing an existing file prompted 2 confirmation dialogs
2009-07-06 16:08:10 +00:00
Laurent Saboret 2773367c8c Removed Poisson_reconstruction_function::Triangulation type and triangulation() function (obsolete) 2009-07-02 11:40:56 +00:00
Laurent Saboret 205446a67a Port to g++/Linux 2009-07-02 11:37:36 +00:00
Laurent Saboret 7648529dc1 Remove Poisson MFC demo from Surface_reconstruction_points_3 et move shared code to Gyroviz MFC demo 2009-07-01 15:26:25 +00:00
Laurent Saboret 77298cf226 Remove Poisson MFC demo from Surface_reconstruction_points_3 et move shared code to Gyroviz MFC demo 2009-07-01 15:22:05 +00:00
Laurent Saboret 93c04ff355 Added Average Spacing algorithm to Qt Point Set demo 2009-07-01 14:56:49 +00:00
Laurent Saboret 934da2da49 Removed Poisson_reconstruction_function::Triangulation type and triangulation() function (obsolete) 2009-07-01 11:59:09 +00:00
Laurent Saboret feb5bdff59 Changed variables name and comments to match APSS_reconstruction_example.cpp and poisson_reconstruction_example.cpp (easier to maintain code). 2009-07-01 11:35:41 +00:00
Laurent Saboret 089fe7c718 Added Poisson reconstruction to Qt Point Set demo. 2009-07-01 11:34:02 +00:00
Laurent Saboret ea72993f2b Improvements to the Qt Point Set demo:
* Removed "Bounding Box/Sphere" and "Convex Hull" menu items and the corresponding plug-ins (never implemented).
* "Outlier removal" menu item selects now the points to remove instead of deleting them immediately.
The user may delete them with the new menu item "Delete Selection" or cancel with "Reset Selection".
* "Normal estimation" menu item selects now the points with an unoriented normal instead of deleting them immediately.
The user may delete them with "Delete Selection" or run again the algorithm with different settings.
* Implemented point set simplification plug-in (random + grid clustering).
* Added traces.

TODO:

* Add "Poisson reconstruction" algorithm.
* Add "Average Spacing" algorithm.
2009-07-01 08:26:49 +00:00
Laurent Saboret 075324a626 Use unique .off output filename for each example 2009-06-30 15:33:18 +00:00
Laurent Saboret 8068c3bc38 Changed comments 2009-06-30 13:24:38 +00:00
Laurent Saboret 2d8ff0aff2 Fixed misspelling 2009-06-30 13:24:09 +00:00
Laurent Saboret 97d6b4187e Renamed 'size' variables as 'radius' (easier to understand) 2009-06-30 13:15:45 +00:00
Pierre Alliez fbb22e4e4b reconstruction example: updated kitten model 2009-06-30 12:41:26 +00:00
Pierre Alliez e1d04acd67 reconstruction examples: change parm. 2009-06-29 21:26:03 +00:00
Pierre Alliez 4d83ca776b reconstruction examples: update wrt models 2009-06-29 20:25:29 +00:00
Laurent Saboret 1f05a2989a Moved output_surface_facets_to_polyhedron() from Surface_reconstruction_points_3 to Surface_mesher 2009-06-29 13:31:24 +00:00
Pierre Alliez e4af613f65 Surface reconstruction demo: fix compil. issue 2009-06-29 09:49:52 +00:00
Pierre Alliez ace223144d reconstruction: manifold tag in examples 2009-06-26 20:01:39 +00:00
Pierre Alliez 60f4eee27d reconstruction: replace model for both examples.
careful: the current examples output off files which are non-manifold while the option is turned on.
2009-06-26 19:53:00 +00:00
Nader Salman 546e8eeaf6 Added funtion in arcball : get_camera_position 2009-06-26 16:21:25 +00:00
Laurent Saboret 03eb0c8157 Fixed compilation errors with VC++ 2009-06-26 15:23:21 +00:00
Laurent Saboret e70a056e75 LS + S. Tayeb:
* Rename obsolete Mesh_3 files to avoid conflicts with new Mesh_3 implementation.

* TODO: 
Modify Poisson_refine_triangulation.h to use new Mesh_3 implementation.
2009-06-26 15:04:39 +00:00
Laurent Saboret 1819dc507d mproved test suite:
- removed _DCGAL_PROFILE
- added trace if input file is missing
2009-06-26 15:03:16 +00:00
Laurent Saboret 46bd1e2216 Removed obsolete header Iso_cuboid_oracle_3.h 2009-06-26 13:44:33 +00:00
Pierre Alliez 9bce2b33a8 reconstruction: remove documented function which returns embedded triangulation in poisson. cleanup description. 2009-06-26 09:10:31 +00:00
Pierre Alliez e7ea767930 aabbreconstruction: more on doc 2009-06-26 09:04:02 +00:00
Pierre Alliez d9f7829747 reconstruction: attempt to fix the examples - and we have to extend them. 2009-06-26 09:03:04 +00:00
Pierre Alliez 69af5d1efd aabb tree: cleanup examples 2009-06-26 08:55:22 +00:00
Pierre Alliez a3715eb076 surface reconstruction: cleanup poisson example 2009-06-26 08:41:10 +00:00
Laurent Saboret d2cc8fc502 Fixed bug in Surface_reconstruction_points_3 test suite: fixed svn properties of cgal_test_with_cmake scripts.
Did the same fix for all cgal_test_with_cmake scripts and in svn config file.
2009-06-25 08:46:45 +00:00
Laurent Saboret 54391f4da1 Code cleaning:
- removed obsolete code
- use property maps in Reconstruction_triangulation_3
2009-06-24 16:12:50 +00:00
Laurent Saboret 25ef46c2e1 Automatic ref manual update 2009-06-24 13:47:25 +00:00
Laurent Saboret 78ff390920 Changed comments 2009-06-24 13:40:55 +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
Gaël Guennebaud a1c1269720 extend APSS user manual (including a full example) 2009-06-23 09:32:09 +00:00
Gaël Guennebaud 20c6046a43 add a marching cubes mesher in the demo (for comparison purpose) 2009-06-22 15:06:41 +00:00
Laurent Saboret 4003fd8520 Fixed infinite loop in Delaunay refinement with "teeth" model (BPoint_MM):
use filtered robust version of circumcenter computation.

(thanks to Stephane Tayeb for providing Robust_circumcenter_filtered_traits_3 class)
2009-06-19 16:00:59 +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
Laurent Saboret d0ec390141 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (13):
Removed ReconstructionTriangulation_3 template parameter of Poisson_reconstruction_function.
- Updated documentation.
2009-06-16 08:49:14 +00:00
Laurent Saboret 61991956f9 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (13):
Removed ReconstructionTriangulation_3 template parameter of Poisson_reconstruction_function.
2009-06-16 08:29:01 +00:00
Laurent Saboret 94690fd34f Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (12):
Moved keep_largest_connected_components() to HalfedgeDS_decorator and Polyhedron_3 classes.
2009-06-15 13:09:47 +00:00
Laurent Saboret 862f3e4e81 Delete run_testsuite_with_cmake.bat scripts because they work on my machine only. 2009-06-15 09:16:37 +00:00
Laurent Saboret c76b676026 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (11):
Changes requested by AF on 06/12/2009:

* Surface_reconstruction_points_3:
- Fixed compilation error.
2009-06-15 09:12:52 +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 a297913d66 Fixed bugs on Cygwin/Visual C++ platform:
* The compiler output is now correctly logged.
* Fixed make clean call.
2009-06-12 11:03:07 +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 e176164f4f Added c2t3_output_surface_facets_to_medit.h (Gyroviz stuff) 2009-06-11 09:21:26 +00:00
Laurent Saboret 489b84a5e6 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (9):
* Improvements in C++ code:
- erase_small_connected_components() is renamed keep_largest_connected_components() and takes as new parameter the number of large components to keep.
- get_polyhedron_connected_components() writes the list of components found in an output iterator.

* Improvements in the User Manuals:
- Removed page number in links.
- New images for grid simplification and normal orientation (hopefully clearer).
- Added citation of OFF file format.

* Improvements in the Reference Manuals:
- Removed output_surface_facets_to_triangle_soup() (obsolete).
- Removed get_polyhedron_connected_components() from documentation.
- Set manually the classes/structs/concepts marging to get a pretty alignment of types, constructors and methods.

* Automatic documentation improvements by generate_reference_manual 1.3:
- Reduced left margin of free functions description.
- Fixed bug: fixed vertical alignment in methods/functions description.
- Fixed bug: does not remove anymore EOLs in methods/functions description.
- Fixed bug #7515: removed "[protected]", "[static]" and "[virtual]" comments.
2009-06-11 08:36:48 +00:00
Laurent Saboret 849fc09781 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:51:36 +00:00
Laurent Saboret 0cb2c28f04 Fixed compilation error with Qt 4.3: replaced form layout by grid layout 2009-06-08 13:47:59 +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
Pierre Alliez 8286b443ff reconstruction: fix bug on demo (normal estimation) + remove some off files. 2009-06-06 10:47:36 +00:00
Laurent Saboret c4708afb9f Improved traces related to memory footprint 2009-06-02 16:29:20 +00:00
Laurent Saboret 30a5f7be9b Scott Meyer's "swap trick" to trim excess capacity 2009-06-02 16:28:18 +00:00
Laurent Saboret 611f13a5ba Fixed comment: Poisson_implicit_function was renamed Poisson_reconstruction_function 2009-06-02 11:38:19 +00:00
Nader Salman ceb1dd1014 Memory issue corrected using Scott Meyer's "swap trick" to trim excess capacity 2009-06-02 10:51:06 +00:00
Pierre Alliez 001bb21b1a Surface reconstruction: added comments to reduce memory footprint 2009-05-30 12:49:36 +00:00
Gaël Guennebaud 64f62576a3 add a normal estimation plugin 2009-05-29 10:47:26 +00:00
Laurent Saboret 052bc766dd Scott Meyer's "swap trick" to trim excess capacity 2009-05-29 10:14:40 +00:00
Gaël Guennebaud 45a8ff1aec add a jet smoothing plugin 2009-05-29 09:26:16 +00:00
Gaël Guennebaud c18d285556 bugfix in cleaning plugins 2009-05-29 07:42:26 +00:00
Gaël Guennebaud b6fafcdb51 * add a "cleaning" featuring outlier removal
* fix a cmake issue with .ui files
2009-05-28 13:22:41 +00:00
Gaël Guennebaud 77fb8846e2 add a unique config dialog for the APSS plugin 2009-05-28 12:44:24 +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 78dcb5c219 * Workaround bug in cgal_manual: call \ccTagFullDeclarations at the beginning of \ccOperations.
This forces cgal_manual to expand const keyword are avoids 2 problems:
- bad keywords in HTML
- const and non-const methods seem identical.

* Also fixed a bug in copy_doxygen_latex_doc r49560:
cgal_manual compilation error on mst_orient_normals.tex.
2009-05-25 14:31:23 +00:00
Laurent Saboret e53b592e19 TEMPORARY: a few concept names are hard-coded in copy_doxygen_latex_doc until I find a better implementation:
PolylineSimplificationCostFunction
PolylineSimplificationStopPredicate
PolylineSimplificationVertex
ImplicitFunction
InputIterator
OutputIterator
ForwardIterator
2009-05-25 12:52:45 +00:00
Laurent Saboret 86e72c16ab Fixed error in generate_reference_manual parsing 2009-05-25 10:29:40 +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
Gaël Guennebaud 617e029617 APSS:
* extend the documentation
* update the APSS demo plugin to use property map
* change the k parameter to a more generic "smoothness" value
* add an optional RadiusPMap in the ctor
* minor changes in APSS's internal mechanism
2009-05-13 12:28:24 +00:00
Pierre Alliez 2d53ece192 Surface reconstruction: more on ref and user manual 2009-05-12 15:08:53 +00:00
Laurent Saboret 3cc26450c2 Changed comments 2009-05-11 17:11:35 +00:00
Laurent Saboret 3d6a15fb84 PointWithNormal_3 concept does not exist anymore 2009-05-11 17:10:40 +00:00
Laurent Saboret edd70afec6 Use assert macro 2009-05-11 17:09:30 +00:00
Laurent Saboret 8a24d28a83 Use assert macros in surface_reconstruction_points_assertions.h 2009-05-11 17:08:52 +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 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 bc97f27897 Use STL vector and list instead of deque in examples 2009-05-07 12:43:21 +00:00
Laurent Saboret 4c28597315 Removed cut_plugin from Point_set_demo because AABB_tree does not compile for several days 2009-05-07 12:24:25 +00:00
Laurent Saboret 38af5dd57a Reduce the size of CGAL tarball:
- removed obsolete images in Point_set_processing_3
- reduced size of remaining images in Point_set_processing_3 and Surface_reconstruction_points_3
- removed test meshes and point sets in Surface_reconstruction_points_3
2009-05-06 11:51:10 +00:00
Laurent Saboret 3c8060b2fe Undo r49132 2009-05-05 13:02:59 +00:00
Laurent Saboret a2c018945a Removed examples included in Reference Manual (as per AF request) 2009-05-05 10:23:58 +00:00
Laurent Saboret 44d4b6ebb0 Changed comments and variables name. 2009-05-05 10:07:52 +00:00
Pierre Alliez a94bed9850 Surface reconstruction: user manual fix (structure) 2009-05-04 16:01:03 +00:00
Pierre Alliez e3b9c44009 Surface reconstruction: user manual fix 2009-05-04 15:59:00 +00:00
Pierre Alliez 09fe99fb7c Surface reconstruction: added apss file for user manual 2009-05-04 15:56:57 +00:00
Pierre Alliez 54caac66e6 Surface reconstruction: massive restructuring of user manual 2009-05-04 15:56:08 +00:00
Pierre Alliez f3e3369e51 Surface reconstruction: restructure the user manual (not finished) 2009-05-04 15:29:34 +00:00
Pierre Alliez 002bca36bf surface reconstruction: more on user manual (on-going work - does not compile)
Need for restructuring the whole chapter - as it is redundant.
2009-04-29 15:58:38 +00:00
Laurent Saboret 5641f761cc Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (3):
* Renamed private/Gyroviz functions:
normal_orientation_wrt_cameras -> orient_normals_wrt_cameras
2009-04-29 09:27:39 +00:00
Laurent Saboret 1086632c10 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (5):
Updated the documentation wrt the next changes:
- removed OrientableNormal_3, PointWithOrientableNormal_3, ReconstructionTriangulation_3, Reconstructio
nVertexBase_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.
2009-04-28 14:36:24 +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
Laurent Saboret 53338147c7 Specific to VC++:
- optimization for application dealing with large data
- removed stupid compiler warnings
2009-04-28 13:28:55 +00:00
Laurent Saboret 82a8b4f8b6 Automatic documentation update 2009-04-28 09:17:10 +00:00
Laurent Saboret dab30b0036 Merge with Polyhedron demo r48951 2009-04-28 08:09:27 +00:00
Laurent Saboret adc82cc1ea Modified Poisson_reconstruction_function to match the documentation:
- delaunay_refinement(), solve_Poisson.rc(), set_contouring_value() and median_value_at_input_vertices() are declared private.
- Poisson MFC demo calls compute_implicit_function() instead of these methods.
2009-04-27 14:29:57 +00:00
Laurent Saboret 28047e271f Adapted gl_splat makefile to Windows 2009-04-27 13:09:52 +00:00
Laurent Saboret 581faa103c cut_plugin:
- Removed cut_plugin from makefile because it does not compile

Splatting:
- Moved rendering mode list string from Scene.cpp to Scene_item.cpp
- Changed indentation
2009-04-27 11:21:26 +00:00
Gaël Guennebaud 1c75063ebd add splatting support in the demo, this include:
* add a "radius from density" plugin
* add a radius attribute to UI_Point
* add a svn externals to my GlSplat library (also on gforge)
Note that it requires glew, otherwise it is disabled.
2009-04-23 14:24:40 +00:00
Laurent Saboret 7ca11c448a Small documentation fixes 2009-04-22 15:06:24 +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
Gaël Guennebaud f27579ddc6 replace custom kdtree by a fast version of Orthogonal_k_neighbor_search 2009-04-22 13:56:59 +00:00
Laurent Saboret d0429bb665 Changes after Surface_reconstruction_points_3/Point_set_processing_3 submission review by AF (4):
Removed obsolete code and simplified the API of:
- Poisson_reconstruction_function
- ReconstructionTriangulation_3 and Reconstruction_triangulation_3
- APSS_reconstruction_function
2009-04-22 07:50:49 +00:00
Laurent Saboret e3cd0cf401 Automatic documentation 2009-04-21 14:52:46 +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 eee85aaac8 Draw longer normals 2009-04-21 08:57:36 +00:00
Laurent Saboret 6aa13983de * This package requires a local checkout of Surface_mesher/ to compile. Print error if not found.
* Merge CMakeLists.txt files in Surface_reconstruction_points_3/ and in Gyroviz/.
2009-04-21 08:51:42 +00:00
Laurent Saboret abeb50070f Changes after submission review by AF (2):
* Moved Lightweight_vector_3 from Point_set_processing_3 to Surface_reconstruction_points_3. It is now undocumented.
* Point_set_processing_3 User Manual does not have a structure of "pipeline" anymore.
* New introduction figures for Surface_reconstruction_points_3 and Point_set_processing_3.
* Deleted poisson.jpg/eps in Surface_reconstruction_points_3.
* INPUT and STEINER constants are now an enum.
* Removed obsolete code:
  - mst_normal_orientation(max_angle)
* PointWithNormal_3::set_position() renamed as position().
* Fixed misspellings.
* and many other improvements to the documentation (and C++ comments).
2009-04-20 16:49:53 +00:00
Nader Salman 03a72e1b78 This application requires a local checkout of Surface_mesher/ to compile. Print error if not found. 2009-04-20 14:08:40 +00:00
Laurent Saboret 8897439938 Added documentation for erase_small_polyhedron_connected_components() and get_polyhedron_connected_components(). 2009-04-16 14:46:38 +00:00
Laurent Saboret 1ee7c2d2ff Port to Linux/g++ 4.3 2009-04-14 15:24:57 +00:00
Laurent Saboret 64d432882e Fixed bug in flat rendering of sharp features. 2009-04-14 15:05:27 +00:00
Laurent Saboret a2efc1b786 * Fixed old bug of the "cones" created by APSS:
- added new function get_polyhedron_connected_components() that computes the connected components of a polyhedron.
- added new function erase_small_polyhedron_connected_components() that removes the *small* connected components of a polyhedron (leaves only the largest).
- call erase_small_polyhedron_connected_components() after APSS reconstruction
2009-04-14 13:56:59 +00:00
Laurent Saboret ba1d0b27c0 * Fixed old bug of the "cones" created by APSS:
- added new function get_polyhedron_connected_components() that computes the connected components of a polyhedron.
- added new function erase_small_polyhedron_connected_components() that removes the *small* connected components of a polyhedron (leaves only the largest).
- call erase_small_polyhedron_connected_components() after APSS reconstruction

* Reduced Implict_surface_3 radius for APSS reconstruction => smaller "cones" => faster reconstruction.

* Removed debugging traces during the package review.

* Removed Oni example as the package does not reconstruct (yet) surfaces with boundaries.
2009-04-14 13:52:24 +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 5e81b086c8 Port to g++ 2009-04-10 11:26:03 +00:00
Laurent Saboret aacb1d4b42 * Point Set Demo:
- added APSS_reconstruct plugin
- replaced Operations menu by 3 menus: Analysis, Processing and Reconstruction

* Added surface_reconstruction_output_surface_facets(C2t3, polyhedron) to export reconstructed surface to polyhedron.
TODO: add documentation.

* Simplified examples:
- shorter variable names
- less traces
- removed obsolete parameter "error_bound"

* Simplified APSS API: removed obsolete parameter "projection_error"
2009-04-10 09:49:57 +00:00
Laurent Saboret 005aefcf8a Fixed compilation error in class Complex_2_in_triangulation_3_polyhedron_builder 2009-04-10 09:14:14 +00:00
Laurent Saboret 8ed2c75021 Automatic documentation by generate_reference_manual 1.1.2 2009-04-09 12:49:30 +00:00
Laurent Saboret d31da484d4 Merge with experimental-packages\Polyhedron_demo-refactoring r48693:
- Rename back Point_set_demo_types.h as Polyhedron_type.h and Point_set_demo_types_fwd.h as Polyhedron_type_fwd.h (=> ease comparison).
- Move kernel declaration to new Kernel_type.h (=> avoid duplicating code).
2009-04-07 15:48:59 +00:00
Laurent Saboret 3a84182753 Port to g++ 2009-04-07 14:59:28 +00:00
Laurent Saboret b95b41f7ab Large rewrite of the OpenGL rendering mode management:
* New OpenGL rendering modes: 
- New modes "points", "points+normals" and "Gouraud". 
- "fill" mode is renamed "flat". 
- "Superimpose edges" menu item replaced by "flat+edges" mode.

* New Scene_item::supportsRenderingMode() method allows or not each rendering mode for each item.
- Point_set_scene_item supports "points" and "points+normals".
- Scene_polyhedron_item supports new modes points" and "Gouraud".

* New Scene_item::draw_points() and draw_normals() methods to implement the "points" and "points+normals" modes. 

* New Scene_item::renderingModeName() method to factorize code to write the "rendering mode" field.
2009-04-07 14:30:17 +00:00
Laurent Saboret 5fefaf52a4 Merge with experimental-packages\Polyhedron_demo-refactoring r48660 2009-04-07 14:03:45 +00:00
Laurent Saboret 88264bc2df Create Qt Point Set demo from Qt Polyhedron demo and Poisson MFC demo.
Step 5:
- added "Edit >> Convert to Point Set" menu item to convert a mesh to a point set
2009-04-06 15:21:22 +00:00
Laurent Saboret 206c29a68a Create Qt Point Set demo from Qt Polyhedron demo and Poisson MFC demo.
Step 4:
- added xyz_plugin to load/save .xyz/.pwn point set files
2009-04-06 11:53:44 +00:00
Laurent Saboret 0760ac6624 Create Qt Point Set demo from Qt Polyhedron demo and Poisson MFC demo.
Step 3:
- Revert filenames of files identical in the Polyhedron demo (=> easier comparison)
- Merge changes in Polyhedron_demo-refactoring up to r48617
2009-04-06 08:40:03 +00:00
Laurent Saboret f6ddd6ae06 Port to Linux/g++ 2009-04-03 17:51:59 +00:00
Laurent Saboret e15091df91 Create Qt Point Set demo from Qt Polyhedron demo and Poisson MFC demo.
Step 3:
- Revert filenames of files identical in the Polyhedron demo (=> easier comparison)
- Merge changes in Polyhedron_demo-refactoring up to r48617
2009-04-03 17:15:13 +00:00
Laurent Saboret 9cea4c0899 Create Qt Point Set demo from Qt Polyhedron demo and Poisson MFC demo.
Step 2:
- Can load and save point sets (OFF format)
- Draw point sets
2009-04-03 15:44:48 +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 89db6de696 Create Qt Point Set demo from Qt Polyhedron demo and Poisson MFC demo.
Step 1:
This is a subset of experimental-packages/Polyhedron_demo-refactoring r48588 with only the features that make sense for the Point Set demo.
- 'Polyhedron demo' renamed as 'Point Set demo'.
- Removed Nef support.
- Removed boolean operations, curvature estimation, parameterization, kernel, orientation, self-intersection, subdivision algorithms.
- Kept PCA plug-in. Will change it to compute bounding sphere, bounding box, centroid and min ellipsis.
- Kept mesh simplification plug-in. Will change it to simplify point sets.
- Kept remeshing plug-in. Will change it to Poisson and APSS plug-ins.
- Kept Scene_polygon_soup class. Will change it to a point set class.
2009-03-31 14:55:24 +00:00
Laurent Saboret 8b0cf449c1 Temporary:
Turn on traces to debug segmentation fault in test suite (non reproductible on my machine).
2009-03-23 14:33:04 +00:00
Laurent Saboret 802e03ffa6 Temporary:
Turn on traces to debug segmentation fault in test suite (non reproductible on my machine).
2009-03-19 11:11:14 +00:00
Laurent Saboret a1ca106809 Speed up test suite (by a factor 3) 2009-03-16 17:48:49 +00:00
Laurent Saboret 63aab5b714 Split Surface_reconstruction_3 into Point_set_processing_3 and Surface_reconstruction_points_3 (part 4):
Update documentation and package_info.
2009-03-16 13:50:28 +00:00
Laurent Saboret 6910d12b97 Split Surface_reconstruction_3 into Point_set_processing_3 and Surface_reconstruction_points_3 (part 2):
Fixed compilation errors with Visual C++.
2009-03-13 17:26:14 +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 b63c026685 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:31 +00:00
Laurent Saboret 6b51c1f330 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:15:24 +00:00