Laurent Rineau
b08fb6c4ed
Merge pull request #3069 from sloriot/PMP-isotropic_remeshing_user_projection
...
Fix constrained edge map update and add user projection functor as input
2018-06-20 17:21:10 +02:00
Sébastien Loriot
f7241be70a
fix test on the shortness of protect edges
...
since ecm was updated to only contain real constrained edges (and no additional
patch border edges), we use connected component patch map to identify them
2018-06-18 10:08:52 +02:00
Laurent Rineau
20ba8216b8
Merge pull request #3163 from sloriot/PMP-missing_transform_overload
...
Add missing overload for PMP::transform
2018-06-14 17:36:40 +02:00
Laurent Rineau
16c581fb4b
Merge pull request #3145 from afabri/PMP-should-GF
...
Polygon_mesh_processing: Change should to must/shall
2018-06-12 16:38:24 +02:00
Sébastien Loriot
8ccc2af157
add missing overload
2018-06-11 22:04:24 +02:00
Sébastien Loriot
895dbaad73
fix merge of status after the usage of ecm in collapse_edge
...
ep and epo are no longer guarantee to be the halfedges to be removed
2018-06-07 17:35:29 +02:00
Sébastien Loriot
117b1d810a
work around issue with boost::size in boost 1.55
...
improve at the same time the runtime in cases
we could also have a lazy version for non-random access iterators
2018-06-07 15:14:20 +02:00
Sébastien Loriot
e1e1512869
Merge 'PMP-isotropic_remeshing_user_projection' into PMP-isotropic_remeshing_user_projection
2018-06-06 18:00:32 +02:00
Andreas Fabri
c94b219491
typo
2018-06-04 09:40:35 +01:00
Andreas Fabri
2cd40ad42b
Change should to must/shall
2018-06-04 08:32:18 +01:00
Sébastien Loriot
460f49d64f
move code to swap edges in a function
2018-05-29 15:59:55 +02:00
Maxime Gimeno
0b2436d062
Clean-up after review
2018-05-29 15:59:54 +02:00
Sébastien Loriot
b81453868b
fix the handling of constrained vertices
2018-05-29 15:59:54 +02:00
Sébastien Loriot
5738a11841
swap halfedges to guarantee that constrained halfedges are kept
...
this is only requires in case prev(opposite(he)) is constrained
since if there is a constrained vertex it is vb.
2018-05-29 15:59:54 +02:00
Sébastien Loriot
abe346f8d2
consider any vertex incident to a constrained as constrained
2018-05-29 15:59:54 +02:00
Sébastien Loriot
de3d654a72
simplify the code collapsing edges
...
handles corner and constrained vertices
2018-05-29 15:59:10 +02:00
Sébastien Loriot
53164edc5a
a vertex of degree less than 3 is on the boundary
...
collapsing an edge incident to it should be controlled only
by the constrained status of the vertices
2018-05-29 15:59:10 +02:00
Sébastien Loriot
d3caff29dc
fix indentation
2018-05-29 15:59:10 +02:00
Sébastien Loriot
34a66797b5
the corner status of a vertex is already taken into account in the code
...
it is meaningful for collapse and smooth that are using is_corner function
2018-05-29 15:59:10 +02:00
Maxime Gimeno
a779db591c
Make Isotropic_remeshing keep the constrained vertices when collapsing an edge.
2018-05-29 15:58:19 +02:00
Laurent Rineau
e86c3c4bba
Merge pull request #3102 from afabri/Property_map-empty_vector-GF
...
Property_map: Fix make_property_map(std::vector&) for an empty vector
2018-05-28 13:58:47 +02:00
Laurent Rineau
a7738b27c9
Merge pull request #3052 from maxGimeno/PMP-transform-GF
...
PMP: transform()
2018-05-28 13:58:16 +02:00
Laurent Rineau
851dfabd29
Merge pull request #2757 from maxGimeno/BGL-Add_facegraph_validity_check_function-GF
...
BGL: Add a FaceGraph validity check function
2018-05-28 13:58:07 +02:00
Sébastien Loriot
f03f2176dd
do no collapse constrained edges
...
At the same time I removed halfedge_and_opp_removed since we don't
know prior to the collapse which edges are removed.
The only thing done by the function is to reset the status. This
is not an issue to remove it because halfedge_added is called
each time a new edge is created, thus a previous status cannot
be recovered by error.
2018-05-23 09:07:13 +02:00
Andreas Fabri
466a88077d
An empty soup is a mesh
2018-05-22 17:48:36 +02:00
Andreas Fabri
9abafecf9a
make the property map from the vector
2018-05-22 17:48:36 +02:00
Sébastien Loriot
be42fa9147
update ecmap_ during the remeshing
2018-05-18 17:07:14 +02:00
Sébastien Loriot
90faf5d060
simplify initialization of CC
2018-05-18 14:10:31 +02:00
Sébastien Loriot
42de73320a
only constrain edges split that were constrained before
2018-05-18 11:07:18 +02:00
Sébastien Loriot
43c6fd3635
make the projection optional
2018-05-18 10:59:26 +02:00
Jane Tournois
76fd482cce
make collapse_constraints a parameter of collapse_short_edges
...
instead of a remesher global parameter
2018-05-15 12:52:32 +02:00
Sébastien Loriot
e08c1cdc4d
add an option to prevent the collapse of constrained edges
2018-05-15 12:21:05 +02:00
Jane Tournois
35125cd9a5
remove todo done by this PR
2018-05-15 11:23:46 +02:00
Jane Tournois
fbd982f7d8
document undocumented named parameters
...
and add extra info about split edges
2018-05-15 11:22:08 +02:00
Sébastien Loriot
73db555c5e
unconstrained an edge to be collapsed
2018-05-15 10:30:40 +02:00
Sébastien Loriot
ac8fbfd6aa
add a condition to make sure the flip does not create a non-manifold edge
2018-05-15 09:48:12 +02:00
Sébastien Loriot
6b601ccf80
update after Jane's review
2018-05-14 09:51:26 +02:00
Maxime Gimeno
9e78cb49c1
Rename Mesh in PolygonMesh for consistency with the rest of the package
2018-05-07 12:51:36 +02:00
Maxime Gimeno
cb3b060d53
fix the doc
2018-05-07 12:51:36 +02:00
Maxime Gimeno
ca267506f8
Fix doc
2018-05-07 12:51:36 +02:00
Sébastien Loriot
b2fa6680d7
typo
2018-05-07 12:51:35 +02:00
Maxime Gimeno
3ca3d11512
Replace the tparam Transformation by any Functor with an operator()(Point_3) and use that operator instead of .transform() in the impl.
2018-05-07 12:51:35 +02:00
Maxime Gimeno
2f7d66e530
Clean-up
2018-05-07 12:50:41 +02:00
Maxime Gimeno
72c31ebfac
Add a function in PMP to apply a CGAL::Aff_transformation_3 to a mesh.
2018-05-07 12:50:41 +02:00
Sebastien Loriot
80acabc4b4
Merge pull request #3065 from maxGimeno/PMP-Do_intersect_with_different_vpm-GF
...
PMP: do_intersect() work with 2 types of VPM
2018-05-07 11:47:29 +02:00
Sebastien Loriot
1d6918ff4f
Merge pull request #2895 from kkatrio/triangulate_faces_fix
...
Triangulate faces : CDT2 / hole filling
2018-05-07 11:41:58 +02:00
Maxime Gimeno
132cf694a0
remove is_valid() from the graph_traits
2018-05-03 12:03:14 +02:00
Maxime Gimeno
6dfa8d0ba3
replace CGAL_is_valid(Mesh) by CGAL::is_valid_polygon_mesh(Mesh)
2018-05-03 12:03:14 +02:00
Sébastien Loriot
c3255eee91
document projection functor named parameter
2018-05-01 14:15:27 +02:00
Sébastien Loriot
ec4675b451
do not build the aabb_tree and the cc map if not needed
2018-05-01 13:50:49 +02:00