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
konstantinos katrioplas
ee051f18e9
fix vector_property_map and vertex_point map
2017-07-09 13:13:17 +03:00
konstantinos katrioplas
b145af2f33
mean curvature function overload fix
2017-07-09 11:34:54 +03:00
konstantinos katrioplas
3c5ca4d88d
setup for curvature flow class
2017-07-05 12:20:24 +03:00
konstantinos katrioplas
ab673f61ea
switch default angle weighting off temporarily
2017-06-29 08:49:41 +03:00
konstantinos katrioplas
b4b3ace780
small fix for collapsed degenerate cases after first iteration when using angle weights and some typos
2017-06-29 08:30:47 +03:00
konstantinos katrioplas
fec9a13e68
anneal learning rate asymptotically
2017-06-27 14:38:58 +03:00
konstantinos katrioplas
bb13cf0d3d
anneal learning rate in gradient descent with a power law to avoid local minima
2017-06-27 12:48:30 +03:00
konstantinos katrioplas
87df982112
take No_constraint_map from remesh_impl
2017-06-25 20:33:07 +03:00
konstantinos katrioplas
517e35d894
use (optionally) weighted angles on calculating the barycenter
2017-06-25 20:12:54 +03:00
konstantinos katrioplas
89bcf82b8f
add gradient descent precision as named parameter
2017-06-25 17:05:11 +03:00
konstantinos katrioplas
137031d77e
iterations and combination of area and angle remeshing
2017-06-24 21:09:21 +03:00
konstantinos katrioplas
5a38cdf185
area: remove projection on the fly, projection at the end only
2017-06-24 18:46:05 +03: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
konstantinos katrioplas
d93e18b1b3
add constrained edges map
2017-06-19 14:51:26 +03:00
konstantinos katrioplas
4ff97d4b8e
merge area and angle classes
2017-06-18 23:31:21 +03:00
konstantinos katrioplas
f8019da79d
new design: smoothing.h - internal/Isotropic_remeshing/smoothing_impl.h
2017-06-18 22:51:15 +03:00
konstantinos katrioplas
20238d5aba
projection in angle smoothing
2017-06-18 18:03:37 +03:00
konstantinos katrioplas
291a6dc32f
area - bugs and optimizations in gradient descent
2017-06-17 19:57:45 +03: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
konstantinos katrioplas
afb8eb01cb
fix degenerate cases on angle smoothing
2017-06-16 16:11:07 +03: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
konstantinos katrioplas
b8d7a2cb2c
fix tolerance on 180 degrees degenerate case
2017-06-15 07:27:31 +03:00
konstantinos katrioplas
8c196474b1
better approach to degenerate cases
2017-06-15 00:36:30 +03:00
konstantinos katrioplas
6903ab9bf0
fix nan degenerate case
2017-06-14 14:56:22 +03:00
konstantinos katrioplas
aaa91aa3ed
handle degenerate cases and tests
2017-06-14 13:14:52 +03:00
konstantinos katrioplas
cd7e7e4402
area smoothing - projection with tree constructed with copied triangles
2017-06-13 13:51:05 +03: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
konstantinos katrioplas
3ff37e0ff6
project to surface with an Incremental remesher
2017-06-11 23:24:17 +03:00
konstantinos katrioplas
b66b27a1ae
area smoothing 3D stable without projection
2017-06-10 13:31:33 +03:00
konstantinos katrioplas
1d5754ccf8
fix scaling of bisector to correct length
2017-06-05 10:55:59 +03:00
konstantinos katrioplas
62a1989a65
project to tangent plane
2017-06-04 17:46:31 +03:00
konstantinos katrioplas
6c9718e272
angle-based smoothing
2017-06-03 22:45:06 +03: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