Sébastien Loriot
ea31cc4bde
add autorefine
2017-11-28 10:17:04 +01:00
Sébastien Loriot
70d1d18461
Add function to compute auto-intersection of a surface
2017-11-28 10:17:04 +01:00
Jane Tournois
2feb79a16b
Add example for dynamic_property_map
2017-11-27 16:35:30 +00:00
Maxime Gimeno
c940bbd20d
Update doc
2017-11-27 15:58:56 +01:00
Maxime Gimeno
57bbb4cd92
More fixes for pre-review
2017-11-20 14:54:09 +01:00
Maxime Gimeno
31161a7788
Fix doc.
2017-11-17 12:55:28 +01:00
Maxime Gimeno
830f1e3f80
add volumic tests and tests data files
2017-11-17 12:55:28 +01:00
Maxime Gimeno
4d19c0e1b1
Add named parameters and fix mesh id in range calculation.
2017-11-17 12:55:28 +01:00
Maxime Gimeno
691649590c
Add a function to compute the number of pairs of intersecting meshes in a range of meshes.
2017-11-17 12:55:28 +01:00
Maxime Gimeno
55a0bbc628
fix doc
2017-11-17 12:55:27 +01:00
Maxime Gimeno
27f29bc6f2
Add overloads for polylines ranges and tests that go with them
2017-11-17 12:55:27 +01:00
Maxime Gimeno
e21ff58b6a
Update doc.
2017-11-17 12:55:27 +01:00
Maxime Gimeno
536c0246cf
Changes and hide enable_if in doc.
2017-11-17 12:55:27 +01:00
Maxime Gimeno
334b4be9b2
Remove useless code.
2017-11-17 12:55:05 +01:00
Maxime Gimeno
edc49e77b7
Move intersection computation functions in internal.
2017-11-17 12:55:05 +01:00
Maxime Gimeno
ece79dd277
Add default values for NPs and no more need for Kernel in do_intersect. Also rename and un-document intersection functions.
2017-11-17 12:55:05 +01:00
Maxime Gimeno
71817eb67a
Add polylines intersections detection to the surface_intersection plugin
2017-11-17 12:55:05 +01:00
Maxime Gimeno
47defffbdb
Documents the new functions
2017-11-17 12:55:05 +01:00
Maxime Gimeno
5a5accaaa8
Move intersection code into a header
2017-11-17 12:55:04 +01:00
Sébastien Loriot
7e12600403
remove deprecated TODO
2017-11-15 22:59:55 +01:00
Sébastien Loriot
5c32e0ab62
turn some #ifndef that should be #ifdef
2017-11-15 15:12:41 +01:00
Sébastien Loriot
ee57fc2d6c
add SPDX identifier for files under the GPL-3+ license
2017-11-12 10:17:51 +01:00
Laurent Rineau
666ff0c862
Merge pull request #2544 from janetournois/PMP-corefinement-improve-doc-GF
...
PMP corefinement : improve doc
2017-10-27 18:00:42 +02:00
Laurent Rineau
a1d6d2a7a7
Merge pull request #2514 from janetournois/Polyhedron_demo-fix_isotropic_remeshing_plugin-jtournois
...
Polyhedron demo - fix isotropic remeshing plugin
2017-10-23 17:14:37 +02:00
Laurent Rineau
7caa6ea021
Merge pull request #2514 from janetournois/Polyhedron_demo-fix_isotropic_remeshing_plugin-jtournois
...
Polyhedron demo - fix isotropic remeshing plugin
2017-10-23 16:53:18 +02:00
Jane Tournois
a7a94ac1d7
improve doc
...
add a precondition,
and move a piece of doc where it should be
2017-10-19 15:23:24 +02:00
Jane Tournois
5a45fdf99d
Merge branch 'PMP-fix_isotropic_remeshing_next_to_corners-jtournois' into Polyhedron_demo-fix_isotropic_remeshing_plugin-jtournois
2017-10-17 15:45:30 +02:00
Jane Tournois
fb0d7840d5
remove useless check for reverse version
2017-10-17 15:30:37 +02:00
Jane Tournois
aa758493b1
Merge branch 'PMP-fix_isotropic_remeshing_next_to_corners-jtournois' into Polyhedron_demo-fix_isotropic_remeshing_plugin-jtournois
...
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Isotropic_remeshing/remesh_impl.h
2017-10-16 14:49:02 +02:00
Jane Tournois
03e7265cef
a Polyhedron_3 does not have an internal pmap for face_patch_id_t
...
so the condition was always returning false for a Polyhedron
we are inside the demo, so this condition can be safely removed
2017-10-16 13:04:42 +02:00
Laurent Rineau
46cc91e787
Merge pull request #2478 from mtola/master
...
fix bug -> 2x 2 missing "inline" to prevent duplicate symbols during …
2017-10-13 17:06:22 +02:00
Laurent Rineau
0533547da9
Merge pull request #2447 from sloriot/Demo-add_more_repair_functions
...
add more repair functions in the Polyhedron demo
2017-10-13 17:00:47 +02:00
Laurent Rineau
6bda8ad7d5
Merge pull request #2516 from janetournois/PMP-fix_isotropic_remeshing_with_isolated_vertices-jtournois
...
PMP - fix isotropic remeshing with isolated vertices
2017-10-13 16:54:35 +02:00
Sébastien Loriot
01bda3f852
add function to close boundary cycle of size 2
...
use it after the general stitching function
2017-10-12 14:38:41 +02:00
Sébastien Loriot
a2cc276ccb
simplify the code by avoid to have an extra map for the edge to be stitched
...
the code changes a little bit the output as some border cycles of size 2
can be created (these edges were not set for stitching for example if
there were a third edge that could be stitched and was rejected by the
manifold test)
2017-10-12 14:19:58 +02:00
Laurent Rineau
107cdccd6d
Merge pull request #2438 from lrineau/Mesh_3-test_polyhedral_complex_with_surface_mesh-GF
...
Mesh_3: make it work with Surface_mesh
2017-10-11 19:14:49 +02:00
Jane Tournois
8d486694dc
use check_normals() inside collapse_does_not_invert_face()
2017-10-10 12:51:04 +02:00
Jane Tournois
c657f43f19
deal with more than 2 surface patches in check_normals(v)
...
until now it did not deal with the corner cases
2017-10-10 12:16:03 +02:00
Jane Tournois
6e8bb6b03e
deal with more than 2 patches in the collapsibility checks
2017-10-10 11:48:37 +02:00
Jane Tournois
ddaad24e63
add corner case conditions for collapsibility
2017-10-10 11:46:31 +02:00
Jane Tournois
5cc6209528
filter out isolated vertices
...
for tangential_relaxation and projection
2017-10-09 16:38:57 +02:00
Jane Tournois
6a5c46dd50
remove duplicate member variable
2017-10-09 11:27:06 +02:00
Jane Tournois
3e4e4968f7
add missing vertex_point_map
2017-10-09 11:26:34 +02:00
Jane Tournois
f6418c6145
add a little verbosity
2017-10-09 11:22:54 +02:00
Sébastien Loriot
e9cb74d927
remove doc of parameter removed
2017-10-03 14:00:50 +02:00
Sébastien Loriot
26c1543d14
remove the requirements on the absence of degenerate edges
...
it is no longer needed thanks to the union-find used to merge vertices
2017-10-03 13:58:12 +02:00
Sébastien Loriot
7fdf9cad8c
integrate the are_vertices_stitchable test into the check for non-manifold edges
...
also reinit the union-find on vertices as the master vertex kept
might be one marked as non-stitchable
2017-10-03 13:41:58 +02:00
Sébastien Loriot
d23b301cea
filter edges to be stitched to avoid creating non-manifold vertices
...
edges filtered have two endpoints to be merged
2017-10-02 16:20:05 +02:00
Sébastien Loriot
07bb1d6839
use union-find to merge vertices and decide which vertex to keep
...
This is needed if two patches have edges stitched with identical
vertex point coordinates.
2017-09-29 17:51:58 +02:00
Sébastien Loriot
67791520a1
ignore degenerate edges during the collection of edges to stitch
2017-09-29 16:39:34 +02:00
Sébastien Loriot
671b7abcb6
do nothing is the model is fixed
2017-09-20 14:33:37 +02:00
Sébastien Loriot
78f3d1a38d
extract the function removing faces and filling hole ...
...
... and use it to handle deg faces
2017-09-20 14:33:37 +02:00
Sébastien Loriot
ea34f1b2dd
remove assertions that are using Surface_mesh features
2017-09-20 14:33:37 +02:00
Sébastien Loriot
03cff151ba
factorize the code
2017-09-20 14:33:36 +02:00
Sébastien Loriot
488858cacc
add a check (not yet factorized) to prevent invalid removal of degenerate faces
2017-09-20 14:33:36 +02:00
Sébastien Loriot
0bc5e715e9
add more debug
2017-09-20 14:33:36 +02:00
Sébastien Loriot
90a4e2eefd
add a condition to prevent a flip that is not possible
2017-09-20 14:33:36 +02:00
Sébastien Loriot
6e9cbde3b1
add a method to remove degree 3 vertices in caps degenerate triangles
2017-09-20 14:33:36 +02:00
Sébastien Loriot
b347c88bc5
add some debug code
2017-09-20 14:33:36 +02:00
Sébastien Loriot
7dbbfc5647
add an option to control the merge of vertex points
...
this is conveniant if we do not want to modify the mesh
when the function is called
2017-09-20 14:33:35 +02:00
Sébastien Loriot
f77baded9b
add function to collect pairs of halfedges closed (up to epsilon)
2017-09-20 12:57:17 +02:00
Sébastien Loriot
18725e8841
rename internal function
2017-09-20 12:57:17 +02:00
Sébastien Loriot
4c496ffa83
remove the stitching modifier and use a function instead
2017-09-20 12:57:17 +02:00
Sébastien Loriot
e392b79883
Merge remote-tracking branch 'cgal/releases/CGAL-4.11-branch'
2017-09-20 12:54:11 +02:00
Sébastien Loriot
a7caa5c433
Merge remote-tracking branch 'cgal/releases/CGAL-4.10-branch'
2017-09-20 12:53:27 +02:00
Sébastien Loriot
47e20a4a15
add missing include directive
2017-09-20 12:52:35 +02:00
Laurent Rineau
9d013d2e59
Fix the default AABB tree in Side_of_triangle_mesh
2017-09-20 12:03:32 +02:00
Laurent Rineau
8f9ea82a14
Merge branch 'releases/CGAL-4.10-branch' into releases/CGAL-4.11-branch
2017-09-20 11:17:43 +02:00
Laurent Rineau
5b1828cda2
Merge pull request #2445 from sloriot/PMP-fix_is_stitchable
...
Fix stitchable conditions
2017-09-20 11:13:30 +02:00
Sébastien Loriot
c84014992a
fix the collection of edges to stitch
...
we ignore those incident to a degenerate edge on the border
2017-09-19 15:08:19 +02:00
Sébastien Loriot
4fd381128a
fix stitchable test
...
we were skipping all border edges in the test which was
making it missing some non valid cases detected only
with this border edge (since the test is assymetric
as we consider the first halfedge only for the outer
loop)
2017-09-19 11:52:05 +02:00
Laurent Rineau
36fdb16370
Allow to customize the AABB tree of Side_of_triangle_mesh
...
This is a new optional fourth template parameter of
`Side_of_triangle_mesh`, that is left undocumented for the moment.
2017-09-18 14:56:56 +02:00
Laurent Rineau
cba3b1c20c
Fix detection of border *edges*
2017-09-07 12:07:17 +02:00
Maxime Gimeno
d5ea0b6cbc
Fix warnings and copy PMaps in detect_features.h
2017-09-05 12:03:35 +02:00
Maxime Gimeno
5a9a0bc9fb
Constify read only maps and modify doc accordingly
2017-08-29 12:16:14 +02:00
Sebastien Loriot
97b8782a27
Merge branch 'master' into Detect_features-GF
2017-08-18 16:34:29 +02:00
Jane Tournois
126a85d863
use the fact that vertex_incident_pmap is an LValuePropertyMap
...
and add a missing 'const'
2017-08-18 16:14:22 +02:00
Jane Tournois
7408426fae
rename variable to avoid compilation issues
2017-08-18 12:17:50 +02:00
Jane Tournois
3bc33e9458
improve indentation and layout
2017-08-18 12:14:32 +02:00
Jane Tournois
e2e5b1ed05
edge_is_feature_map is not an optional parameter
...
see reviews in the small feature
2017-08-18 10:51:25 +02:00
Jane Tournois
2bc4d10463
use put instead of [] to fit every type of property map
2017-08-18 10:39:35 +02:00
Jane Tournois
47fd45d4a8
fix conversion warning
2017-08-17 17:25:46 +02:00
Jane Tournois
d5aa3db51d
doc and indentation fixes
2017-08-17 17:24:05 +02:00
Jane Tournois
334d4a0c4f
doc : replace "collects" with "marks"
2017-08-17 16:03:46 +02:00
Jane Tournois
12011422f6
fix conversion warning
2017-08-17 15:43:02 +02:00
Jane Tournois
99aec9eda9
fix the definition of "sharp"
2017-08-17 15:42:11 +02:00
Jane Tournois
d2cc5c0575
add typedefs
2017-08-17 15:22:08 +02:00
Maxime Gimeno
848dea1d42
Fixes default VIP and VNFE
2017-08-11 17:28:06 +02:00
Maxime Gimeno
43ff0d092c
Implementation review Jane and sebastien
2017-08-11 15:30:03 +02:00
Maxime Gimeno
080d3a0895
WIP Jane's review
2017-08-11 09:07:32 +02:00
Maxime Gimeno
723492def1
Use existing named_parameters and vertex_incident_patches becomes lvaluepmap,
2017-08-10 15:16:27 +02:00
Maxime Gimeno
1d497d09ff
Fix warnings and error
2017-08-10 09:37:37 +02:00
Maxime Gimeno
9f16bafef3
Fix Warnings
2017-08-09 15:22:45 +02:00
Maxime Gimeno
f670ffe4e2
detect_surface_patches uses connected_components
2017-08-09 10:24:48 +02:00
Maxime Gimeno
32999ddd78
New pass over doc, tests and examples
2017-08-07 14:50:23 +02:00
Maxime Gimeno
1fe1e21bb6
Replace maximum_surface_patch by first_index.
2017-08-07 13:32:02 +02:00
Maxime Gimeno
3f57e98386
Add license file
2017-08-07 12:20:50 +02:00
Maxime Gimeno
1bad0e7202
Use edges instead of halfedges for edge_is_feature_t and map
2017-08-07 11:39:07 +02:00
Maxime Gimeno
d588c55bbb
Make functions free functions and wright doc
2017-08-04 15:06:41 +02:00
Sébastien Loriot
4d3be80122
fix wording
2017-08-03 13:59:44 +02:00
Maxime Gimeno
95dfae314b
Rename file
2017-08-02 16:26:53 +02:00
Maxime Gimeno
2f45a46f7c
Fix and enhance detect_feature
2017-08-02 16:08:33 +02:00
Maxime Gimeno
d4e7b9f622
Fix fwd and plugin
2017-08-02 14:49:18 +02:00
Laurent Rineau
f8760d591b
Merge pull request #2136 from afabri/Polygon_mesh_processing-accelerate_isotropic_remeshing-GF
...
Polygon_mesh_processing: Accelerate Isotropic_remeshing
2017-07-21 10:45:32 +02:00
Andreas Fabri
cb70bee37c
Polygon_mesh_processing: fix doc
...
`PolygonMesh` -> `TriangleMesh`
2017-07-20 15:00:49 +02:00
Laurent Rineau
1d4d0dcec0
Merge pull request #2153 from janetournois/PMP-add_random_perturbation-jtournois
...
PMP - add random perturbation for triangle meshes
2017-07-17 12:43:58 +02:00
Laurent Rineau
c53c3f9abd
Shorten the lines with a typedef
2017-07-12 15:26:09 +02:00
Andreas Fabri
70b13af39c
Do not pollute the boost namespace
2017-07-12 12:11:34 +02:00
Andreas Fabri
886bd840cf
Make the dynamic property map an implementation detail
2017-07-11 20:32:23 +02:00
Andreas Fabri
5ba2161d21
Make isotropic remeshing compile with OpenMesh
2017-07-11 20:32:22 +02:00
Andreas Fabri
c35a018135
Move add and remove of property maps in namespace internal (realizing that it is wrong to claim that it works for any FaceGraph
2017-07-11 20:31:34 +02:00
Laurent Rineau
a4a30648f7
Fix warnings
2017-07-11 20:31:34 +02:00
Jane Tournois
860cf84b9f
fix the own_tree logic, that is not valid anymore
...
the question is to know whether the vector<AABB_tree*> is built
or not
2017-07-11 20:31:34 +02:00
Jane Tournois
63c3881bc4
comments cleaning
2017-07-11 20:31:34 +02:00
Jane Tournois
0185563131
remove default constructor for Connected_components_pmap
...
keep only one constructor, and compute the connected components
only conditionally when they are needed
2017-07-11 20:31:34 +02:00
Jane Tournois
7f9abe0eb2
remove outdated comment
2017-07-11 20:31:33 +02:00
Jane Tournois
108a8ecbbe
fix the use of Connected_components_pmap
...
when one is given by the user, we don't want to remove it
when we compute one on-the-fly, we do
also fix the debug code accordingly
2017-07-11 20:31:33 +02:00
Jane Tournois
44c6114b2c
use the new dynamic property map system for the halfedge_status_pmap
2017-07-11 20:31:33 +02:00
Jane Tournois
2e1b752aae
use the new dynamic property map system for the face_patch_map
2017-07-11 20:31:33 +02:00
Andreas Fabri
2bfd037c2d
Add keyword template
2017-07-11 20:31:31 +02:00
Jane Tournois
2213628c49
first attempt to remove SM_HALFEDGE_STATUS_PMAP
...
there is some cleaning left to do,
including the dealing with remove_property_map
2017-07-11 20:31:31 +02:00
Jane Tournois
07cb8df9d0
cleaning
2017-07-11 20:31:31 +02:00
Andreas Fabri
1b41423bf1
fix variable name
2017-07-11 20:31:31 +02:00
Andreas Fabri
3aff30811f
remove redefining typedef
2017-07-11 20:31:31 +02:00
Andreas Fabri
0e8397ed8e
Add typename
2017-07-11 20:31:30 +02:00
Andreas Fabri
704b8c8c2d
If there is only 1 connected component there is no corner
2017-07-11 20:31:30 +02:00
Andreas Fabri
7a5f38c77b
bug fix for 3220c14
2017-07-11 20:31:30 +02:00
Andreas Fabri
72de5a4de3
Reserve to avoid reallocation
2017-07-11 20:31:30 +02:00
Andreas Fabri
db1a11b5c9
Reserve to avoid reallocation
2017-07-11 20:31:29 +02:00
Andreas Fabri
ecaad9a83f
If there is only 1 connected component a vertex IS on the patch
2017-07-11 20:31:29 +02:00
Andreas Fabri
4e76d5619c
If there is only 1 connected component, we don't need a map to look up the same value
2017-07-11 20:31:29 +02:00
Andreas Fabri
2ce105f516
BUG FIX: In a previous commit a line got lost
2017-07-11 20:31:29 +02:00
Andreas Fabri
8cc58040fc
fix typo. Note also that in a previous fix I accidentally added code for the Surface_mesh::Property_map
2017-07-11 20:31:29 +02:00
Andreas Fabri
9a7ddead28
no need to find()
2017-07-11 20:31:29 +02:00
Andreas Fabri
86964336ad
make a cheap test first
2017-07-11 20:31:29 +02:00
Andreas Fabri
5acfe4520e
No need to circulate around vertices if we have a mesh without border and without constraints
2017-07-11 20:31:29 +02:00
Andreas Fabri
8af5dfb077
Hopefully less is_collapse_allowed() tests
2017-07-11 20:31:29 +02:00
Andreas Fabri
845e319851
join ranges instead of copying them into a single std::vector
2017-07-11 20:31:28 +02:00
Andreas Fabri
a8152a5bda
Don't construct a triangle
2017-07-11 20:31:28 +02:00
Andreas Fabri
c361eab5b5
Do less degree calculations
2017-07-11 20:31:28 +02:00
Andreas Fabri
6b8cdf8dd3
cleanup
2017-07-11 20:31:28 +02:00
Andreas Fabri
1f8204a648
cleanup
2017-07-11 20:31:28 +02:00
Andreas Fabri
ec229834dd
Switch to a hard-wired propery map
2017-07-11 20:31:28 +02:00
Andreas Fabri
fac05f2498
code transformation to prepare switch to a propery map
2017-07-11 20:31:28 +02:00
Andreas Fabri
724a086822
typo
2017-07-11 20:31:28 +02:00
Andreas Fabri
118020e03a
Remove #include of AABB_filtered_projection_traits.h
2017-07-11 20:31:28 +02:00
Andreas Fabri
6385bdcfbf
Use an AABB_tree per patch
2017-07-11 20:31:28 +02:00
Laurent Rineau
d187d5e229
fix warnings
2017-07-10 18:10:30 +02:00
Sebastien Loriot
196fb95308
Merge branch 'master' into PMP-add_random_perturbation-jtournois
2017-07-10 17:48:54 +02:00
Andreas Fabri
1ec6d7b058
Make repair_plugin work for Surface_mesh
2017-07-10 16:03:04 +02:00
Laurent Rineau
ef116f9fcb
Merge pull request #2188 from sloriot/CGAL-prefix_sign
...
Quality calls to sign
2017-07-10 15:33:55 +02:00
Mael Rouxel-Labbé
ad553fe77d
Removed number_of_borders from doxygen-readable space
2017-06-22 16:17:13 +02:00
Mael Rouxel-Labbé
cf43155309
Small compilation fix for fd5fe64
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é
40655269a2
Documentation for BGL and SMP
...
- Fixed the boost::graph_traits tables
- Seam mesh documentation
- Some minor changes to surface_mesh_parameterization's and ARAP's docs
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é
8da6683ef0
Misc minor changes
...
Some doc, some typos, some indentation...
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé
f087feda83
Missing include in PMP's border.h
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé
2eac1f1c38
Added a function to count the number of borders of a polygon mesh
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé
4b0243d263
Added documentation for PMP's longest_border()
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé
1d068e714f
Fixed a bug in PMP's longest_border()
2017-06-22 16:14:55 +02:00
Mael Rouxel-Labbé
c79c03eec7
Add missing include directive
2017-06-22 16:14:55 +02:00
Sébastien Loriot
8a7d5c9012
use unordered_set from boost rather than std (only available in c++11)
2017-06-22 16:12:26 +02:00
Andreas Fabri
7997925bf8
Add a function longest_border(PolygonMesh&) to PMP
2017-06-22 16:11:38 +02:00
Laurent Rineau
4116d749d2
Merge pull request #1861 from maxGimeno/BGL_copy_face_graph_patch-GF
...
BGL: Connected_component_graph and copy_face_graph_patch
2017-06-22 16:06:14 +02:00
Sébastien Loriot
1bba93acc7
explicit that the sign function is the one from CGAL to avoid ambiguity
2017-06-17 07:31:22 +02:00
Jane Tournois
55157013aa
fix compilation
...
`rng` has to be an l-value, and CGAL::Random() cannot be
so we create rng before passing it to the function
2017-06-15 13:10:47 +02:00
Sébastien Loriot
b667547cb4
fix doxygen warnings
2017-06-15 12:33:27 +02:00
Sébastien Loriot
a3cb116cd4
try improving wording
2017-06-15 12:33:27 +02:00
Jane Tournois
bd97150c85
document random_perturbation(tmesh)
2017-06-15 12:33:27 +02:00
Jane Tournois
c2f9f2e521
add doc for named parameters
2017-06-15 12:33:27 +02:00
Jane Tournois
b0e3dcf953
add a new version of the perturbation function,
...
to perturb only a range of vertices, and not iterate on all vertices
of pmesh
2017-06-15 12:33:27 +02:00
Jane Tournois
c4cb249284
fix typo
2017-06-15 12:33:27 +02:00
Jane Tournois
cb43ffbce6
fix the doc and commit (forgotten) named parameter do_project
2017-06-15 12:33:27 +02:00
Jane Tournois
60d47b1dac
make reprojection optional
2017-06-15 12:31:51 +02:00
Jane Tournois
faadf52a54
make the random generator seeding integer a named parameter
2017-06-15 12:31:51 +02:00
Jane Tournois
bb040bd24b
make the code valid for any CGAL Kernel
2017-06-15 12:31:51 +02:00
Laurent Rineau
9db168393b
Fix a compilation error
2017-06-15 12:31:51 +02:00
Jane Tournois
c9dce37dad
add documentation (and rename PolygonMesh to TriangleMesh)
2017-06-15 12:31:51 +02:00
Jane Tournois
cf14854161
re-project points onto the input surface after perturbation
2017-06-15 12:31:51 +02:00
Jane Tournois
5ae03ccd22
perturb in both directions!
2017-06-15 12:31:51 +02:00
Jane Tournois
63c68e7d39
add a simple perturbation algorithm to randomly perturb vertex locations
2017-06-15 12:31:51 +02:00
Laurent Rineau
2799abf71c
Merge pull request #1983 from maxGimeno/Polyhedron_demo-Use_sm_in_Deformation-GF
...
Polyhedron_demo: Plugins use SM: Second Step
2017-06-15 10:11:49 +02:00
Laurent Rineau
376c2dd002
Merge pull request #1852 from maxGimeno/Doxygen_compare-GF
...
Compare two documentation outputs
2017-06-13 10:18:28 +02:00
Maxime Gimeno
b629a9e9e3
Remove unused parameter name.
2017-06-13 09:29:13 +02:00
Andreas Fabri
e77f1d4d78
Fix the demo
2017-05-31 19:50:02 +02:00
Andreas Fabri
ac30f40f79
Move Mesh_3 specific properties to Mesh_3
2017-05-31 16:14:31 +02:00
Andreas Fabri
4d27ea1cc5
Move selection properties to the Polyhedron demo directory as it is demo specific
2017-05-31 16:05:24 +02:00
Sébastien Loriot
dd64914d59
move helper functions in the BGL package so that they can be used there too
2017-05-30 15:09:42 +02:00
Maxime Gimeno
95960c3b58
Fix after rebase
2017-05-29 13:24:08 +02:00
Andreas Fabri
0f28155729
I had to change Detect_features_in_polyhedra as the property map must be retrieved for the polyhedron passed to a function
2017-05-29 13:24:05 +02:00
Maxime Gimeno
451af8f3ef
bglize and add property maps. polyhedral domain with features works almost for Surface_mesh
...
Conflicts:
Mesh_3/include/CGAL/Mesh_polyhedron_3.h
Mesh_3/include/CGAL/Polyhedral_mesh_domain_with_features_3.h
Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h
2017-05-29 13:22:37 +02:00
Maxime Gimeno
1330777a31
Make property maps for PMP and Surface_mesh generic
...
Conflicts:
Polyhedron/demo/Polyhedron/Plugins/PMP/Detect_sharp_edges_plugin.cpp
Polyhedron/demo/Polyhedron/Scene_surface_mesh_item.h
2017-05-29 13:22:37 +02:00
Maxime Gimeno
b122889723
Make the Detect_sharp_edges_plugin work with a SM_item
...
- finished the BGL-ization of Detect_features_in_polyhedra.h
- added a feature edges visualization to the SM_item.
Conflicts:
Polyhedron/demo/Polyhedron/Plugins/Mesh_3/CMakeLists.txt
Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt
Polyhedron/demo/Polyhedron/Plugins/PMP/Detect_sharp_edges_plugin.cpp
Polyhedron/demo/Polyhedron/Scene_surface_mesh_item.h
2017-05-29 13:22:36 +02:00
Maxime Gimeno
d88dad8bef
Clean-up and warning fix.
...
- Use constructor of sm descriptors instead of static_casts.
2017-05-29 13:20:41 +02:00
Maxime Gimeno
5e630f5c48
Move Detect_feature_edges to PMP
2017-05-29 13:20:40 +02:00
Maxime Gimeno
880b6e21a2
Fixes and Clean-up.
...
- Move the new properties in a file in PMP and remove them from the namespace boost.
- Move the surface mesh properties from properties_Surface_mesh.h to Scene_surface_mesh_item.h
2017-05-29 13:20:39 +02:00
Laurent Rineau
c174b9880d
Merge remote-tracking branch 'cgal/releases/CGAL-4.10-branch'
2017-05-26 17:56:13 +02:00
Sébastien Loriot
ad1997e21a
handle negative edge length + always do edge flips
2017-05-24 12:18:35 +02:00
Sébastien Loriot
3a8ef39465
filter degenerated triangles in the AABB-tree used for the reprojection
2017-05-24 10:18:44 +02:00
Sébastien Loriot
9b4e04c48a
move function to test if a triangle face is degenerated in BGL helpers
2017-05-24 10:18:44 +02:00
Sébastien Loriot
7fb806cb76
add missing boost namespace
2017-05-24 10:18:44 +02:00
Sébastien Loriot
b73cf88d18
add a way to only call the tangential relaxation+reprojection
2017-05-24 10:18:43 +02:00
Sébastien Loriot
24795331a3
cosmetic changes
2017-05-24 10:18:43 +02:00
Sébastien Loriot
fd4e66934f
select all interior edges
...
with the older implementation, the edges of a face was ignored
as soon as it was marked as visited while its edges must still
be visited
2017-05-24 10:18:43 +02:00
Laurent Rineau
31f277dc93
Merge pull request #2072 from janetournois/Mesh_3-improvements-GF
...
Mesh 3 : small improvements
2017-05-22 10:59:48 +02:00
Laurent Rineau
d9bc11f294
Merge pull request #2072 from janetournois/Mesh_3-improvements-GF
...
Mesh 3 : small improvements
2017-05-22 10:59:47 +02:00
Laurent Rineau
9aea1f228d
Merge pull request #2105 from sloriot/PMP-stitch_avoid_creating_non_manifold_edges
...
prevent the merge of two vertices that would create a non-manifold edge
2017-05-19 10:29:57 +02:00
Laurent Rineau
8f84930b9a
Merge pull request #2100 from janetournois/PMP-fix_isotropic_remeshing_patch_corners-jtournois
...
PMP : fix isotropic remeshing of a selection
2017-05-19 10:29:41 +02:00
Laurent Rineau
25df414e6e
Merge pull request #2085 from sloriot/PMP-Side_of_triangle_mesh_details
...
Add implementation details
2017-05-19 10:29:10 +02:00
Laurent Rineau
a07cd292d9
Merge pull request #2071 from janetournois/Polyhedron_demo-improve_surf_reader-GF
...
Polyhedron demo : improve .surf reader
2017-05-19 10:28:22 +02:00
Laurent Rineau
60c2413312
Merge pull request #2085 from sloriot/PMP-Side_of_triangle_mesh_details
...
Add implementation details
2017-05-19 10:28:13 +02:00
Laurent Rineau
de757b671e
Merge pull request #2105 from sloriot/PMP-stitch_avoid_creating_non_manifold_edges
...
prevent the merge of two vertices that would create a non-manifold edge
2017-05-19 10:27:40 +02:00
Laurent Rineau
fa3c3c2bf2
Merge pull request #2071 from janetournois/Polyhedron_demo-improve_surf_reader-GF
...
Polyhedron demo : improve .surf reader
2017-05-19 10:27:18 +02:00
Laurent Rineau
dfd77d4aff
Merge pull request #2100 from janetournois/PMP-fix_isotropic_remeshing_patch_corners-jtournois
...
PMP : fix isotropic remeshing of a selection
2017-05-19 10:27:09 +02:00
Laurent Rineau
3b1ebdb574
Merge pull request #2057 from janetournois/PMP-fix_is_outward_oriented-GF
...
PMP : fix `PMP::is_outward_oriented()`
(From a merge of 'cgal/releases/CGAL-4.10-branch', plus a merge of the
commit 'a6e2783'. That commit fixes the incompatibility with recent
changes in `master`.)
2017-05-17 13:02:38 +02:00
Sébastien Loriot
a6e2783d36
use internal namespace introduced in e9395ab for accessing named parameters
2017-05-17 13:01:29 +02:00
Sébastien Loriot
d4fa3c860c
fix test incorrectly simplified test
2017-05-12 09:49:44 +02:00
Sébastien Loriot
51dce78e78
fix the last step of the algorithm to pick the top face along the z-axis
2017-05-12 09:49:43 +02:00
Sébastien Loriot
976ba8b75a
fix the outward orientation test
2017-05-12 09:49:43 +02:00
Sébastien Loriot
8af0216b54
update internal use of is_outward_oriented() by does_bound_a_volume()
2017-05-12 09:49:43 +02:00
Sébastien Loriot
1a29f74325
Revert "remove the use of internal::is_outward_oriented"
...
This reverts commit 37c5b0bd4e6d550c86bf7f173eaa4bfc1fa5bf6f.
2017-05-12 09:49:43 +02:00
Sébastien Loriot
1e22c09969
fix warning
2017-05-12 09:49:43 +02:00
Jane Tournois
686b418fe0
remove the use of internal::is_outward_oriented
2017-05-12 09:49:42 +02:00
Jane Tournois
766ff220b6
and missing include
...
and fix the use of namespaces
2017-05-12 09:49:42 +02:00
Jane Tournois
49818d56ce
add a runtime warning and return true for empty mesh
2017-05-12 09:49:42 +02:00
Jane Tournois
57b01e0b8f
make if work also if GT::Compare_z_3 does not have a default constructor
...
(may happen with a geom traits with state)
2017-05-12 09:49:42 +02:00
Jane Tournois
6c2ee8a35e
fix the implementation of is_outward_oriented(polygon mesh)
...
this implementation does not require the construction of the normal,
and is based only on Kernel predicates
2017-05-12 09:49:42 +02:00
Sébastien Loriot
44a7b9f590
fix the stitchable test
...
the common vertex incident to the two non-stitchable vertices
is not in general in the faces incident to the edges to be
stitched
2017-05-11 17:35:26 +02:00
Laurent Rineau
7aad2a560c
Merge pull request #1891 from maxGimeno/PMP_named_params_macro-GF
...
Use macros to add parameters in PMP
2017-05-11 17:09:38 +02:00
Sébastien Loriot
7a841cad48
prevent the merge of two vertices that would create a non-manifold edge
2017-05-10 18:55:03 +02:00
Jane Tournois
ce51fef0d5
replace std::set with boost::container::flat_set
...
for efficiency reasons
2017-05-09 12:23:17 +02:00
Jane Tournois
70c9b5e0a5
constrain corners
...
vertices that are at the "corner" of the face range to be remeshed,
i.e. on the border of the face range, and also on the border of the mesh,
incident to both the selected and unselected faces, should be constrained,
to avoid making a "axe blow" in the border
2017-05-05 17:37:49 +02:00
Sébastien Loriot
20e7f245c7
add implementation details
2017-04-27 17:24:47 +02:00
Sébastien Loriot
d0a2c817da
remove a todo that is now an issue
2017-04-27 16:28:00 +02:00
Andreas Fabri
bf3542116a
Polygon_mesh_processing: Fix documentation
...
splitted -> split
2017-04-26 14:42:59 +02:00
Jane Tournois
2b16193db4
deal with non-manifold surfaces
...
because a CGAL::Polyhedron cannot be non-manifold along an edge, we need
to build the polyhedral surface using PMP::orient_polygon_soup, and
PMP::polygon_soup_to_polygon_mesh.
These functions introduce duplicated points, that are dealt with in this commit
when reading a .surf file, isolated vertices are ignored
2017-04-21 14:40:08 +02:00
Jane Tournois
a4a05c406b
replace a std::set by a boost::flat_set to speedup
2017-04-20 17:00:23 +02:00
Andreas Fabri
58bcecc497
License check for Corefinement and Distance
2017-03-22 14:07:52 +01:00
Andreas Fabri
cd7deb8577
License check for Corefinement and Distance
2017-03-22 12:32:43 +01:00
Andreas Fabri
774bdc4351
License check for Geometric Meshing and Hole Filling
2017-03-22 12:10:37 +01:00
Andreas Fabri
fde105b437
License check for Predicates
2017-03-22 10:29:59 +01:00
Andreas Fabri
51bbe5d1f6
License check for Geometric Measures and Miscellaneous
2017-03-22 10:05:39 +01:00
Andreas Fabri
d04b048aa9
License check for Connected Components
2017-03-22 09:21:27 +01:00
Andreas Fabri
9bcf8b040e
move corefinement specific code from PMP to Operations_on_polyhedra
2017-03-22 09:12:30 +01:00
Andreas Fabri
44c1328f55
License check for Normal Computation Functions
2017-03-22 08:54:00 +01:00
Sébastien Loriot
0b29878f6d
better handling of tangency
...
correctly handle dangling intersection polylines
that appear when models are tangent along an edge
2017-03-16 18:44:13 +01:00
Sébastien Loriot
a79f461548
be more permissive for open meshes
2017-03-15 17:13:40 +01:00
Laurent Rineau
5947475c5c
Merge pull request #1906 from sloriot/PMP-stitching_non_manifold_edges-GF
...
Make the function stitch_borders() resilient to non-manifold edges
2017-02-14 16:11:01 +01:00
Sébastien Loriot
c873532da5
avoid stitching non-manifold edges
...
we do not stitch them at all since we might produce inconsistancies
2017-02-14 13:45:08 +01:00