Sébastien Loriot
8301fdbf34
move endcond in the same namespace as cond
2015-12-10 23:28:18 +01:00
Sébastien Loriot
53e882ce19
move Weights.h
2015-12-10 23:25:50 +01:00
Sébastien Loriot
0ef509d892
remove unused class + add comment
2015-12-10 23:05:10 +01:00
Sébastien Loriot
c8ea231751
use Hole_filling weights
...
The API of the weight of Surface_mesh being documented
I needed to duplicate some small parts of the code
in /PMP/include/CGAL/internal/Hole_filling/Weight.h
2015-12-10 22:48:21 +01:00
Philipp Möller
79b7fc5081
Handle the INPUT cases where the whole include dir is used
2015-12-10 17:03:46 +01:00
Sébastien Loriot
77daf37540
remove duplicated weigthing functions and use those from PMP instead
2015-12-09 22:10:05 +01:00
Andreas Fabri
7ba2cf20e2
more typos fixed
2015-11-30 19:54:29 +01:00
Andreas Fabri
92830506aa
fix a type
2015-11-30 15:48:34 +01:00
Sébastien Loriot
5de303c389
Merge pull request #501 from janetournois/PMP-add_utility_functions-GF
...
PMP : add utility functions
2015-11-26 14:22:05 +01:00
Sébastien Loriot
3bafb67964
add missing typenames
2015-11-25 09:13:24 +01:00
Jane Tournois
91bec07354
fix tests to avoid preconditions failures
2015-11-24 14:19:37 +01:00
Jane Tournois
be6cd53f33
fix preconditions
2015-11-24 14:19:14 +01:00
Jane Tournois
a61fefc839
Merge branch 'PMP-length_of_border-GF-old' into PMP-length_of_border-GF
2015-11-23 17:19:30 +01:00
Jane Tournois
80496b82a4
bug fix : there can be constrained edges on the patch to be remeshed,
...
and unconstrained patch boundary edges
this commit introduces the possibility to constraint edges somewhere
on the patch while not constraining the boundary of the surface patch
to be remeshed
2015-11-20 15:53:29 +01:00
Jane Tournois
fc29daab0e
avoid pinching of the patch to be remeshed
...
this could happen in the case where we try to collapse an edge with
both its vertices on the patch boundary,
but the edge (both halfedges) itself is is_on_patch
2015-11-20 11:10:12 +01:00
Jane Tournois
da1833cbed
remove assertions
...
there is no guarantee that we won't generate self intersections
debug code now only displays the nb of self-intersections
2015-11-20 11:05:07 +01:00
Jane Tournois
1d94c84812
remove test in is_collapse_allowed because it's redundant
...
with first test if (!is_on_patch)
2015-11-20 11:02:20 +01:00
Jane Tournois
8cdfe7d75d
fix the use of self_intersections inside debug code
2015-11-19 17:29:22 +01:00
Jane Tournois
f358594e92
complete the dump function and its use in the Polyhedron demo
2015-11-19 17:27:36 +01:00
Jane Tournois
a76e8c3b70
document border_halfedges and remove_isolated_vertices
2015-11-17 17:32:51 +01:00
Sebastien Loriot
d605b6b95f
Merge pull request #457 from janetournois/Polygon_mesh_processing-local_remeshing-GF
...
Polygon mesh processing - add isotropic remeshing
2015-11-17 13:25:45 +01:00
Sebastien Loriot
bb85ae0179
Merge pull request #474 from afabri/BGL-suppress_warning-GF
...
suppress warning in boost as this has to be solved upstream
2015-11-17 13:21:05 +01:00
Jane Tournois
0a12beb5f9
Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF
2015-11-16 13:06:03 +01:00
Sebastien Loriot
093e381942
Merge pull request #475 from janetournois/PMP-fix_hole_filling_doc-GF
...
PMP triangulate_hole_polyline documentation
2015-11-13 12:38:12 +01:00
Jane Tournois
502ae1caa2
give a better description of OutputIterator
2015-11-13 10:27:26 +01:00
Jane Tournois
cf9eb32b9e
remove unused typedefs
...
(trigger warnings)
2015-11-13 10:00:55 +01:00
Jane Tournois
a5dd2fe12e
use new API of border_halfedges
2015-11-13 09:56:50 +01:00
Andreas Fabri
6706cc58c4
include header which pragma pushes a warning
2015-11-13 09:47:25 +01:00
Jane Tournois
d685d7ae77
introduce a better implementation of border_halfedges
...
available when a face_index_map is provided,
either as internal or as a named parameter
2015-11-12 16:45:26 +01:00
Jane Tournois
27bc02ebcf
Revert "fix compilation of split_long_edges for Polyhedron"
...
This reverts commit 213a280eef .
and propose another solution to deal with edges vs halfedges
2015-11-12 15:55:35 +01:00
Jane Tournois
213a280eef
fix compilation of split_long_edges for Polyhedron
...
and use halfedges everywhere
2015-11-12 14:53:47 +01:00
Jane Tournois
cc96188a60
add overload for complete mesh
2015-11-12 12:08:34 +01:00
Jane Tournois
c0743d6260
improve documentation
2015-11-12 11:54:04 +01:00
Jane Tournois
2aaf9d55d6
fix template parameters doc
2015-11-12 11:16:52 +01:00
Jane Tournois
ef40621699
improve doc and rename function
2015-11-12 10:20:19 +01:00
Jane Tournois
c9a28eb7af
change doc
2015-11-12 10:03:07 +01:00
Jane Tournois
07ae6235bf
put mesh as last parameter of get_border, for consistency
...
and return output iterator
2015-11-12 09:33:22 +01:00
Jane Tournois
70550aac03
todo : more documentation
2015-11-10 16:54:50 +01:00
Jane Tournois
d826558d68
edge_length documentation
2015-11-10 16:48:18 +01:00
Jane Tournois
56147a642e
add end of line at end of file (triggers a warning)
2015-11-10 14:51:21 +01:00
Sébastien Loriot
f5622f21e9
Merge remote-tracking branch 'cgal-dev/PMP-fix_connected_component_doc-GF'
...
changes only relates to the documentation
Tested in CGAL-4.8-Ic-43
2015-11-10 14:12:25 +01:00
Andreas Fabri
8ca486659d
Add a group for intersection detection
2015-11-09 16:36:00 +01:00
Jane Tournois
f38e58a35a
apply @gdamiand 's review on small feature
2015-11-09 15:44:58 +01:00
Jane Tournois
46cfb1d849
add new line add end of file (triggers a warning)
2015-11-09 11:46:28 +01:00
Jane Tournois
d4634df66e
avoid unused variable h
2015-11-09 11:36:36 +01:00
Jane Tournois
9379a8551e
unset expensive debug macros for testing
2015-11-09 10:55:28 +01:00
Jane Tournois
bb4cfb107e
move to assertion_code
2015-11-09 10:55:08 +01:00
Andreas Fabri
326b795636
Add module descriptions
2015-11-07 12:00:44 +01:00
Andreas Fabri
94ae28150e
backquote
2015-11-07 11:51:37 +01:00
Andreas Fabri
ba3bd6dc64
Define connected component properly and introduce more doxygen groups
2015-11-07 11:45:03 +01:00
Sébastien Loriot
5570473329
make normal computation working with FT without sqrt
2015-11-06 14:38:36 +01:00
Sébastien Loriot
29ef0916e6
compute_face_normal already returns a normalized vector
2015-11-06 14:37:51 +01:00
Sébastien Loriot
44176209bb
remove extra typename
2015-11-05 20:41:22 +01:00
Sébastien Loriot
533023f4f3
add missing example
2015-11-05 20:13:07 +01:00
Jane Tournois
2d54e1d98d
reorder PackageDescription.txt
2015-11-05 20:13:07 +01:00
Jane Tournois
d6207f50ba
comment about new helper functions
...
also update PackageDescription.txt and fix it
2015-11-05 20:13:07 +01:00
Sébastien Loriot
03db4f7256
add missing license headers
2015-11-05 20:13:07 +01:00
Sébastien Loriot
0072b649e2
Merge branch 'old/Polygon_mesh_processing-local_remeshing-GF' into Polygon_mesh_processing-local_remeshing-GF
2015-11-05 20:11:10 +01:00
Jane Tournois
40a630e778
user manual
2015-11-05 20:09:18 +01:00
Jane Tournois
78f45deccb
remove output stream from example
2015-11-05 20:09:18 +01:00
Jane Tournois
2ebaa7bfd9
remove timer from example
2015-11-05 20:09:17 +01:00
Jane Tournois
f55e73e475
doc : distinguish between what should be triangulated, and what does not have to
2015-11-05 20:09:17 +01:00
Jane Tournois
4f320a7c29
update doc
2015-11-05 20:09:17 +01:00
Jane Tournois
fd3b738955
remove unused variable and avoid warnings
2015-11-05 20:09:17 +01:00
Jane Tournois
3558be91e4
add data for testing
2015-11-05 20:09:16 +01:00
Jane Tournois
950a3fa5a3
fix doc warning
2015-11-05 20:09:15 +01:00
Jane Tournois
52dbd6ef3d
add precondition about protection of constraints
...
this precondition is here to check whether protection of constraints is
compatible with termination of the refinement step
2015-11-05 20:09:15 +01:00
Jane Tournois
340a52ac44
update doc wrt to @sloriot review
2015-11-05 20:09:15 +01:00
Jane Tournois
007fc60c64
rename default function
2015-11-05 20:09:14 +01:00
Jane Tournois
d9797f6d78
add original paper ref
2015-11-05 20:09:14 +01:00
Jane Tournois
945d358db5
change function name in "see also"
2015-11-05 20:09:14 +01:00
Jane Tournois
893b80c490
rename function to isotropic_remeshing()
2015-11-05 20:09:14 +01:00
Jane Tournois
57ef5d03f7
remove todo. Works the same for multiple cc
2015-11-05 20:09:14 +01:00
Sébastien Loriot
c6e649aa9b
Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF
...
and adapt plugin to CGAL::Three
2015-11-05 20:07:15 +01:00
Sébastien Loriot
54ca52b538
Merge branch 'BGL-SurfaceMesh2SurfaceMesh-GF' into Polygon_mesh_processing-local_remeshing-GF
2015-11-05 19:25:00 +01:00
Jane Tournois
3448f7cd57
Merge branch 'PMP-length_of_border-GF-old' into PMP-length_of_border-GF
2015-11-03 15:34:45 +01:00
Jane Tournois
ad2e627a31
documentation and change return types to use Geom_traits::FT
2015-11-03 15:29:15 +01:00
Maxime Gimeno
7c0be4674d
Fix for std::sqrt in Mesh_processing
...
- replaces all the std::sqrt by CGAL::sqrt
2015-10-29 13:44:18 +01:00
Sébastien Loriot
bed84e6234
Merge branch 'releases/CGAL-4.7-branch'
2015-10-28 13:45:23 +01:00
Sébastien Loriot
36b68c936f
fix duplicated include guard macro name
2015-10-28 13:44:46 +01:00
Sébastien Loriot
770f87dd29
Merge branch 'releases/CGAL-4.7-branch'
2015-10-28 11:21:16 +01:00
Sébastien Loriot
87b6490af7
add missing includes
2015-10-28 11:20:46 +01:00
Andreas Fabri
d2ed79d38d
Add keep_large_connected_components (code,doc,test)
2015-10-22 09:01:08 +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
Sebastien Loriot
b9d54119b6
Merge pull request #342 from afabri/PMP-OM_needs_garbage_collect-GF
...
Call openmesh.garbage_collection() before writing after triangulate_holes()
2015-09-24 06:45:25 +02:00
Sébastien Loriot
cb7d309f86
fix include file path and use it in a test
...
Trivial fix tested locally
2015-09-22 12:42:06 +02:00
Sébastien Loriot
a1279bc063
update dependencies
2015-09-21 08:43:05 +02:00
Sébastien Loriot
68aa21292a
Merge branch 'old/CGAL-Solver-packages-GF' into CGAL-Solver-package-GF
2015-09-21 07:34:18 +02:00
Simon Giraudot
619554a20b
Replace SparseLinearAlgebraTraitsWithFactor_d by SparseLinearAlgebraWithFactorTraits_d
2015-09-16 17:23:00 +02:00
Jane Tournois
a7c3670f8e
do not test is_degenerated on a border halfedge
...
is_border test should only be an assertion inside the function
also make sure is_degenerated is called only on non-border edges
2015-09-15 17:08:11 +02:00
Andreas Fabri
6a5395ff60
Call mesh.garbage_collection() before writing an OpenMesh after triangulate_holes()
...
This is necessary, as faces are deletes and new faces created,
and as in OpenMesh deleted faces are not reused.
2015-09-15 16:11:11 +02:00
Jane Tournois
5e2c263cf5
remove debug_normals test
...
in presence of sharp edges which are not constrained, the "false" result
does not highlight a bug and is misleading
2015-09-15 15:04:59 +02:00
Jane Tournois
a0ba10438e
fix collapsibility test, and reorder things dealing with the tags
...
collapse on face range border was broken
2015-09-15 14:57:35 +02:00
Jane Tournois
549266bb8a
fix degeneracy test on border
2015-09-15 14:40:55 +02:00
Jane Tournois
6f718be591
rename functions to make it consistent with face_area
2015-09-10 09:30:16 +02:00
Andreas Fabri
6692f993ce
Add/Remove some cgalPkgDependsOn
...
Move Visibility package from Arrangements to Polygons
Add some `` in the Visibility package
Add the keyword 'Geodesic' to the Shortest Path package.
2015-09-09 12:09:57 +02:00
Simon Giraudot
9135157b64
Update PackageDescription files in doc to reference Solver_interface instead of Eigen
2015-09-09 11:24:54 +02:00
Jane Tournois
55ab0f5b06
rename area() to face_area() to avoid ambiguities
...
also add geom_traits as a named parameter
2015-09-08 09:56:29 +02:00
Jane Tournois
9188ba9de6
add function bbox_3(pmesh)
2015-09-07 15:46:00 +02:00
Jane Tournois
2d251049dd
add volume function and test it
2015-09-07 15:11:14 +02:00
Laurent Rineau
7ddefbdcc8
Merge pull request #297 from afabri/CGAL-assert-GF
...
assert() should not be used in CGAL headers!
2015-09-07 10:58:20 +02:00
Jane Tournois
2160da4ceb
add area function for the complete triangulated Surface
...
use CGAL_PMP_NP_TEMPLATE_PARAMETERS and CGAL_PMP_NP_CLASS
to avoid ambiguities
2015-09-04 17:37:36 +02:00
Jane Tournois
216fafb6af
for area(), faces should be triangular (at least for now)
2015-09-04 17:11:59 +02:00
Jane Tournois
c7af93647e
add todo
2015-09-04 17:02:13 +02:00
Jane Tournois
2bb201c0ef
add documentation and rename file
2015-09-04 16:58:53 +02:00
Jane Tournois
e3a3c9939b
introduce named parameters in area functions
2015-09-04 15:58:38 +02:00
Jane Tournois
757be4f245
introduce area(face) function
2015-09-04 15:52:13 +02:00
Jane Tournois
a4f7911202
introduce named parameters and length(halfedge) function
2015-09-04 15:44:49 +02:00
Jane Tournois
13411283ce
remove duplicate include
2015-09-04 14:58:08 +02:00
Jane Tournois
24cb41e31f
rename file
...
it's not about dimensions, but about measures
2015-09-04 14:21:30 +02:00
Jane Tournois
af719e41b5
add simple test
2015-09-04 14:10:23 +02:00
Jane Tournois
6256bfd44f
fix constness and put pmesh as last parameter, as usual
2015-09-04 14:10:13 +02:00
Laurent Rineau
1eab366954
Merge pull request #312 from sloriot/Polyhedron_demo-stl_io_plugin_safer-sloriot
...
Polyhedron demo: first check that the STL file is a polygon mesh before loading it
Conflicts:
Polygon_mesh_processing/doc/Polygon_mesh_processing/PackageDescription.txt
2015-09-04 11:36:13 +02:00
Laurent Rineau
59ac9f30fc
Merge pull request #293 from sloriot/PMP-fix_remove_degenerate_faces-sloriot
...
Polygon mesh processing: fix remove_degenerate_faces() but do not publish it in the documentation
2015-09-04 11:24:36 +02:00
Sébastien Loriot
4931c8c889
first check that the stl file is a polygon mesh before loading it
2015-09-03 15:17:14 +02:00
Sébastien Loriot
b5f44b3960
forgot to remove from the cmakelist example using a non documented function
2015-09-03 13:07:46 +02:00
Jane Tournois
33710fe170
replace std::map with boost::unordered_map
...
this speeds up the calls to "find" in status()
2015-09-02 16:29:29 +02:00
Jane Tournois
e790bda380
move macro inside debug code
2015-09-02 16:05:05 +02:00
Jane Tournois
ce54198aa7
Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF
2015-09-02 15:57:23 +02:00
Andreas Fabri
3a2850eecd
Use accelerate_distance_queries()
2015-09-02 14:47:37 +02:00
Andreas Fabri
90cbba8e72
Add functions to measure length of border and area of patch
2015-09-01 10:07:48 +02:00
Andreas Fabri
1e2ff1131e
assert -> CGAL_assertion
2015-08-27 16:51:55 +02:00
Sébastien Loriot
9514bcc8fe
do not publish remove_degenerate_faces that is not yet ready
2015-08-27 11:26:04 +02:00
Sébastien Loriot
bfe03f16eb
add debug function
2015-08-27 09:56:27 +02:00
Sébastien Loriot
f9edc6e4db
extract the part responsible for removing all null-edges and create a function
2015-08-27 09:56:27 +02:00
Sébastien Loriot
05ff60df9c
remove unused code
2015-08-27 09:56:06 +02:00
Laurent Rineau
ff796222d3
Replace VERSION_GREATER by "NOT VERSION_LESS"
...
Because actually Eigen 3.2.0 is a correct Eigen version!
Was pointed out by the testsuite:
https://cgal.geometryfactory.com/CGAL/Members/testsuite/CGAL-4.7-Ic-121/Polygon_mesh_processing_Examples/TestReport_lrineau_Ubuntu-Latest-CXX11.gz
2015-08-20 15:09:30 +02:00
Jane Tournois
713f7424ab
documentation for remeshing
2015-08-18 18:24:27 +02:00
Laurent Rineau
5d99700c3d
Merge pull request #277 from janetournois/Polygon_mesh_processing-GF
...
Polygon mesh processing - Eigen 3.2 needed for fairing
2015-08-18 18:07:23 +02:00
Jane Tournois
9edeaa38f2
cleanup example
2015-08-18 17:52:33 +02:00
Jane Tournois
5cd95d9289
add remeshing example
2015-08-18 17:48:57 +02:00
Jane Tournois
6062c9405f
add reference manual for remeshing
2015-08-18 17:21:40 +02:00
Jane Tournois
7b93b844f2
integrate the complete test inside the static assert
...
to avoid inconsistencies between different compilers
2015-08-17 16:49:01 +02:00
Jane Tournois
1f91bd8a77
avoid compilation of tests and examples that use fairing when Eigen < 3.2
2015-08-17 12:23:09 +02:00
Jane Tournois
aef04b7dce
make compilation more explicit when Eigen < 3.2 is used
2015-08-17 12:08:50 +02:00
Jane Tournois
a5c14aad21
fix a bug in collapse_short_edges
...
an edge that is about to be collapsed can be not on border,
but with both of its vertices on the mesh Border
this causes the appearance of a null_face that causes a seg fault
2015-08-14 18:52:28 +02:00
Jane Tournois
d8d63fce5a
complete documentation
2015-08-11 13:07:46 +02:00
Jane Tournois
768dfbc0b0
write documentation
2015-08-11 12:56:37 +02:00
Jane Tournois
a45368680f
add function to remove isolated vertices
2015-08-10 19:03:54 +02:00
Jane Tournois
86896278e5
Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF
2015-08-07 13:02:35 +02:00
Sébastien Loriot
ca19447002
fix warnings detected by clang
2015-08-06 19:39:35 +02:00
Sébastien Loriot
5de888d9dc
Revert "move update of the status outside of the constructor"
...
This reverts commit 6378a51191 .
The commit was incorrect and was introducing a huge performance issue
2015-08-06 15:27:55 +02:00
Sébastien Loriot
cabb80a4ae
if no cc is to be removed, do nothing
2015-08-04 12:22:51 +02:00
Sébastien Loriot
74e6f3ea39
remove named parameter not needed
2015-08-04 12:22:51 +02:00
Sébastien Loriot
41be0745a4
testing border cases or keep/remove ccs
2015-08-04 12:22:51 +02:00
Sébastien Loriot
acd4f70bf0
improve doc
2015-07-31 14:11:39 +02:00
Sébastien Loriot
bc30aa5f48
handle the stitching of patches with incorrect orientation
...
we make two border halfedges matching only if they are opposite
2015-07-31 14:11:38 +02:00
Sébastien Loriot
98533778ce
remove non-need macro definitions
2015-07-31 14:11:38 +02:00
Sébastien Loriot
4dbface316
make the range of halfedge to stitch const
...
it requires a tweak with PMP macros to desambiguate overloads
2015-07-31 14:11:20 +02:00
Sébastien Loriot
89498ff175
remove less_halfedge named parameter that is no longer needed
2015-07-31 11:18:24 +02:00
Sébastien Loriot
d97a0dc1c5
remove less_halfedge named parameter that is not necessary
...
Since the edge endpoints must be identical, it is error prone
to provide a way to tweak the detection of edges to stitch
2015-07-31 11:15:58 +02:00
Sébastien Loriot
aeff7c78a6
fix to correctly handle cases with border vertices
2015-07-29 17:04:31 +02:00
Sébastien Loriot
f67d2f7148
add a description of the method used to remove link condition restrictions
2015-07-29 11:07:24 +02:00
Sébastien Loriot
9b1983eeb7
fix indentation
2015-07-29 10:08:23 +02:00
Sébastien Loriot
a2ed1face6
remove unused code and variable
2015-07-29 10:06:50 +02:00
Sebastien Loriot
1ebc5f75b5
Merge pull request #196 from janetournois/Polygon_mesh_processing-GF
...
Polygon mesh processing - small fixes
2015-07-28 17:16:36 +02:00
Jane Tournois
fb1714154f
fix documentation
...
this template parameter is not needed!
2015-07-27 16:12:42 +02:00
Jane Tournois
2a6ddd38a4
use get() instead of [] to access vertex point map
2015-07-27 16:12:12 +02:00
Jane Tournois
9abb55125b
use get() instead of operator[] for vertex point map
...
Conflicts:
Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/remesh_impl.h
2015-07-27 16:11:14 +02:00
Jane Tournois
98fecc9a12
fix documentation
...
this template parameter is not needed!
2015-07-24 12:33:27 +02:00
Jane Tournois
c37ed37c4c
use get() instead of [] to access vertex point map
2015-07-24 12:31:50 +02:00
Jane Tournois
ea1b6b402a
fix the use of does_self_intersect
2015-07-24 12:23:32 +02:00
Jane Tournois
b8d81cb8f6
add todo
2015-07-24 12:09:50 +02:00
Jane Tournois
87759f9ca8
use get() instead of operator[] for vertex point map
2015-07-24 12:09:04 +02:00
Jane Tournois
b5cf442653
make plugins valid for Qt5
2015-07-24 10:05:02 +02:00
Jane Tournois
bb3d38c9e7
Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF
2015-07-23 17:50:34 +02:00
Sébastien Loriot
7da45ca55c
handle the case of a triangle hole with an edge of length 0
2015-07-22 16:08:38 +02:00
Sébastien Loriot
a220686d02
satisfies_link_condition->does_satisfy_link_condition to match naming convention
2015-07-21 10:27:27 +02:00
Sébastien Loriot
0cb9a5a1be
use assert in tests
2015-07-17 14:42:04 +02:00
Sébastien Loriot
a30ad4be3c
use PMP internal function
2015-07-16 16:40:54 +02:00
Sébastien Loriot
25d5a69104
use Side_of_triangle_mesh
2015-07-16 16:32:04 +02:00
Sébastien Loriot
c89fa4bd53
simplify bgl named parameters handling with boost < 1.51 and make PMP compatible
2015-07-16 16:01:21 +02:00
Sébastien Loriot
9508675fe1
update test to use named parameters
2015-07-16 15:06:13 +02:00
Sébastien Loriot
a81cf1a814
remove outdated test
2015-07-16 14:55:50 +02:00
Sébastien Loriot
b766b511e6
avoid non-necessary inheritance
2015-07-16 13:21:38 +02:00
Sébastien Loriot
ab8d6cfbcb
add todo
2015-07-16 10:25:09 +02:00
Sébastien Loriot
3766bf3a3e
add new line at the end of test file
2015-07-16 09:35:49 +02:00
Sébastien Loriot
bcfb705df0
remove CGAL_assertion_code hidding variables used in assert
2015-07-16 08:51:22 +02:00
Sébastien Loriot
f2a0d8c201
fix unused variable warning
2015-07-15 16:56:04 +02:00
Sébastien Loriot
45b1f593fc
protect debug function by debug macro
2015-07-15 16:02:32 +02:00
Jane Tournois
9b0cd59255
add debugging code
2015-07-15 16:02:32 +02:00
Jane Tournois
8e44b5d77a
fix remeshing test
2015-07-15 16:02:32 +02:00
Jane Tournois
08e06531f3
add test data
2015-07-15 16:02:32 +02:00
Jane Tournois
2b0061d511
fix inversion of faces in equalize_valences
...
when endpoints of the halfedge being flipped belong to something else
than PATCH
2015-07-15 16:02:32 +02:00
Jane Tournois
4b85ca5460
add assertions
2015-07-15 16:02:32 +02:00
Jane Tournois
0ef807ac06
missing space in verbose mode
2015-07-15 16:02:32 +02:00
Jane Tournois
9b1eac30c2
verbose mode
2015-07-15 16:02:32 +02:00
Jane Tournois
6c00963c80
more verbosity
2015-07-15 16:02:32 +02:00
Jane Tournois
d423378321
remove visitor (became useless)
2015-07-15 16:02:31 +02:00
Jane Tournois
a1056c57dc
little cleaning
2015-07-15 16:02:31 +02:00
Jane Tournois
ed9276295d
add stuff to verbose mode
2015-07-15 16:02:31 +02:00
Jane Tournois
77529d985d
move debug code to debug macro
2015-07-15 16:02:31 +02:00
Jane Tournois
e7b8734306
fix compilation for Polyhedron
2015-07-15 16:02:31 +02:00
Jane Tournois
8950cef414
add degeneracy test
2015-07-15 16:02:31 +02:00
Jane Tournois
a603d5a705
fix collapse_short_edges
...
now there are degenerate faces in equalize_valences
2015-07-15 16:02:31 +02:00
Jane Tournois
bfa1dfea2c
add code to remove degenerate faces after each edge collapse
2015-07-15 16:02:31 +02:00
Jane Tournois
7ad049d14c
don't use status visitor, it is not enough to keep halfedges status up-to-date
2015-07-15 16:02:31 +02:00
Jane Tournois
e87c65bd3d
rename variable for consistency
2015-07-15 16:02:30 +02:00
Jane Tournois
ab1ddcac25
fix non-inversion test
2015-07-15 16:02:30 +02:00
Jane Tournois
b7c0acae56
first operations for visitor that deals with status map
2015-07-15 16:02:30 +02:00
Laurent Rineau
b639f7d051
Fix a compilation error
...
One cannot bind a temporary object to a non-const reference.
2015-07-15 16:02:30 +02:00
Jane Tournois
4b7a997df0
add the ability to use a Visitor for a BGL graph using an overload of graph_traits
...
TODO : is_valid(mesh) does not compile on msvc. To be fixed
2015-07-15 16:02:30 +02:00
Jane Tournois
f8eb659abd
remove debug_mesh_border
...
since it has become wrong when we have 2 adjacent patches
with a constrained polyline separating them
the same vertex can appear more than twice
2015-07-15 16:02:30 +02:00
Jane Tournois
237c20321f
deal with degenerate faces better
2015-07-15 16:02:29 +02:00
Jane Tournois
6214feaaf1
add stuff for verbose mode
2015-07-15 16:02:29 +02:00
Jane Tournois
4f5be714bb
add warning code
2015-07-15 16:02:29 +02:00
Jane Tournois
e3121567fa
automatically re-select border of selection after refining only border
2015-07-15 16:02:29 +02:00
Jane Tournois
7da4b81a19
add very verbose mode
2015-07-15 16:02:29 +02:00
Jane Tournois
99e0a245a0
add macro for verbose mode
2015-07-15 16:02:29 +02:00
Jane Tournois
dea8a59dbb
make flip_allowed test simpler, and reorganize flipping step
...
to save useless operations
2015-07-15 16:02:28 +02:00
Jane Tournois
4e95d9cc05
check that flip does not create a non-triangle face
...
this can happen around sharp tips of the domain,
when no incident edge is selected for protection
2015-07-15 16:02:28 +02:00
Jane Tournois
df1985d296
use named parameters
2015-07-15 16:02:28 +02:00
Jane Tournois
07820b8e0d
remove dump
2015-07-15 16:02:28 +02:00
Jane Tournois
6e7f4f7b21
test code
2015-07-15 16:02:28 +02:00
Jane Tournois
4f58f5182e
add debug code and fix constness
2015-07-15 16:02:28 +02:00
Jane Tournois
2dd3ae2407
fix remeshing of a patch WITH protection of constrained edges
2015-07-15 16:02:28 +02:00
Jane Tournois
cfff71068d
add options and draft to the remeshing test
2015-07-15 16:02:28 +02:00
Jane Tournois
d56e54ec6f
fix the edge collapse step
...
degenerate faces where responsible for some self intersections, so we remove
them after collapses and flips
the function that checks that no triangle gets inverted by a flip has also
been fixed
we had to check both the 1-ring of source(h) and target(h), even though those
vertices got the same coordinates
The common faces in their rings were degenerate, but their normals had all to
be checked for consistent orientation
also add more debugging code
2015-07-15 16:02:28 +02:00
Jane Tournois
891b426f82
new attempt to avoid self intersections
2015-07-15 16:02:27 +02:00
Jane Tournois
679e93b252
remove degenerate faces a posteriori
2015-07-15 16:02:27 +02:00
Jane Tournois
7543f35ff2
adapt code to PATCH_BORDER cases and add debugging code
2015-07-15 16:02:27 +02:00
Jane Tournois
97379e50b2
add null vector test (should not happen!)
2015-07-15 16:02:27 +02:00
Jane Tournois
0844e79b67
add code to read selection from input
2015-07-15 16:02:27 +02:00
Jane Tournois
6f667c7a24
reorganize
2015-07-15 16:02:27 +02:00
Jane Tournois
8b5902b038
add function to split long edges listed by the user
...
this changes the remesher internal API only
2015-07-15 16:02:27 +02:00
Jane Tournois
8d5312d263
reorganize test
2015-07-15 16:02:26 +02:00
Jane Tournois
117a24807d
make tests simpler
2015-07-15 16:02:26 +02:00
Jane Tournois
67874c737d
fix test when splitting of constraints is allowed
2015-07-15 16:02:26 +02:00
Jane Tournois
2b7bf24205
add documentation for protect_constraints
2015-07-15 16:02:26 +02:00
Jane Tournois
00cc96f968
add code to protect_constraints
...
edges tagged as constraints are not refined when protect_constraints is true
2015-07-15 16:02:26 +02:00
Jane Tournois
ebeb1fdcaa
edge_is_constrained_map does not need to be kept as a member
...
it is used only in the initialization, to fill the halfedge_status_map
2015-07-15 16:02:26 +02:00
Jane Tournois
c460008f23
make test simpler (it is equivalent)
2015-07-15 16:02:26 +02:00
Jane Tournois
f7204a0a99
add edge_is_constrained_map as a parameter for remeshing
...
this property map "tags" the edges that should be kept in the remeshed mesh.
They can be splitted or collapsed, but their vertices can't move with the
Laplacian, and they can't be flipped.
in the Polyhedron demo, this feature is integrated in order to remesh two
adjacent surface patches and keep the (possibly sharp) polyline that is
delimitating them
2015-07-15 16:02:26 +02:00
Jane Tournois
c554466b80
fix default value
2015-07-15 16:02:25 +02:00
Jane Tournois
caad50a628
documentation
2015-07-15 16:02:25 +02:00
Jane Tournois
7256746891
doc
2015-07-15 16:02:25 +02:00
Jane Tournois
c41bc2250d
start documentation for get_border and incremental_triangle_based_remeshing
2015-07-15 16:02:24 +02:00
Jane Tournois
e6a7b5a0a3
use get and set to access vertex point map, instead of operator[]
2015-07-15 16:02:24 +02:00
Jane Tournois
f958fe7d5d
fix warning
2015-07-15 16:02:24 +02:00
Jane Tournois
d34d47a6d5
Revert "detect sharp edges and surface patches"
...
This reverts commit 80b1363f1db4db8391398188bcb33427ffc69aac.
2015-07-15 16:02:23 +02:00
Jane Tournois
83957ed495
add code to the selection tool to be able to select a surface patch
...
for now it works only for facets and the checkbox is not used
2015-07-15 16:02:23 +02:00
Jane Tournois
9e8ad02f94
more in remeshing test
2015-07-15 16:02:23 +02:00
Jane Tournois
577e0f08f0
use macro and 17 digits in cout
2015-07-15 16:02:23 +02:00
Jane Tournois
54922319ff
remove todo
2015-07-15 16:02:23 +02:00
Jane Tournois
abc92fcc24
fix assertion code
2015-07-15 16:02:23 +02:00
Jane Tournois
d7caded018
remove useless template qualifier
2015-07-15 16:02:23 +02:00
Jane Tournois
c4496845e4
use const ref for FaceRange input
2015-07-15 16:02:23 +02:00
Jane Tournois
5e6a0e635d
fix status updates (does not fix it all)
2015-07-15 16:02:22 +02:00
Jane Tournois
1797dab16d
fix notations
2015-07-15 16:02:22 +02:00
Jane Tournois
940a92d69a
fix get_border : return only halfedges that belong to `faces`
2015-07-15 16:02:22 +02:00
Jane Tournois
8b9bcefe22
remeshing of the patch
...
works when the patch describes the full mesh
otherwise, it enters an endless loop for now
2015-07-15 16:02:22 +02:00
Jane Tournois
d2f18f8a3e
fix compilation for Polyhedron_3
2015-07-15 16:02:22 +02:00
Jane Tournois
14979947a0
add isotropic remeshing plugin
...
note it does not compile yet because the remeshing code is not
fully compatible with Polyhedron_3
2015-07-15 16:02:22 +02:00
Jane Tournois
f7820a6517
introduce API to mesh only a patch (does not implement anything yet)
2015-07-15 16:02:22 +02:00
Jane Tournois
0f1097c988
use compute_vertex_normals to compute normals only once per face
...
to keep deterministic and not depend on the order in which vertex locations
are relaxed, we compute all new locations first, and relocate them all
afterwise
2015-07-15 16:02:22 +02:00
Jane Tournois
ebb5daa890
allow boundary edges to be collapsed
2015-07-15 16:02:21 +02:00
Jane Tournois
5c9891ed53
fix typos in comments
2015-07-15 16:02:21 +02:00
Jane Tournois
d2b3146fec
project_to_surface at the end of remeshing algorithm
2015-07-15 16:02:21 +02:00
Jane Tournois
8432018c76
add todo
2015-07-15 16:02:21 +02:00
Jane Tournois
1eb75ac3f2
perform tangential_relaxation
2015-07-15 16:02:21 +02:00
Jane Tournois
e80a4adfaa
increase the number of iterations in test
2015-07-15 16:02:21 +02:00
Jane Tournois
0c84e31f0b
equalize_valences, by performing edge flips where it's allowed
2015-07-15 16:02:21 +02:00
Jane Tournois
9a2213082e
add comments from PMP book, and output debug info (cout)
2015-07-15 16:02:21 +02:00
Jane Tournois
544a133b5e
add comment
2015-07-15 16:02:21 +02:00
Jane Tournois
d1b5737bd4
allow collapsing edges incident to boundary
2015-07-15 16:02:21 +02:00
Jane Tournois
fc0b9bd51a
add collapse short edges to remeshing
...
longest edges are split first
and shortest edges are collapsed first
todo : allow edges incident to boundary to be collapsed
2015-07-15 16:02:21 +02:00
Jane Tournois
79b5ba8553
first step : split_long_edges
2015-07-15 16:02:20 +02:00
Jane Tournois
598472d210
add framework for remeshing
2015-07-15 16:02:20 +02:00
Sébastien Loriot
017b4f501f
use jpg instead of png
...
prepare for rebasing
2015-07-15 11:43:53 +02:00
Sébastien Loriot
0b34de5674
generate elephant with hole
...
prepare for rebasing
2015-07-15 11:27:53 +02:00
Sébastien Loriot
51839a0b84
remove data that can be generated
...
prepare for rebasing
2015-07-15 10:54:41 +02:00
Sébastien Loriot
d35e1e5580
do not use a large gif file
...
prepare for rebasing
2015-07-15 10:30:51 +02:00
Sébastien Loriot
a968e99279
do not use a large off file
...
prepare for rebasing
2015-07-15 10:08:57 +02:00
Sébastien Loriot
78542206ba
add test for remove_degenerate_faces
2015-07-15 10:01:11 +02:00
Sébastien Loriot
1950bf0d7d
update user manual for keep/remove_connected_components
2015-07-13 09:27:51 +02:00
Sébastien Loriot
c60fad0095
use keep_connected_components in the implementation of keep_largest_connected_components
2015-07-13 07:43:50 +02:00
Sébastien Loriot
1fcc8937ab
add todo
2015-07-13 07:14:30 +02:00
Sébastien Loriot
7d8fe2553d
add remove_connected_components + overload for the keep version using cc ids
2015-07-13 07:08:45 +02:00
Sébastien Loriot
13263efa8c
fix the test without Delaunay
2015-07-06 18:43:49 +02:00
Sébastien Loriot
c82a3ef67d
make warnings not popping in the testsuite
2015-07-06 18:32:24 +02:00
Sébastien Loriot
f69cabe72c
make tests more uniform
2015-07-06 18:32:09 +02:00
Sébastien Loriot
de7482f998
CGAL_assertion -> assert
2015-07-06 16:52:59 +02:00
Sébastien Loriot
545fca57b7
improve test by checking the expected number of remaining holes
2015-07-06 16:49:00 +02:00
Sébastien Loriot
a1e3c9787b
Revert "we want to be able to test that without generating a warning"
...
This reverts commit cc24c0a89a43651ed11d1f87b233bf8db0d28c86.
2015-07-06 15:32:33 +02:00
Jane Tournois
270f4bbbcc
we want to be able to test that without generating a warning
...
so let's transform into a std::cerr message
2015-07-03 17:04:49 +02:00
Jane Tournois
0c6340543c
comment a bit of too verbose tests
2015-07-03 16:56:04 +02:00
Jane Tournois
1967235bbd
fix return value to 0
...
this example was making all the testsuite line red...
2015-07-03 16:48:45 +02:00
Jane Tournois
275d24e103
add new line at end of file
2015-07-03 16:16:46 +02:00
Jane Tournois
6491a3e9c4
fix compilation for windows
2015-07-03 16:14:16 +02:00
Jane Tournois
12ccaeb3a5
rename type to avoid error on windows
...
Polyline conflicts with a type defined in
Program Files (x86)\Windows Kits\8.0\include\um\wingdi.h
2015-07-03 16:12:31 +02:00
Jane Tournois
433609093f
add return statement
2015-07-03 16:07:45 +02:00
Jane Tournois
f2f7aa6874
fix warnings about unused variables
2015-07-03 16:05:16 +02:00
Jane Tournois
6dedc9e451
add new line at end of file
2015-07-03 16:04:34 +02:00
Jane Tournois
fbe442fcca
remove empty constructor that causes an error
...
because it does not provide an initial value for pmesh_
2015-07-03 16:03:53 +02:00
Jane Tournois
cf60dd41f1
fix unused variable warnings
2015-07-03 13:54:01 +02:00
Jane Tournois
4c54b2ec26
don't use typename outside of template
2015-07-03 13:46:17 +02:00
Jane Tournois
024f3ce752
remove unused variables to avoid warnings
2015-07-03 13:30:24 +02:00
Jane Tournois
4e8c149b9b
fix compilation and remove useless assertions
2015-07-02 16:58:42 +02:00
Laurent Rineau
08dcd2ba6f
Fix a warning on Linux
...
(cherry picked from commit 2cfdf907dd969b59590ec4cf798af4bfe61dcfb3)
2015-07-02 16:22:15 +02:00
Jane Tournois
01d0c2770b
add return statement
2015-07-02 16:01:52 +02:00