Commit Graph

109 Commits

Author SHA1 Message Date
Philipp Möller 1adf441b18 Convert all CRLF files to LF 2012-12-03 18:44:24 +01:00
Sébastien Loriot a6fe048a25 restore the former API without the visitor introduced in 485d1bc5
Remove the visitor from the documented example
and move to undocumnet section the constructor with visitors
2012-11-28 12:05:03 +01:00
Sébastien Loriot 61b1fe57e9 remove warnings 2012-11-08 09:07:12 +00:00
Sébastien Loriot e717523d61 merge from next 2012-11-02 10:53:43 +00: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
Laurent Rineau db194534c7 First big patch to fix -Wunused-local-typedefs
-Wunused-local-typedefs is a new warning flag of gcc-4.7, and it will enabled
 by -Wall since gcc-4.8 (not yet released).

The fix is a big set of removals of unused typedefs (or comments, or moves,
depending on the context).
2012-08-01 13:29:16 +00:00
Laurent Rineau 70462d902b merge changes from next 2012-06-27 17:04:41 +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
Eric Berberich b918c8d88d merge from next 2012-06-18 08:37:55 +00:00
Andreas Fabri 3367cc5450 merged from next 2012-05-01 13:18:18 +00:00
Sébastien Loriot 8ea761f6e0 example use eigen by default instead of Taucs 2012-05-01 10:45:49 +00:00
Sébastien Loriot bc9efcf31a remove MKL requirements that is not needed 2011-12-26 11:37:58 +00:00
Sébastien Loriot 4a96d66d58 *add missing add_coef to Eigen_sparse_matrix
*update doc example of Eigen_solver_traits
*update CMakeLists.txt and examples/test to use Eigen instead of Taucs (when available)
2011-12-22 19:20:19 +00:00
Sébastien Loriot 9b75cd5506 require Eigen 3.1 or greater 2011-12-22 16:06:37 +00:00
Andreas Fabri eb1dc07750 Optimisations like interlacing of the Delaunay construction with Mesh_3 2011-09-27 17:39:30 +00:00
Sébastien Loriot 939d6dd941 document the fact that Poisson use Eigen by default 2011-09-22 17:26:13 +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
Andreas Fabri a732f53af6 Comment usage of MKL as it uses a wrapper from an experimental package 2010-03-26 08:32:15 +00:00
Laurent Rineau df4f43b09c Merged revisions 53827-53828,53838,53840-53841 via svnmerge from
svn+ssh://lrineau@scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.6-branch

........
  r53827 | lrineau | 2010-01-27 15:35:38 +0100 (Wed, 27 Jan 2010) | 15 lines
  
  Merge from trunk: 
    | ------------------------------------------------------------------------
    | r53821 | afabri | 2010-01-27 14:48:02 +0100 (Wed, 27 Jan 2010) | 1 line
    | 
    | Add random_shuffle to the high level functions
    | ------------------------------------------------------------------------
    | r53823 | afabri | 2010-01-27 14:50:23 +0100 (Wed, 27 Jan 2010) | 1 line
    | 
    | Remove random_shuffle from insert(b,e) functions as spatial_sort does it now
    | ------------------------------------------------------------------------
    | r53826 | afabri | 2010-01-27 15:24:29 +0100 (Wed, 27 Jan 2010) | 1 line
    | 
    | Remove random_shuffle from insert(b,e) functions as spatial_sort does it now
    | ------------------------------------------------------------------------
........
  r53828 | lrineau | 2010-01-27 15:37:25 +0100 (Wed, 27 Jan 2010) | 8 lines
  
  Merge from trunk:
    | ------------------------------------------------------------------------
    | r53822 | hemmer | 2010-01-27 14:50:01 +0100 (Wed, 27 Jan 2010) | 2 lines
    | 
    | use CGAL::cpp0x for tuple
    | 
    | ------------------------------------------------------------------------
........
  r53838 | lrineau | 2010-01-27 17:15:22 +0100 (Wed, 27 Jan 2010) | 2 lines
  
  Fix FindMKL: mkl_intel_thread does not have the suffix lp64 on Intel 64.
