Commit Graph

480 Commits

Author SHA1 Message Date
Mael Rouxel-Labbé 406698f769 Added sphere to sphere mapping (wip)
Up to the overlay computation (missing the end)
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 64730a7617 Improved validity check on cones and seams 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé c2d04efb2f Misc minor changes 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 80f673fa24 Improved cone locating functions 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé adb03e8ee9 Moved orbifold type-related functions to the corresponding helper file 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé b052d3bc5f Distinguished between the first cone and the second cone
Thus if the input cones are C_0 ... C_3, then the seam is going from C_0 to C_3.
This is important because the result is not always identical.

Plugin of the demo decides randomly for now, which is not satisfying.
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 6fdd28e856 Changed the angles of Orbifold again
By swapping s and t when filling the matrix, we obtain the same (and correct)
effect. Still, not very satisfying code.
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 9eec3408d5 Added cotangent weights for Orbifold embeddings 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé c2687ddab1 Improved some output and error checking code in orbifold 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 954daa05a4 Misc minor changes 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé c5fa681302 Output matrices to a specific folders 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 5e6e42500e Flipped the sign of MVC weights in Orbifold
Does change anything, but it's more consistent with the other code
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé b026f1c512 Fixed Orbifold angles values
The way we walk the seam in sort of the 'inside out' of the way it is done
in matlab code and thus the angle should be flipped.

Maybe there is a nicer change (walking the seam from outside?)
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 05647d928a Added Orbifold Tutte Embeddings to the polyhedron demo 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 71abaa7249 Added orbifold type IV 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 00d2fa1817 Fixed wrong assertion 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 5720e83c32 Added a comment in LSCM about the wrong use of Eigen_type
Replacing OpenNL with Eigen in the LSCM parameterizer is todo
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 58b863101b Fixed using symmetric sparse matrices in Orbital Tutte Embeddings
The matrix is not actually symmetric. Note that this didn't produce any issues
because we retrieved the eigen_type, which is a matrix type of eigen (that is,
not a symmetric matrix).
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 619c27db35 Added Orbifold types II and III 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 1b8559d5ce Misc minor changes 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé d62927d9e7 Removed empty lines from the constraint matrix
Default linear solvers are Umfpack and Eigen SparseLU
2017-06-22 16:15:57 +02:00
Andreas Fabri 92accde094 static_cast to avoid warnings 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 37e35eeea8 Misc minor changes 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé df70fedbcf Small changes in matrix size in SMP's orbital
Preparation to clean the matrix A from its useless (but not harmful in practice)
empty lines.
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 9a148a4a06 Simplified SMP's CMakeLists.txt 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé c62e503a39 Added Orbital Tutte parameterizer and an example
Only the orbifold type I method with MVC coefs is implented in this commit
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé f910d2ee60 Misc minor changes 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé ccdf3a6bf4 Added some safety guard when vertices are given to border paramterizers
to make sure that the given vertices are on the same border/connected component.
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé de433db108 Fixed some headers still using vertices(mesh) or faces(mesh)
...which grabs too many entities while we only want a connected component.
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 20bcc9233c Improved the initial parameterization of ARAP
and gave bool_pmap its own header
2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé 8e77c99653 Fixed seam meshes not always picking the longest border in a connected component 2017-06-22 16:15:57 +02:00
Mael Rouxel-Labbé cde65fd465 Fixed validity tests considering all the faces of the mesh
and not a single connected component
2017-06-22 16:15:57 +02:00
Andreas Fabri 7e9ecd5cf2 more backticks 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 66a2119da6 Documentation changes for SMP 2017-06-22 16:14:55 +02:00
Andreas Fabri 59a04915db fixes 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé a8f82f4382 Merged the ParameterizedTraits_3 and BorderParameterizer_3 concepts
Incident changes:
- Angle computations helper, Error_code and kernel_traits<TriangleMesh> live in
  their own file
