Sébastien Loriot
0607f2511e
improve user manual
2016-12-30 16:12:37 +01:00
Sébastien Loriot
88d391ab51
improve phrasing
2016-12-30 15:46:13 +01:00
Sébastien Loriot
6341b5d5ed
rename named parameter and update concept after adding edge sampling
2016-12-30 14:52:10 +01:00
Sébastien Loriot
a047641ec9
update user manual and add a picture to illustrate the sampling methods
2016-12-30 14:28:37 +01:00
Sébastien Loriot
91278918d7
reorder named parameters
2016-12-29 18:06:58 +01:00
Sébastien Loriot
a847818904
improve description
2016-12-29 18:02:36 +01:00
Sébastien Loriot
886b65edd1
remove set_ prefix from named parameters
2016-12-29 17:50:16 +01:00
Sébastien Loriot
bfc20a922b
move using instructions
2016-12-29 07:21:04 +01:00
Sébastien Loriot
283815c875
improve doc
2016-12-29 07:21:04 +01:00
Sébastien Loriot
29b28949e9
cite metro
2016-12-29 07:21:04 +01:00
Sébastien Loriot
94b2720fbd
use name parameters for selecting the sampling algorithm
...
A dedicated sampling of edges is also introduced as well as
an option to use input vertices to evaluate the distance.
2016-12-29 07:20:25 +01:00
Sébastien Loriot
3e018b4d1a
use snippet to avoid inlining a whole example while we care only of a tiny part
2016-12-29 07:20:25 +01:00
Sébastien Loriot
e40a84d2f9
use Real_timer to avoid since Timer measure cpu time
2016-12-29 07:20:25 +01:00
Sébastien Loriot
db6b7e0a00
add sampling on edges and vertices for a single face (grid case)
...
also add missing overload
2016-12-29 07:20:25 +01:00
Sébastien Loriot
5ee83b555b
remove Triangle_3 extra requirements
2016-12-29 07:20:25 +01:00
Sébastien Loriot
621c6c5457
cosmetic changes
2016-12-29 07:20:24 +01:00
Sébastien Loriot
fd87870977
fix constructed vector
2016-12-29 07:20:24 +01:00
Maxime Gimeno
4568381657
Another fix for the doc
2016-12-29 07:20:24 +01:00
Maxime Gimeno
cdc76129d0
Keep fixing the doc
2016-12-29 07:20:24 +01:00
Andreas Fabri
9dee15964b
poisson -> Poisson
2016-12-29 07:20:24 +01:00
Andreas Fabri
18a39a54bd
fix VC++ warnings by adding static_cast
2016-12-29 07:20:24 +01:00
Andreas Fabri
c84e72f7a5
Fix typo in example; Functions in manuals always with '()'
2016-12-29 07:20:24 +01:00
Maxime Gimeno
768e52fe54
Another fix of the doc.
2016-12-29 07:20:23 +01:00
Maxime Gimeno
1d43e641d6
Fix measure.h and update demo plugin code
2016-12-29 07:20:23 +01:00
Maxime Gimeno
581b677a44
Add sample_face() and fix some doc.
2016-12-29 07:20:23 +01:00
Simon Giraudot
98b5ae4682
Fix angle/circumcenter/m_edge problems
2016-12-29 07:20:23 +01:00
Maxime Gimeno
06dd4a4522
Add a geom-traits concept for distance functions
...
Update the code and the doc accordingly
2016-12-29 07:20:23 +01:00
Jane Tournois
7ec512e359
update approximated -> approximate
2016-12-29 07:20:23 +01:00
Jane Tournois
e9f6885d3e
minor doc fixes
2016-12-29 07:20:23 +01:00
Jane Tournois
2e804f6e48
fix the doc of `sample_triangle_mesh`
...
fix a few typos, and fix the layout of bullet lists
2016-12-29 07:20:22 +01:00
Maxime Gimeno
d5bdf342d4
Use functor instead of free function volume()
2016-12-29 07:20:22 +01:00
Maxime Gimeno
9140ab3f31
Replace approximated by approximate in the function names.
2016-12-29 07:20:22 +01:00
Sébastien Loriot
3710a60b9c
doc clean up
2016-12-29 07:20:22 +01:00
Maxime Gimeno
0cc2c59981
Fixes for SF.
2016-12-29 07:20:22 +01:00
Maxime Gimeno
cc44c571e5
Shorten the code lines.
2016-12-29 07:20:22 +01:00
Maxime Gimeno
3fca4399c6
Add examples and keep fixing the doc
2016-12-29 07:20:22 +01:00
Maxime Gimeno
cbf7e6b722
Doc and test fix.
2016-12-29 07:20:21 +01:00
Sébastien Loriot
81b11ee2d5
Bug-fix: accept range of points as input and not only vectors
2016-12-29 07:20:21 +01:00
Maxime Gimeno
0c3edf822c
Add tests for misisng documented functions.
2016-12-29 07:20:21 +01:00
Maxime Gimeno
a4127d74c1
Add distance computation to poisson_reconstruction's example.
2016-12-29 07:20:21 +01:00
Maxime Gimeno
6cf0504f95
Fixes and clean-up : first part.
2016-12-29 07:20:21 +01:00
Maxime Gimeno
3cedefa08e
Update the doc.
2016-12-29 07:20:21 +01:00
Maxime Gimeno
9e767fd16f
Fix and clean-up
2016-12-29 07:20:21 +01:00
Maxime Gimeno
6858d65e5d
Update and fix
...
Parallelize the plugin if TBB is linked with CGAL and fix the parallelized code in distance.h.
2016-12-29 07:20:21 +01:00
Maxime Gimeno
a232a257ca
Implementation of the `max_distance_to_point_set()` function.
2016-12-29 07:20:21 +01:00
Maxime Gimeno
a6b3caa1a5
Add the hausdorff example file.
2016-12-29 07:20:20 +01:00
Maxime Gimeno
033adb29f1
Update the demo and fix the code for Polyhedron.
2016-12-29 07:20:20 +01:00
Maxime Gimeno
542efa95d7
Implement the NamedParameters functions and use the property maps.
2016-12-29 07:20:20 +01:00
Maxime Gimeno
c9ec5a224e
Remove useless sampling.
2016-12-29 07:20:20 +01:00
Maxime Gimeno
f742ad250e
Fix for use with Polyhedron
...
- Polyhedron does not have a halfedge_around_face_descriptor, thus it does not respect the BGL doc and we must use a regular halfedge_descriptor instead.
2016-12-29 07:20:20 +01:00
Maxime Gimeno
39e7b76902
WIP
2016-12-29 07:20:19 +01:00
Maxime Gimeno
0f13cde758
Implementation:
...
- cherry-pick Random_generator
- implement hausdorff distance functions
- implement sample_triangle_mesh
2016-12-29 07:20:19 +01:00
Maxime Gimeno
62e78f34e5
WIP
2016-12-29 07:20:19 +01:00
Maxime Gimeno
c4a6da2f8b
Transform the overloads to use Surface_mesh instead of triangle meshes.
2016-12-29 07:20:19 +01:00
Maxime Gimeno
c5a17ce354
Change `approximated_Hausdorff_distance()` to use a Surface_mesh instead of a triangle range.
2016-12-29 07:20:19 +01:00
Maxime Gimeno
09040105a1
Create an example file to test the Hausdorff distance.
2016-12-29 07:20:19 +01:00
Sébastien Loriot
2577fd912e
WIP to add Hausdorff distance to a mesh
2016-12-29 07:20:19 +01:00
Sébastien Loriot
9dbaf36646
put function is correct group
2016-12-26 08:33:43 +01:00
Sébastien Loriot
6b72ab2a6e
remove a too strict check that eliminate all operations in case of edge tangency
2016-12-22 16:17:02 +01:00
Sébastien Loriot
39fe7c2936
handle the import of border halfedge
2016-12-22 16:11:21 +01:00
Sébastien Loriot
d18e9b2e85
fix typo
2016-12-22 10:25:08 +01:00
Sébastien Loriot
c8ed365d29
add data set producing a non-manifold vertex
2016-12-22 09:23:54 +01:00
Sébastien Loriot
72119d08c8
add an internal function to collect degenerate faces
2016-12-22 09:23:53 +01:00
Sébastien Loriot
98862227be
make it work with Polyhedron
...
the indices of the faces are initialized now if the face index map is writable
2016-12-19 16:49:51 +01:00
Sébastien Loriot
a7ee97a92c
remove unused variable
2016-12-15 17:34:21 +01:00
Andreas Fabri
2ed5bfd9cd
Construct exact points only once, and the normal of the plane directly from three points
2016-12-14 09:23:35 +01:00
Sébastien Loriot
e70f7db943
fix assertion
2016-12-14 08:29:30 +01:00
Sébastien Loriot
3282ed2847
Skip an orientation test for inserting the third point
...
since we already know the orientation of the input points we can skip it
2016-12-14 08:25:48 +01:00
Sébastien Loriot
c679453100
remove a test that is always true
2016-12-13 18:30:19 +01:00
Sébastien Loriot
1a14d26a86
optimize the triangulation of faces
...
- insert the 3 first points outside of the affine hull (no check of equality)
- insert points on edges using locate type to avoid orientation tests
of collinear points
2016-12-13 17:10:50 +01:00
Sébastien Loriot
a83e23611a
fix typo
2016-12-13 16:16:52 +01:00
Sébastien Loriot
572cf361b4
comment debug function
2016-12-13 11:16:38 +01:00
Sébastien Loriot
55c3e1ad61
avoid using a std::set and a std::vector for container storing at most 2 elements
...
Thanks @afabri
2016-12-12 22:29:05 +01:00
Sébastien Loriot
12fea568f0
using a vector instead of a set
2016-12-12 21:44:07 +01:00
Sébastien Loriot
9173ec4f29
remove a call to a debug function
2016-12-12 14:34:22 +01:00
Andreas Fabri
1607ccb411
Fix VC2015 warning
2016-12-12 13:15:19 +01:00
Sébastien Loriot
478e5283cd
qualify function calls with boost namespace
2016-12-12 12:54:44 +01:00
Sébastien Loriot
6c7bee5d0a
fix conversion warnings
2016-12-09 14:14:08 +01:00
Sébastien Loriot
fac4a6add5
fix the report of polyline in the visitor
...
the 2 first nodes were always reported twice
2016-12-09 13:36:55 +01:00
Sébastien Loriot
804f878556
fix warnings
2016-12-08 15:22:04 +01:00
Sébastien Loriot
ac2faf9fe1
fix doc
2016-12-05 18:28:29 +01:00
Andreas Fabri
10bd9897f3
Compare with 0 in order to avoid a warning
2016-12-05 17:18:11 +01:00
Sébastien Loriot
c3e1309181
update from master branch
2016-12-05 14:37:29 +01:00
Sébastien Loriot
845317a9fb
fix doc and remove todo done
2016-12-05 14:32:19 +01:00
Sébastien Loriot
6604704dbe
fix examples
2016-12-05 14:26:33 +01:00
Sébastien Loriot
f83a620087
fix warnings
2016-12-05 14:09:04 +01:00
Laurent Rineau
49ffa5ed81
Merge pull request #1730 from MaelRL/PMP-Fix_border_halfedges_compilation
...
Fixed a compilation issue in PMP's border_halfedges()
2016-12-05 11:49:54 +01:00
Sébastien Loriot
56b8908dac
remove a todo
...
if we unmark intersection edge inside a coplanar patch, we will have something
not consistant with what is done is corefine(). For now I keep it like this
2016-12-05 11:12:47 +01:00
Sébastien Loriot
d70290962e
add a new data-set
2016-12-05 11:07:35 +01:00
Sébastien Loriot
fb68b3a6c2
add implementation of does_bound_a_volume + test
2016-12-05 11:06:13 +01:00
Sébastien Loriot
7b727ea7cf
expose the internal AABB-tree class
...
that was a bug as the constructor taking an AABB-tree could
not be used otherwise
2016-12-02 16:11:48 +01:00
Sébastien Loriot
3dc7076b79
add an function to check inward orientation when extreme vertex is known
2016-12-02 16:10:29 +01:00
Laurent Rineau
f100d59987
Merge pull request #1722 from janetournois/PMP-fix_doc_isotropic_remeshing-GF
...
PMP : fix documentation bug for `vertex_is_constrained_map`
2016-12-02 11:37:47 +01:00
Sébastien Loriot
6bc8caac43
use safer property choosing mechanism
2016-12-02 11:35:18 +01:00
Laurent Rineau
a80fc35561
Merge pull request #1696 from MaelRL/PMP-Fix_border_halfedges
...
Fixed an implementation of PMP's border_halfedges()
2016-12-02 11:35:07 +01:00
Laurent Rineau
78ae3414e4
Merge pull request #1693 from janetournois/PMP-fixes_for_isotropic_remeshing_4.9-jtournois
...
PMP : fixes for isotropic remeshing
2016-12-02 11:34:51 +01:00
Laurent Rineau
9bb29f0c75
Merge pull request #1628 from MaelRL/PMP-Fix_self_intersections
...
Fixed self intersection tests
2016-12-02 11:34:38 +01:00
Laurent Rineau
e559968307
Merge pull request #1682 from sloriot/PMP-use_readable_pmap_api
...
Use readable property map API
2016-12-02 11:33:54 +01:00
Laurent Rineau
fe7a537f28
Merge pull request #1681 from sloriot/PMP-remove_a_border_edge
...
Add an undocumented function to remove border edges
2016-12-02 11:33:41 +01:00
Sébastien Loriot
e1d7c43314
remove or use all test data
2016-12-02 09:29:26 +01:00
Sébastien Loriot
46cdd7f7dc
add testsuite for corefine
2016-12-02 08:43:25 +01:00
Sébastien Loriot
834879e50e
add bash script to run locally a corefinement testsuite
2016-12-01 17:08:51 +01:00
Sébastien Loriot
8cc156724e
factorize test for PMP and OOP coref
2016-12-01 17:08:18 +01:00
Sébastien Loriot
820ebd8eee
fix warnings and ambiguity of copy_edge_mark
2016-12-01 15:16:57 +01:00
Sébastien Loriot
834869c533
add a convenience overload
2016-12-01 15:16:57 +01:00
Mael Rouxel-Labbé
bfbba26124
Fixed a compilation issue in PMP's border_halfedges()
...
Previous code did not compile if a face index map was not given
in named parameters, nor as an internal property map
2016-12-01 12:04:12 +01:00
Sébastien Loriot
853c156c10
Handle transfer of marks from input to output
2016-11-30 14:18:42 +01:00
Sébastien Loriot
2671c4c922
bugfix: use the backuped face as the patch border halfedge was set on-border
2016-11-30 14:18:00 +01:00
Sébastien Loriot
812bc885d5
add function that I forgot to port
2016-11-30 10:29:28 +01:00
Sébastien Loriot
5678363c4d
add test file checking that corefinement handles constrained edges correctly
2016-11-25 14:38:18 +01:00
Jane Tournois
35cce254bb
fix documentation bug
...
vertices can be changed because of collapse,
for which we don't always know if vkept will be source
or target
2016-11-25 11:02:47 +01:00
Andreas Fabri
44324c7eb1
add examples to examples.txt
2016-11-24 14:01:11 +01:00
Sébastien Loriot
bc719ad192
fix copy-paste error
2016-11-23 15:52:50 +01:00
Sébastien Loriot
6db2bff67b
handle call to corefinement functions with identical meshes
2016-11-23 15:48:00 +01:00
Sébastien Loriot
3f316c9596
fix warnings and add missing include directive
2016-11-23 14:35:55 +01:00
Sébastien Loriot
3ec5914ca2
add missing test file
2016-11-22 16:10:37 +01:00
Jane Tournois
e5dcef0528
deal with surface patch indices during collapse
...
for checking that faces do not get inverted
2016-11-21 17:55:25 +01:00
Jane Tournois
5a2eaa96a0
use Patch_id(-1) as invalid patch id
2016-11-21 17:46:22 +01:00
Jane Tournois
0b4ecf6531
is_corner should return true for a dart
2016-11-21 14:51:08 +01:00
Jane Tournois
c28dc6f210
avoid conversion warning
2016-11-21 14:47:46 +01:00
Mael Rouxel-Labbé
1367e3e09d
Reworked how boolean parameters are passed in self_intersection tests
2016-11-20 00:59:15 +01:00
Jane Tournois
8f8ccc3c39
fix the case where patch2 was not met yet
2016-11-18 17:44:10 +01:00
Jane Tournois
f1cb55bf80
deal with boundaries by skipping null_face
2016-11-17 16:29:03 +01:00
Mael Rouxel-Labbé
92b4a49e38
Documentation changes for PMP's border_halfedges()
2016-11-17 14:17:26 +01:00
Jane Tournois
fb1af78ab5
check orientation of faces surface patch per surface patch
2016-11-17 11:45:17 +01:00
Mael Rouxel-Labbé
0851d2b4e8
Fixed an implementation of PMP's border_halfedges() returning interior edges
...
and the corresponding documentation.
2016-11-16 11:22:35 +01:00
Jane Tournois
b29c578d19
fix the boundary case
...
once the no-inversion test has been performed, check that we don't have
a boundary problematic case
It would require to reswap, and break the border of the patch to be remeshed
2016-11-15 17:18:13 +01:00
Jane Tournois
e4f9f9fea7
check that relaxation does not produce an inverted face
...
it can happen close to the boundary, where things are naturally
more constrained
2016-11-15 17:17:53 +01:00
Jane Tournois
2e6d55f813
remove a todo
2016-11-15 17:17:32 +01:00
Jane Tournois
7be46604ec
fix collapse step
...
the inverse orientation test should also be performed on the border
2016-11-15 17:17:16 +01:00
Jane Tournois
e8adc69337
rename function to improve code readability
2016-11-15 17:17:04 +01:00
Jane Tournois
33ef17760f
avoid collapsing an isolated constrained edge in the "middle" of a patch
2016-11-15 17:16:39 +01:00
Sébastien Loriot
a84faf682c
use a larger edge target in the example
2016-11-15 13:57:12 +01:00
Andreas Fabri
ee1a911af5
only compile if the compiler supports cxx_range_for
2016-11-14 08:21:03 +01:00
Sébastien Loriot
f128addaca
fix order of the parameters
2016-11-13 19:54:13 +01:00
Sébastien Loriot
5ec738fcd8
qualify a call to choose_param
2016-11-13 19:53:46 +01:00
Sébastien Loriot
b34d8cd6b8
use readable property map API
...
operator[]() is only required in Lvalue property map
2016-11-11 10:04:35 +01:00
Sébastien Loriot
478a40c9aa
add an undocumented function to remove border edges
...
this works even if it does not satisfy the link condition
2016-11-10 18:52:20 +01:00
Sébastien Loriot
1501b4400c
int -> std::size_t for node ids
2016-11-10 14:38:10 +01:00
Sébastien Loriot
d7c6d30def
directly use the halfedge used to create the points
2016-11-10 14:27:10 +01:00
Sébastien Loriot
48fa75f829
the halfedges reported for intersection on a vertex or an edge was incorrect
...
copy-paste error...
2016-11-10 14:22:22 +01:00
Sébastien Loriot
167c52b00d
add todos, assertions and comments
2016-11-10 09:45:19 +01:00
Sébastien Loriot
f68a2a4dff
edges are not sorted and do not appear twice: do not skip them using indices
2016-11-10 09:41:18 +01:00
Sébastien Loriot
ddaf6cd90b
avoid reporting several time the same node per edge and face
...
This happens only in the case of coplanar triangles and can
be avoided by only reporting the node when it is first
created
2016-11-10 09:23:02 +01:00
Sébastien Loriot
918b71339f
bugfix: copy-paste error, wrong mesh
2016-11-04 09:55:56 +01:00
Andreas Fabri
362a77b9de
fix typos - thank you Jane
2016-11-03 15:03:24 +01:00
Sébastien Loriot
1ed98a7d9a
simply the detection of coplanar faces
...
coplanar faces are made of 3 intersection edges and each of its vertex
has a node-id != -1
2016-11-03 14:31:20 +01:00
Sébastien Loriot
cab2634387
bug fix in the detection of intersection edges in the middle of a coplanar patch
...
do not remove the edges from the intersection map while we are still using them
2016-11-03 14:18:12 +01:00
Andreas Fabri
dc3cfa9551
fix typo
2016-11-03 14:15:55 +01:00
Mael Rouxel-Labbé
124245ab57
Allowed to pass expected values along with input files in self intersections tests
2016-11-03 12:39:22 +01:00