........
  r53840 | lrineau | 2010-01-27 17:16:34 +0100 (Wed, 27 Jan 2010) | 3 lines
  
  Fix FindTAUCS: if TAUCS_INCLUDE_DIR is set to "", then the following
  find_path(TAUCS_INCLUDE_DIR ...) does nothing.
........
  r53841 | lrineau | 2010-01-27 17:17:38 +0100 (Wed, 27 Jan 2010) | 2 lines
  
  Fix the detection of configured programs.
........
2010-01-27 16:43:07 +00:00
Laurent Rineau b4ab5b9a23 Merged revisions 53726-53727,53786 via svnmerge from
svn+ssh://lrineau@scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.6-branch

........
  r53726 | lrineau | 2010-01-22 14:11:32 +0100 (Fri, 22 Jan 2010) | 7 lines
  
  Merge from CGAL-3.5-branch:
    | ------------------------------------------------------------------------
    | r50580 | lsaboret | 2009-07-13 11:50:06 +0200 (Mon, 13 Jul 2009) | 1 line
    | 
    | Removed APSS from CGAL 3.5
    | ------------------------------------------------------------------------
........
  r53727 | lrineau | 2010-01-22 14:18:09 +0100 (Fri, 22 Jan 2010) | 1 line
  
  I forgot those files (remove APSS).
........
  r53786 | lrineau | 2010-01-25 23:36:18 +0100 (Mon, 25 Jan 2010) | 1 line
  
  Remove APSS from CGAL-3.6.
  The old code is now in
  /branches/unsorted-branches/Surface_reconstruction_points_3-with-APSS/
........
2010-01-26 09:30:46 +00:00
Laurent Rineau 6e731a1656 Merged revisions 53711,53718,53720,53724-53725,53728-53729,53731 via svnmerge from
svn+ssh://lrineau@scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.6-branch

........
  r53711 | lrineau | 2010-01-20 21:36:47 +0100 (Wed, 20 Jan 2010) | 2 lines
  
  Fix for Debian: Qt4 QGLViewer library is /usr/lib*/libqglviewer-qt4.so
........
  r53718 | lrineau | 2010-01-21 17:57:41 +0100 (Thu, 21 Jan 2010) | 10 lines
  
  Merge from trunk:
    |  New Revision: 53717
    |  Author: afabri
    |  Date: 2010-01-21 17:51:49 +0100 (Thu, 21 Jan 2010)
    |  
    |  Log message:
    |  
    |  Add operator for MSVC 2005/2008 to avoid a matching ambiguity
........
  r53720 | lrineau | 2010-01-21 18:06:33 +0100 (Thu, 21 Jan 2010) | 2 lines
  
  Merge r53719 from trunk (VC workaround)
........
  r53724 | lrineau | 2010-01-22 13:34:50 +0100 (Fri, 22 Jan 2010) | 10 lines
  
  Merge from trunk:
    |  New Revision: 53723
    |  Author: afabri
    |  Date: 2010-01-22 13:28:06 +0100 (Fri, 22 Jan 2010)
    |  
    |  Log message:
    |  
    |  Just FK would be nicer, but VC 2005 messes it up with an FK in a base class when compiling degenerate_test.cpp
    | 
........
  r53725 | lrineau | 2010-01-22 13:44:11 +0100 (Fri, 22 Jan 2010) | 2 lines
  
  Cartesian<float> gives warnings (about truncation from double to float).
........
  r53728 | lrineau | 2010-01-22 14:26:40 +0100 (Fri, 22 Jan 2010) | 2 lines
  
  Fix bashism ==
........
  r53729 | lrineau | 2010-01-22 15:10:25 +0100 (Fri, 22 Jan 2010) | 3 lines
  
  Re-add g++-3.4 in the list of supported compilers (to be synced with the
  testsuite and the CGAL web site).