- Doc and examples changes
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 8922e36408 Fixed compilation after moving headers 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 4f811d1dbe Moved all headers into a Surface_mesh_parameterization folder
This is simply the move + adding a convenience file at the root, and no other
changes, thus it does not compile.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé e96c474f78 Documentation changes for SMP 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 7ce8fdf3f6 Misc minor changes 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 2ee44c1c15 Added discrete authalic and ARAP to the Polyhedron demo 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé a8492d987f Reworked the way corner vertices are passed to the square_border_parameterizer
and added an example of usage.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 0438d6d34d Fixed some doc warnings 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 6f40a05af1 Removed an unused error code 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé fcfe9662af Renamed the function parameterize_border() of border parameterizers
to the simpler "parameterize()"
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé a52040fb4e Added is_one_to_one_mapping() to all parameterizers 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 8da6683ef0 Misc minor changes
Some doc, some typos, some indentation...
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé b17c60f4d8 Fixed const correctness in SMP 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 62979fc9b5 Improved SMP's documentation 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé bb9230f4ff Fixed discrete authalic example
This example is now used to illustrate the use of various border parameterizers
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 656d996e6f Fixed Circular and Square border parameterizer
-- Reintroduced the uniform circular border parameterizer for consistency
-- Fixed the Square border parameterizer to work with BGL meshes
-- The square border parameterizer can now be given four vertices that will
   be used as corners of the square border
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 013e32d314 Replaced calls to num_vertices() 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé ae06b044ce Improved existing SMP code
-Factorized the different tools to construct vertices and faces container in
a single class.
-Updated all examples accordingly and replaced the polylines output by an OFF
output across all files.
-Some other minor changes (missing includes, indentation, typos, etc.)
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 3245d726e3 Misc minor changes 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé c71d8285d0 Updated the examples of the SMP to work with the new Seam mesh
Also a small change in the Polyhedron demo
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 922d072609 Added flip and non-valid parameterization tests
MVC post processor is only called in ARAP if the parameterization is no valid.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 6d47ef3735 Fixed the MVC post processor overzealously constraining all borders
As for the 'real' MVC parameterizer, only one border must be constrained.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé b8d7bd24c0 Fixed using ARAP's border parameterizer in the initial MVC parameterization 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 12344fd325 Fixed the brute force 'simpleness' test of the borders in the ARAP post processor 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé a7da445497 The initial parameterization in ARAP_param now depends on the number of borders 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé fcdc127a08 Fixed a function duplicated over different files 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 3644a91f82 Added a way to write uvmaps into OFF files 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 4a9f01685a Fixed not using the solver member in MVC_post_processing_3 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 30a7d7843f Updated Surface_mesh_parameterization's documentation 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé e5dcc1c9a0 Properly factorized the Containers_filler internal class 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 7e7ff03831 Changed some comments 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé e8d22d0f24 Some progress towards compilation of ARAP with a seam_mesh
Most of the issues come from the incomplete seam_mesh graph traits now.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 320e40d6c4 Fixed some return type in the MVC post processor 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 8afe8af986 Fixed choice of fixed vertices for different types of lambda
Not too sure about that change, but it (sort of) makes sense to only
fix one point when lambda !=0, it works, and looking -now- at the other
branch on ARAP, they had done the same.
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 95bc5f4b91 Changed some comments 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 8a1688e13f Fixed include directives 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé b4c0784a67 Small changes to make ARAP work with a Surface_mesh
Note that this requires the boost hash maps of commit ec7aa45
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 23ac9a95c1 Fixed compilation of the ARAP paramaterizer
The location of Misc_conic.h was changed by the merge of master
2017-06-22 16:14:55 +02:00
Sébastien Loriot 8a8948ebed update doc 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 92496eacfc Split post processing functions away from ARAP parameterizer's class 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé a83fecb3c7 Changed some comments 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 0f10528369 Added post processing that (attempts to) fix potential flips in the ARAP param 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 17e3477151 Changed some comments 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé c73c0c904e Reworked the counter of the energy-minimizing loop 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé e738fc6dac Added a macro to choose which vertices are fixed 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé fd4e709c1b Added a way to compute 'a' using the algeabric kernel to solve the cubic eq 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 8cbd200250 Changed some comments 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 81cfaeb944 Fixed using the wrong coordinates in the RHS of the system and the energy
Global coordinates were used instead of UV coordinates...
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 18091ce6df Removed superfluous references to property maps 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 4388da9582 Added draft of the local/global mesh parameterization algorithm 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 688340cf50 Fixed a comment 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 65b2708daf Removed the superfluous uv_map from ContainersFiller 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé c478443b3e Fixed const correctness 2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé 79490fd8b0 Cleaned code (indentation, whitespace, etc.) 2017-06-22 16:14:55 +02:00
Maxime Gimeno c403f3c688 Fix remaining bugs and add a "highlighting" of the current patch being projected. 2017-06-22 16:12:26 +02:00
Maxime Gimeno ee8f7d0dff Fix the LSCM Parameterizer 2017-06-22 16:12:26 +02:00
Maxime Gimeno fd8336ecf8 Implementation of the seaming. 2017-06-22 16:12:26 +02:00
Maxime Gimeno 407bb3e675 Restore Parameterization_plugin with the BGL API. 2017-06-22 16:12:26 +02:00
Andreas Fabri 63a5c1fd0b still WIP 2017-06-22 16:12:26 +02:00
Andreas Fabri c03ca8fb63 broken code, as I ask Sebastien to find the compile timer error 2017-06-22 16:12:26 +02:00
Andreas Fabri f6f52e01b0 cleanup and fix of Simple_parameterization.cpp 2017-06-22 16:12:26 +02:00
Maxime Gimeno 63abf210c9 WIP parameterization_plugin + fixes for parameterization files. 2017-06-22 16:12:26 +02:00
Andreas Fabri f7b826125b Add the possibility to pass the two vertices that are selected 2017-06-22 16:12:26 +02:00
Andreas Fabri 92be8f478d Add lscm.cpp 2017-06-22 16:12:26 +02:00
Andreas Fabri 45e19be366 Use property maps to store seam edges and vertices 2017-06-22 16:12:26 +02:00
Andreas Fabri 902ff15f87 fix target(halfedge, Seam_mesh) for when the halfedge is on the border of a seam edge 2017-06-22 16:12:26 +02:00
Andreas Fabri 9cc84e828c Add an initial User Manual section for Seam_mesh 2017-06-22 16:12:26 +02:00
Andreas Fabri 162759ca87 polish 2017-06-22 16:11:38 +02:00
Andreas Fabri ac11cf8032 deal correctly with a patch 2017-06-22 16:11:38 +02:00
Andreas Fabri 36530e3f98 polish 2017-06-22 16:11:38 +02:00
Andreas Fabri b11385455f Fix target(Seam_msh) 2017-06-22 16:11:38 +02:00
Andreas Fabri 82f2a2b4ca WIP 2017-06-22 16:11:38 +02:00
Andreas Fabri afc6476992 start rewriting the doc 2017-06-22 16:11:38 +02:00
Andreas Fabri fa68850338 Use Vertex_around_target_circulator again 2017-06-22 16:11:38 +02:00
Andreas Fabri 869dfbb1e9 finally it works with a Seam_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri a6a62bc4f6 index vertices inside parameterize() 2017-06-22 16:11:38 +02:00
Andreas Fabri b7c5d49689 clean Simple_parameterization.cpp 2017-06-22 16:11:38 +02:00
Andreas Fabri b077704d04 rename template parameter; remove files related to the mesh_patch class 2017-06-22 16:11:38 +02:00
Andreas Fabri 46ed3edf92 LSCM seems to work too 2017-06-22 16:11:38 +02:00
Andreas Fabri 6dc52b4166 port two parametrisation classes 2017-06-22 16:11:38 +02:00
Andreas Fabri 7901186856 remove Taucs support 2017-06-22 16:11:38 +02:00
Andreas Fabri 92a463bdcc split constructor of Seam_mesh in two functions 2017-06-22 16:11:38 +02:00
Andreas Fabri 99a3b99283 make connecteced_component work for Seam_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri 4a2344f0cc discrete authalic now works for Surface_mesh and for a Seam_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri e1089a9168 WIP: Add vertex_descriptor which is a kind of canonical halfede_descriptor 2017-06-22 16:11:38 +02:00
Andreas Fabri 1164cb14bf Discrete Authalic parametrisation now works for a Seam_mesh with borders and seams 2017-06-22 16:11:38 +02:00
Andreas Fabri b7cdb47463 WIP - lets get it working with the Seam_graph next 2017-06-22 16:11:38 +02:00
Andreas Fabri c746425f8c Authalic parametrization works with a Surface_mesh with border 2017-06-22 16:11:38 +02:00
Andreas Fabri 3d6b3ca909 fix 2017-06-22 16:11:38 +02:00
Andreas Fabri 4bd2f363d0 simplify code 2017-06-22 16:11:38 +02:00
Andreas Fabri b237249d0b deal with seam tree. so far seam must not touch the border 2017-06-22 16:11:38 +02:00
Andreas Fabri e90fbb9867 it seems to work with seams. need visual output next to inspect it 2017-06-22 16:11:38 +02:00
Andreas Fabri 871b831992 use halfedge and not vertex circulator 2017-06-22 16:11:38 +02:00
Andreas Fabri 37a32d6727 WIP 2017-06-22 16:11:38 +02:00
Andreas Fabri a09df5d2d2 simplify code 2017-06-22 16:11:38 +02:00
Andreas Fabri 9699e99162 make square border parameterizer work 2017-06-22 16:11:38 +02:00
Andreas Fabri d77bb6c242 make all parametrization methods work 2017-06-22 16:11:38 +02:00
Andreas Fabri f664cb4268 get it working for Surface_mesh 2017-06-22 16:11:38 +02:00
Andreas Fabri cb9f0aa21d fixes so that LSCM works as well 2017-06-22 16:11:38 +02:00
Andreas Fabri 3350d2871c simplify the border (will become complicated again later, but different) 2017-06-22 16:11:38 +02:00
Andreas Fabri 59dd85f56d simplify the border (will become complicated again later, but different) 2017-06-22 16:11:38 +02:00
Andreas Fabri 6399e49be0 use a property map for the uv values 2017-06-22 16:11:38 +02:00
Andreas Fabri 511add25fa introduce index property maps 2017-06-22 16:11:38 +02:00
Andreas Fabri 8721b58b1a towards a BGL API -- still a long way to go :< 2017-06-22 16:11:38 +02:00
Sébastien Loriot 50510c05ea add include directive for license of all GPL header files
done using:
ack-grep "^GPL" */package_info/*/license.txt -l | awk -F "/" '{print $1}' > /tmp/gpl_packages
for i in `cat /tmp/gpl_packages | \
          grep -v Operations_on_polyhedra | \
          grep -v Algebraic_kernel_for_circles | \
          grep -v Algebraic_kernel_for_spheres | \
          grep -v Polyhedron_IO`;
do
  echo $i
  python Scripts/developer_scripts/add_license_in_pkg_header.py $i
done
python Scripts/developer_scripts/add_license_in_pkg_header.py Operations_on_polyhedra Polygon_mesh_processing
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_circles Circular_kernel_2
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_spheres Circular_kernel_3
python Scripts/developer_scripts/add_license_in_pkg_header.py Polyhedron_IO Polyhedron
2017-01-19 15:20:25 +01:00
Andreas Fabri 8bf639ab94 static -> CGAL_STATIC_THREAD_LOCAL_VARIABLE 2016-12-01 16:23:46 +01:00
Simon Giraudot da9422e77b Warning fix: variable may be used uninitialized 2015-12-17 10:54:36 +01:00
Simon Giraudot d77dd257ef Warning fix: unused parameter 2015-12-17 10:53:21 +01:00
Sébastien Loriot f151025380 fix the bad conflict resolution 2015-09-26 18:07:36 +02:00
Sébastien Loriot da650cbd1c Merge branch 'old/CGAL-Solver-packages-GF' into CGAL-Solver-package-GF 2015-09-26 15:47:54 +02:00
Simon Giraudot ba619c8a0d Include Eigen default parameter in manual 2015-09-18 15:33:12 +02:00
Simon Giraudot 6ef242b7af Remove useless duplicate code, use default template parameter to call Eigen_solver_traits 2015-09-18 10:30:13 +02:00
Simon Giraudot 2b676edd1e Clean up least square solver wrapper 2015-08-24 15:02:51 +02:00
Simon Giraudot 6d1332c3fa Replace OpenNL by Eigen Conjugate Gradient (not least squares yet). More than 2x speed up. 2015-08-10 07:54:01 +02:00
Simon Giraudot db4a974f64 Eigen interface for LSCM 2015-08-07 11:55:00 +02:00
Andreas Fabri 8ae42933c7 Do not explain OpenNL and say that LSCM has no parameter for a solver 2015-04-13 16:37:40 +02:00
Laurent Rineau 495ed0b6ab Merge remote-tracking branch 'origin/CGAL-Less_warnings-GF'
Fix various warnings.

Tested in CGAL-4.5-Ic-97. Approved by the Release Manager.
2014-07-16 17:48:56 +02:00
Andreas Fabri c0be9a38d3 initialize to avoid warning 2014-07-11 09:27:10 +02:00
Sébastien Loriot 2892c2fb4e Merge branch 'Surface_modeling-new_package-GF-old' into Surface_modeling-new_package-GF
Conflicts:
	Documentation/biblio/geom.bib
	Documentation/doxyassist.xml
2014-04-08 14:41:09 +02:00
Sébastien Loriot 6f3c2d1151 pre-factor -> factor 2014-02-17 09:12:25 +01:00
Andreas Fabri 6ecba63bb1 Mostly add #includes 2013-09-14 19:31:13 +02:00
Sébastien Loriot b352ca7410 Merge branch 'Surface_modeling-new_package-GF-old' into Surface_modeling-new_package-GF 2013-08-06 16:34:47 +02:00
Sébastien Loriot d282ade623 use \cgalCite instead of \cite
using perl -i -pe 's/\\cite\s*{?([a-zA-Z0-9:-]+)}?/\\cgalCite{$1}/g'
2013-08-05 18:25:26 +02:00
Sébastien Loriot d9cf655db1 Merge branch 'Surface_modeling-new_package-GF-old' into Surface_modeling-new_package-GF
Conflicts:
	Documentation/doxyassist.xml
	Documentation/header_package.html
	Polyhedron/demo/Polyhedron/CMakeLists.txt
2013-06-27 08:55:59 +02:00
Andreas Fabri cfd69b1490 long/int -> size_t 2013-02-27 11:44:55 +01:00
Sébastien Loriot c8fb9844aa Merge branch 'gsoc2011-surface-modeling-Yzju' into Surface_modeling-new_package-GF
Conflicts:
	.gitattributes
	AABB_tree/doc_tex/AABB_tree_ref/AABBGeomTraits.tex
	AABB_tree/doc_tex/AABB_tree_ref/AABBTraits.tex
	AABB_tree/dont_submit
	AABB_tree/test/AABB_tree/AABB_test_util.h
	AABB_tree/test/AABB_tree/aabb_correctness_triangle_test.cpp
	Arrangement_on_surface_2/include/CGAL/Arr_point_location/Trapezoidal_decomposition_2_impl.h
	Boolean_set_operations_2/examples/Boolean_set_operations_2/bezier_traits_adapter2.cpp
	Installation/cmake/modules/CGAL_CreateSingleSourceCGALProgram.cmake
	Installation/cmake/modules/CGAL_Macros.cmake
	Installation/cmake/modules/CGAL_SetupDependencies.cmake
	Linear_cell_complex/examples/Linear_cell_complex/linear_cell_complex_3_triangulation.cpp
	Maintenance/svn_server/hooks/Mail/Sender/CType/Ext.pm
	Polyhedron/demo/Polyhedron/CMakeLists.txt
	Polyhedron/demo/Polyhedron/Polyhedron_demo_normal_estimation_plugin.cpp
	Polyhedron/demo/Polyhedron/Polyhedron_demo_point_set_outliers_removal_plugin.cpp
	Polyhedron/demo/Polyhedron/data/cow.off
	Principal_component_analysis/test/Principal_component_analysis/linear_least_squares_fitting_segments_3.cpp
	Surface_mesh_parameterization/examples/Surface_mesh_parameterization/CMakeLists.txt
	Surface_reconstruction_points_3/include/CGAL/Poisson_reconstruction_function.h
2013-02-07 17:00:00 +01:00
Philipp Möller e271a13a33 Document files in Surface_mesh_parameterization 2012-12-04 14:25:00 +01:00
Sébastien Loriot 4ec9529581 Merge branch 'doxy-port-pmoeller'
Conflicts:
	.gitattributes
	Surface_reconstruction_points_3/include/CGAL/Poisson_reconstruction_function.h
	Surface_reconstruction_points_3/include/CGAL/Reconstruction_triangulation_3.h
	Surface_reconstruction_points_3/include/CGAL/k_nearest_neighbor.h
2012-11-27 10:05:41 +01:00
Sébastien Loriot bfca42081d add missing backquotes in cgalModels 2012-11-23 09:55:55 +01:00
Sébastien Loriot ae8362b7d6 replace \cgalModels ::FOO by \cgalModels `FOO`
using:
 perl  -pi -e 's/\\cgalModels\s+::([A-Za-z0-9_:]+)\s*$/\\cgalModels `$1`\n/'
2012-11-23 09:37:53 +01:00
Sébastien Loriot 128b02abb8 update CGAL custom doxygen macros
corresponds to a run of the script Documentation/conversion_tools/rename_macros.sh
+manual edit of doxyassist.xml and pkglist_filter.py
2012-11-14 00:31:05 +01:00
Alex Tsui a11d3408d6 Fixed a bug to properly check whether a facet is seaming. 2012-11-06 20:12:41 +00:00
Alex Tsui c06c1c09d9 Fixed a bug where we try to deref a reference in get_decorated_mesh(). 2012-11-06 19:45:28 +00:00
Sébastien Loriot 3c8f53b7bf fix reference manual 2012-10-22 15:48:42 +00:00
Andreas Fabri b8b7a5dad3 get rid of spurious XX 2012-10-03 17:02:54 +00:00
Andreas Fabri b7e754923a polish 2012-09-24 09:52:38 +00:00
Andreas Fabri 65ac45eb87 \cite, more backquotes, and less strategy 2012-09-14 15:30:20 +00:00
Andreas Fabri 2bcbae97ba many changes 2012-09-14 14:50:52 +00:00
Philipp Möller 5bed1b15c5 Add basic Surface_mesh_parameterization, grouping and some moves to
internal are still missing
2012-09-14 11:15:18 +00:00
Sébastien Loriot 5b59f2ad8d merge from next 2012-07-30 10:25:24 +00:00
Marc Glisse 10d791295d complex.h may #define complex :-( 2012-07-28 10:47:13 +00:00
Marc Glisse 82351c83c0 Missing standard include. 2012-07-28 06:57:31 +00:00
Marc Glisse 4d4f9adb55 Missing standard includes. 2012-07-27 12:05:53 +00:00
Sébastien Loriot 40f237b70d merge from next 2012-07-26 07:24:02 +00:00
Laurent Rineau 5eb0734d02 Remove a warning: var set but not used 2012-04-16 15:24:14 +00:00
Philipp Möller 5e15466696 BUGFIX: Memory leak in Parameterization_mesh_feature_extractor
Parameterization_mesh_feature_extractor wasn't cleaning up the BorderS
it allocated.
2012-04-16 14:36:03 +00:00
Sébastien Loriot 75e23bd978 merge from next 2012-03-26 13:41:01 +00:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Gaël Guennebaud 2a903f8d05 fix compilation 2011-09-20 09:24:55 +00:00
Andreas Fabri a4927e5d6a BUGFIX: One has to choose the lexicographically smallest/largest vertex 2011-08-25 14:42:57 +00:00
Yin Xu 6ac2a8c273 executable version of arap modeling 2011-07-01 13:06:32 +00:00
Yin Xu 0590793d20 Write a new example as mentioned in mail;
Add pre-factor function into taucs so that it can do pre-computation and matrix multiplication seperately.
2011-05-27 08:01:31 +00:00
Sébastien Loriot a2cec87f46 replace remaing fabs in include files by CGAL::abs 2011-02-18 15:37:40 +00:00
Andreas Fabri dd0f7e72e1 Use CGAL::abs instead of fabs 2011-02-16 14:17:47 +00:00
Andreas Fabri 08129fab91 On Windows use _mktemp instead of tempnam 2010-08-20 15:51:40 +00:00
Sébastien Loriot dec70b56a3 bug-fix to use a Polyhedron instanciated with Polyhedron_traits_with_normal 2010-07-13 14:34:21 +00:00
Sébastien Loriot 52317dd49f add python script (replace_CGAL_NAMESPACE.py) to replace CGAL_BEGIN_NAMESPACE and CGAL_END_NAMESPACE
by namespace CGAL { and } //namespace CGAL. in all .h and .cpp files
in a directory.
Apply it to all packages in the trunk
Remove macro definition from the config.h file.
2010-06-09 07:37:13 +00:00
Andreas Fabri 29fc8af5f7 Classes deriving from Fixed_border_parameterizer need that the 'using' statement is protected (only g++ 3.4.6 and 4.4 in the 3.7-Ic-60 testsuite) 2010-05-14 06:31:36 +00:00
Andreas Fabri 5778f48061 Add 'using' statements for ansi compliance 2010-05-11 08:34:30 +00:00
Sylvain Pion 85dc12f2a7 Remove empty lines at beginning and end of files
(apply Scripts/developer_scripts/remove_empty_lines.pl).
2010-02-01 12:55:28 +00:00
Stéphane Tayeb 8dceee4164 Add include<CGAL/assertions.h> in *_assertion files. 2009-10-07 13:16:13 +00:00
Stéphane Tayeb 770492c1c7 Use new version of script create_assertions.sh to generate *_assertions.h files.
Diffs are:
 * #undef added
 * in old files, (void)0 is replaced by static_cast<void>(0)
 * in old files, lines as "#  define CGAL_xxx_assertion 1" are added
 * in point_set_processing_assertions.h, surface_mesh_parameterization_assertions.h, surface_reconstruction_points_assertions.h, "|| defined(CGAL_NDEBUG)" is replaced by "|| defined (NDEBUG)"
 * protective macros (if any) are removed
 * included files if any (<CGAL/assertions.h>, <CGAL/trace.h>) are removed
2009-10-07 07:49:44 +00:00
Laurent Saboret 786f9d5768 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:38:15 +00:00
Laurent Saboret 689118b8d1 Fixed misspelling: "an halfedge" -> "a halfedge" 2009-03-18 08:59:29 +00:00
Laurent Saboret d0f63a9ee1 Automatic documentation by generate_reference_manual 1.1:
* Bug fixes:
- Document properly the template parameters of functions. No separate Parameters section.

* Improved formatting of functions and methods:
- Shorter latex code and shorter printed documentation
- Fixed indentation
- Parameter names are in italic instead of bold

* Words surrounded by stars are formatted in bold.
2009-02-26 11:05:12 +00:00
Laurent Rineau a4215bd4ea Fix conditional compilation of TAUCS features in
Surface_mesh_parametrization, after revisions 46743-46745.
2008-11-07 15:30:00 +00:00
Laurent Saboret 81f25c324c Renamed (private) class Taucs_number as Taucs_traits. 2008-10-17 15:52:15 +00:00
Laurent Saboret 6595450524 Optimization of speed and memory footprint 2008-10-13 09:32:09 +00:00
Laurent Saboret 1d95e936d2 Optimization of speed and memory footprint 2008-10-13 08:34:19 +00:00
Laurent Saboret a3c891df05 Windows specific: fixed crash with TAUCS on large linear systems:
- increased stack size
- added Win32_exception_handler protection to catch stack overflows
2008-10-13 08:33:33 +00:00
Laurent Saboret 68810e7e46 Fixed misspelling 2008-10-08 16:33:37 +00:00
Laurent Saboret 3956f60d73 Print TAUCS traces if DEBUG_TRACE >= 2. 2008-09-25 15:11:02 +00:00
Laurent Saboret 544547bc81 Added trace 2008-08-26 14:43:28 +00:00
Laurent Saboret a1627b003f Removed unnecessary includes of CGAL/basic.h
Enforced CGAL_NDEBUG rule:
- code under include/CGAL/ and src/ must not use NDEBUG and assert(), but CGAL_NDEBUG and CGAL assertion macros.
- code under demo/, examples/ and test/ must use NDEBUG and assert().
2008-08-21 11:57:02 +00:00
Laurent Saboret 42f40a7fc2 Changed the way parameterization errors are reported. Now:
- there is a clear distinction between internal errors (aka bugs) and not supported input files (typically models which are not topological discs),
- internal errors trigger a test suite failure.

The main consequence is that OpenNL errors trigger now a test suite failure.
2008-08-20 14:47:53 +00:00
Laurent Saboret fa30accac8 Surface_mesh_parameterization pre-conditions and post-conditions are now always checked,
in order to catch input meshes that do not respect them and avoid crashes in Release mode: 
- For fixed border parameterizations:
 Preconditions:
     check that the border is mapped onto a convex polygon.
     check that the input mesh is triangular (expensive check).
     check that the input mesh is a surface with one connected component (expensive check).
 Postconditions:
     check one-to-one mapping.
- For free border parameterizations:
 Preconditions:
     check that the input mesh is triangular (expensive check).
     check that the input mesh is a surface with one connected component (expensive check).
 Postconditions:
     check one-to-one mapping.
2008-08-19 15:50:40 +00:00
Sylvain Pion 79864c0c8e Remove Arity_tag. 2008-07-22 12:29:01 +00:00
Sylvain Pion 2eb0d8f9e9 certainly() -> possibly(). 2008-07-14 11:16:41 +00:00
Sylvain Pion eff6efd3af CGAL_NULL and CGAL_NULL_TYPE are now constant macros, so replace them by:
- CGAL_NULL -> NULL
- CGAL_NULL_TYPE -> CGAL::Nullptr_t (typedef to const void *)
2008-07-12 21:58:52 +00:00
Sylvain Pion 9d7a609ff2 Make assertions trigger an error only for *certain* conditions (using CGAL::certainly()).
This is useful for interval arithmetic code.
(replay of r44002 with the header order hopefully fixed)
2008-07-10 21:49:17 +00:00
Sylvain Pion 2b4ebf01f7 Undo r44002 as it's buggy 2008-07-06 20:47:29 +00:00
Sylvain Pion 514a17ad4f Improve the interaction of assertions and interval computations.
Things like "CGAL_assertion(denominator != 0)" produced assertion failures for no gain.
So now, the assertion is triggered only if the condition is certain, using CGAL::certainly().
That is, change the following in all assertion files :
  ((EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
to :
  (CGAL::certainly(EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
2008-07-06 17:05:47 +00:00
Laurent Saboret b59996cee6 Removed obsolete doxygen comment 2008-03-21 16:11:18 +00:00
Laurent Saboret f124fca6b9 Minor change 2008-03-21 16:04:58 +00:00
Laurent Saboret e2f3e93490 Update to generate_reference_manual 1.0 2008-02-22 13:03:40 +00:00
Laurent Saboret 70a58205c3 Fixed \ccVariables support 2008-02-20 11:46:17 +00:00
Laurent Saboret 705e0b1362 Redo r41603 and r41552 (#ifdef CGAL_USE_TAUCS) for SP 2008-01-25 17:51:55 +00:00
Laurent Saboret a36cb5d3fd Update to doxygen 1.5 and generate_reference_manual 0.8: methods implemented out of a class declaration should not repeat the doxygen documentation 2008-01-25 16:32:47 +00:00
Laurent Saboret d21010bde0 Undo r41603 and r41552: using global flags like CGAL_USE_TAUCS breaks generate_reference_manual 2008-01-25 16:30:48 +00:00
Sylvain Pion b24108f5fd Remove #include <cassert> from everywhere under include/CGAL/.
CGAL code has to use CGAL assertions instead.
2008-01-20 18:47:19 +00:00
Sylvain Pion 65a5ac690f Protect using CGAL_USE_TAUCS 2008-01-14 17:10:22 +00:00
Sylvain Pion 4e76054a50 Protect by CGAL_USE_TAUCS. 2008-01-12 20:31:14 +00:00
Sylvain Pion d49e006c53 Remove default argument "0" to calls to assertion_fail() et al,
as the default is now the empty string "".
It should fix the problem that we have lost the assertion messages
(seeing "what():  basic_string::_S_construct NULL not valid" instead),
for packages that use package-specific assertion macros.
2007-12-21 21:58:27 +00:00
Andreas Meyer fdeedcf8b0 some low level code cleanup. renamed
* CGAL_error to CGAL_error_msg
* introduced a macro CGAL_error()
* added some words about CGAL_error to the developers manual
* renamed most of assert(x) into CGAL_assertion(x)
* renamed exit(x) with x != 0 , CGAL_assertion(false) and assert(false) into CGAL_error
* CORE left untouched, OpenNL changed
2007-11-07 16:51:18 +00:00
Laurent Saboret a661ae2211 Regenerated Reference Manual with generate_reference_manual 0.7.5. 2007-09-07 15:27:39 +00:00
Laurent Saboret 97fa913995 Port to Linux and Windows 64 bits 2007-08-28 15:16:55 +00:00
Sylvain Pion 4da7713aa8 Remove obsolete config flag CGAL_CFG_NO_STDC_NAMESPACE and rename
its dependant macro CGAL_CLIB_STD to "std".
2007-08-08 15:59:25 +00:00
Laurent Saboret a1e58fff56 Port to Linux 64 bits 2007-06-14 15:38:24 +00:00
Laurent Saboret 80d123cd94 Fixed bug found by kevin.kai.xu@gmail.com (redefinitions of _cgal_taucs_available_memory_size) by declaring all functions inline. 2007-06-07 14:10:24 +00:00
Laurent Saboret 67cae5acb5 Fixed warning w/ gcc 4.2 2007-05-30 15:31:15 +00:00
Laurent Saboret 0a6adf43bf Include CGAL/auto_link/TAUCS.h.
Better error handling.
2007-05-24 14:47:03 +00:00
Laurent Saboret ee4fa12f50 Fix of taucs_available_memory_size() in TAUCS for CGAL 3.3 alpha 2007-05-24 14:46:39 +00:00
Laurent Saboret 72793080fd Workaround bug in VC++ 2005 express edition SP1: see "Recent versions of the Qt library source give errors on compilation" at http://support.microsoft.com/?scid=kb%3Ben-us%3B928957&x=15&y=11# 2007-05-11 13:41:52 +00:00
Laurent Saboret a8287d45a2 Point_3 type must be protected 2007-05-11 13:40:47 +00:00
Laurent Saboret c77455015c Fix of taucs_system_memory_size() and taucs_available_memory_size() in TAUCS for CGAL 3.3 alpha 2007-05-09 08:24:04 +00:00
Laurent Saboret f29be78532 Commented out traces 2007-04-24 13:34:11 +00:00
Laurent Saboret c02f0947e2 Fixed g++ warning about tempnam() being deprecated 2007-04-24 13:33:51 +00:00
Laurent Saboret 8481fa282c Fixed compilation error introduced in r38419 2007-04-24 09:05:22 +00:00
Laurent Saboret 6c1560542a Fixed 'deprecated conversion from string constant to char*' warning with g++ 4.x 2007-04-23 13:42:37 +00:00
Laurent Saboret 7c2497c5d0 More spell checking 2007-04-23 12:11:29 +00:00
Andreas Fabri 2ee2c6877b removed unused parameters 2007-03-17 09:28:37 +00:00
Joachim Reichel 4f47903a25 moved src/Core to src/CGALCore
moved include/CORE to include/CGAL/CORE
moved include/OpenNL to include/CGAL/OpenNL
renamed libcore++ to libCGALcore++
2007-03-13 18:10:39 +00:00
Andreas Fabri fb549aaca0 suppress warnings by commenting unused parameters 2007-03-12 12:15:00 +00:00
Laurent Saboret be8a4eb8a8 Initialize m_is_valid when expensive preconditions are off! 2007-01-15 15:17:08 +00:00
Laurent Saboret 258df72389 Fixed 2 crashing bugs in Parameterization_mesh_patch_3 (see fork.off and butterfly-2faces.off).
Added is_valid to ParameterizationMesh_3 concept.
Added back traces (if DEBUG_TRACE is defined).
2006-12-08 16:12:22 +00:00