........
  r53731 | lrineau | 2010-01-22 16:09:52 +0100 (Fri, 22 Jan 2010) | 11 lines
  
  Merge fmo trunk:
    | ------------------------------------------------------------------------
    | r53730 | afabri | 2010-01-22 16:07:59 +0100 (Fri, 22 Jan 2010) | 1 line
    | Changed paths:
    |    M /trunk/Spatial_searching/doc_tex/Spatial_searching/intro.tex
    |    M /trunk/Spatial_searching/doc_tex/Spatial_searching/main.tex
    | 
    | Moved ccAuthor right after the title
    | ------------------------------------------------------------------------
    | 
........
2010-01-22 15:16:54 +00:00
Nader Salman b0f068fca3 Added #include <CGAL/trace.h> where needed. 2009-11-05 15:16:51 +00:00
Stéphane Tayeb a7c00d7595 Add #include<trace.h> where needed (i think i broke that when i worked on *_assertions.h files) 2009-10-16 08:50:48 +00:00
Laurent Saboret 5dfcebf277 Optimization:
Use PARDISO *symmetric* solver. It is faster and uses less memory than symmetric one.
2009-10-02 14:04:18 +00:00
Laurent Saboret 1603d0c38f Removed assertions for accurate executions times 2009-10-02 12:59:34 +00:00
Laurent Saboret 744704e814 Port to Linux/g++ 4.3.1 2009-10-02 08:22:04 +00:00
Laurent Saboret 05b7683855 Added support of Intel MKL/Pardiso sparse linear solver:
* Poisson_reconstruction_function::compute_implicit_function() gets a new parameter = the solver to use (TAUCS by default).
* It uses SparseLinearAlgebraTraits_d traits classes and not Taucs_solver anymore.
* poisson_reconstruction example accepts a new parameter -solver = taucs or mkl.
2009-10-01 10:46:44 +00:00
Laurent Saboret 1e9a39e594 Added traces 2009-09-10 16:24:42 +00:00
Laurent Saboret d588cf76ce * Fixed bug introduced in r51683:
(Windows) developers compiling Surface_reconstruction_points_3 with CGAL 3.5 beta 1 need to compile with Surface_mesher package from svn in order to get r51028 bug fix (orientation of reconstructed meshes).
2009-09-10 15:58:55 +00:00
Laurent Saboret a39138a7a2 Partial fix of assertion failure "(x,y,z) is already inserted on surface" in make_surface_mesh():
* The bug could be reproduce by:
> poisson_reconstruction Compressor_top_clean_65kpoints.pwn out.off -sm_distance 0.75
or
> APSS_reconstruction robocat_deci.off out.off -smooth 6
(try several times)

* The fix is to set Implicit_surface_3's dichotomy error to make_surface_mesh's approximation distance/1000 (instead of /10). This makes make_surface_mesh() behavior more reproductible.

* My guess is that in both implicit functions are not smooth, and that make_surface_mesh's parameters must be tuned to make them appear smooth to the algorithm.
2009-09-10 09:34:16 +00:00
Laurent Saboret 4d92a1293a Temporary traces: turn on CGAL assertions 2009-09-10 09:16:24 +00:00
Laurent Saboret 4f375320a0 Fixed bug in make_surface_mesh(implicit surface, sphere, Manifold_tag) when the implicit surface crosses the sphere:
* The bug could be reproduced on Linux/g++ 4.3.1 by:
> poisson_reconstruction Compressor_top_clean_30kpoints.pwn Compressor-poisson.off
or
> APSS_reconstruction robocat_deci.off robocat_deci-apss.off
=> infinite loop that crashes when the process max memory is reached, or
   assertion failure "(x,y,z) is already inserted on surface", or
   assertion failure "A facet is not in conflict with its refinement point"

* The fix was to use Manifold_with_boundary_tag.
2009-09-08 14:08:23 +00:00
Laurent Saboret 10854a4ba1 Fixed compilation error due to the global change "CGALi" -> "internal". 2009-09-02 13:16:45 +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 fa8674926a Improved traces 2009-08-24 16:05:20 +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 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 aacac9bdf0 Improved performance traces 2009-07-30 12:55:44 +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 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 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 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