Commit Graph

1604 Commits

Author SHA1 Message Date
Sébastien Loriot 0653e9583a pass on the doc 2018-03-26 14:20:30 +02:00
konstantinos katrioplas 2c5b80146b incl. a time parameter 2018-03-26 14:20:30 +02:00
konstantinos katrioplas 5b90d9a805 latest fixes 2018-03-26 14:19:32 +02:00
Pierre Alliez 3b56478bb1 added time parameter to shape smoothing 2018-03-26 14:17:48 +02:00
konstantinos katrioplas 2ca3d01e35 area smoothing tolerance fix 2018-03-26 14:12:42 +02:00
konstantinos katrioplas 23670bb712 add implicit scheme for shape smoothing 2018-03-26 14:12:18 +02:00
konstantinos katrioplas 52126819e0 fix typo 2018-03-26 14:12:08 +02:00
konstantinos katrioplas 6f46f5d55d rebased summer work 2018-03-26 14:10:49 +02:00
Sébastien Loriot 4824f3bcc9 Merge branch 'master' into gsoc17-summerwork
Reworking of 4e4d495ac2
2018-03-26 14:04:36 +02:00
Sébastien Loriot 5af495ea45 remove kernel typedef 2018-03-26 13:59:25 +02:00
konstantinos katrioplas a1d6164466 License on evaluation class 2018-03-26 13:59:25 +02:00
konstantinos katrioplas b39fe7803d mesh quality evaluation class 2018-03-26 13:59:24 +02:00
konstantinos katrioplas c840481b8c License 2018-03-26 13:59:24 +02:00
konstantinos katrioplas 897692bc16 document overloads 2018-03-26 13:59:24 +02:00
konstantinos katrioplas a9cc924001 renaming functions in API 2018-03-26 13:59:24 +02:00
konstantinos katrioplas 2a7e9e81fd clean curvature flow impl 2018-03-26 13:59:23 +02:00
konstantinos katrioplas 300897c358 corrections in verbose output 2018-03-26 13:59:23 +02:00
konstantinos katrioplas 9706baa796 compatible remeshing function 2018-03-26 13:59:22 +02:00
konstantinos katrioplas a0e7cf4a7f cleaning code & use weight calculator which covers better at 0 and Pi making possible many curvature iterations 2018-03-26 13:58:37 +02:00
konstantinos katrioplas d3f9ac7636 testing different weight calculation methods for curvature flow 2018-03-26 13:58:36 +02:00
konstantinos katrioplas b4c6f78f97 init after removing degenerate faces 2018-03-26 13:58:36 +02:00
konstantinos katrioplas d3081ce2ff counting not moved points for debug 2018-03-26 13:58:36 +02:00
konstantinos katrioplas b4d3259f3f angle remeshing only if it impoves min angle 2018-03-26 13:58:36 +02:00
konstantinos katrioplas f899dbdec3 calculate movement in separate function 2018-03-26 13:58:36 +02:00
konstantinos katrioplas 43a20f8a21 selected vertices 2018-03-26 13:58:36 +02:00
konstantinos katrioplas f1c793eab4 reference manual documentation 2018-03-26 13:57:24 +02:00
konstantinos katrioplas 42e7d12df6 debugging curvature flow 2018-03-26 13:56:09 +02:00
konstantinos katrioplas e6d3c9224c change directory 2018-03-26 13:56:09 +02:00
konstantinos katrioplas 1d8f62963a use constrained vertices on all types of smoothing 2018-03-26 13:56:09 +02:00
konstantinos katrioplas 94f434231f clean redundant code & minor syntax corrections 2018-03-26 13:56:09 +02:00
konstantinos katrioplas 3e34fdd500 another attempt to curvature flow 2018-03-26 13:56:09 +02:00
konstantinos katrioplas dfb3a5c977 plugin nb iterations parameter 2018-03-26 13:56:08 +02:00
konstantinos katrioplas 1b223ab1aa improve demo plugin by separating functionalities 2018-03-26 13:56:08 +02:00
konstantinos katrioplas f8ffda08c2 use opposite direction for move vector & remove monge jet fitting code 2018-03-26 13:56:08 +02:00
konstantinos katrioplas 27ebd0d8ea secure cot calculation & avoid division with zero weight 2018-03-26 13:56:08 +02:00
konstantinos katrioplas b6833a00ce fixes on weights & degnerate cases 2018-03-26 13:56:08 +02:00
Jane Tournois fca69df4cc fix compilation 2018-03-26 13:56:08 +02:00
Jane Tournois 86f948ca22 fix compilation of smoothing_plugin 2018-03-26 13:56:08 +02:00
konstantinos katrioplas 843ab3623e fix bug with curvature flow - sphere test is much better 2018-03-26 13:56:08 +02:00
konstantinos katrioplas 0cfa9906bc all degenerate faces are taken out with remove_degenerate_faces - for now at least 2018-03-26 13:56:07 +02:00
konstantinos katrioplas d5c6283b54 testing curvature flow, exploring robust degenerate handling, overloads and minor fixes 2018-03-26 13:56:07 +02:00
konstantinos katrioplas 6a41e8b48a paste degenerate removal code in compatible remeshing class 2018-03-26 13:56:07 +02:00
konstantinos katrioplas 54a8b80eac more robust edge collapsing and use of repair.h for deg faces 2018-03-26 13:56:07 +02:00
konstantinos katrioplas bc72d6715c recent pull in repair.h - minor changes 2018-03-26 13:56:07 +02:00
konstantinos katrioplas 493992978c remove degenerate edges and faces 2018-03-26 13:56:07 +02:00
konstantinos katrioplas 29dc7c968a find new location using cot weigths 2018-03-26 13:56:06 +02:00
konstantinos katrioplas 02a295c93a normalize kn 2018-03-26 13:56:06 +02:00
konstantinos katrioplas ed5908233d setup plugin for curvature flow 2018-03-26 13:56:06 +02:00
konstantinos katrioplas 7fbe5e156d verbose info in smoothing.h and an overload 2018-03-26 13:56:06 +02:00
konstantinos katrioplas f46a9b06cc add projection to initial surface on curvature smoothing 2018-03-26 13:56:06 +02:00
konstantinos katrioplas 1b28c2d032 mean curvature smoothing - testing with and without cot angles in simple cases 2018-03-26 13:56:06 +02:00
konstantinos katrioplas f1d2339d1a calculate mean curvature flow with Monge jet fitting 2018-03-26 13:56:06 +02:00
konstantinos katrioplas 9d1f09921c cotangent weights calculation 2018-03-26 13:56:06 +02:00
konstantinos katrioplas 9293646193 add tests for invalid meshes and adjust tolerance a bit to comply with some extreme cases 2018-03-26 13:56:06 +02:00
Sébastien Loriot 07a70919c2 do not expand/reduce all the time + handle nm vertices per cc 2018-03-06 18:37:09 +01:00
Laurent Rineau caca4d67de Merge pull request #2891 from sloriot/PMP-handle_deg_tri_self_inter
Handle degenerate faces in self-intersection tests
2018-03-06 16:23:32 +01:00
Laurent Rineau 81a7e2d737 Merge pull request #2888 from sloriot/PMP-autorefine_bugfixes
Autorefine bugfixes
2018-03-06 16:23:08 +01:00
Sébastien Loriot 7ab6120a0c workaround warning 2018-03-05 17:09:23 +01:00
Andreas Fabri 5d1cd90517 Add two typename 2018-03-05 14:17:26 +00:00
Sébastien Loriot 8cc234fe26 handle degenerate faces 2018-03-02 15:45:34 +01:00
Sébastien Loriot 8817f067d1 mark vertices as terminal if incident to edge where the surface is pinched 2018-03-02 11:38:42 +01:00
Sébastien Loriot 26dec7527a prevent duplicated nodes at existing vertex between faces intersecting 2018-03-01 16:19:23 +01:00
Sébastien Loriot 29eeac3e3d make autorefinement working with exact constructions 2018-03-01 16:10:14 +01:00
Sébastien Loriot c668b90379 add assertion and fix comment 2018-03-01 16:09:55 +01:00
Laurent Rineau 9e8a40fc70 Merge pull request #2845 from sloriot/PMP-improve_autorefine_v2
Improve internal autorefinement function
2018-02-23 17:35:09 +01:00
Sébastien Loriot 51f4858f26 detect non-manifold edges that the hole filling would produce 2018-02-20 15:36:36 +01:00
Sébastien Loriot 6920f4be98 better handling of coplanar faces + throw when more than 2 faces sharing an edge 2018-02-20 11:15:21 +01:00
Sébastien Loriot ac5c061b4b fix warning 2018-02-19 18:04:55 +01:00
Sébastien Loriot 48e1d686a1 fix warning 2018-02-19 18:04:55 +01:00
Sébastien Loriot 32e74839df handle topology issue due to boundary cycle of edges 2018-02-19 18:04:55 +01:00
Sébastien Loriot c7b836570f clean up and simplify code 2018-02-19 18:04:55 +01:00
Maxime Gimeno e650284d3d Don't crash if cc_bordes_he is empty. 2018-02-19 18:04:55 +01:00
Maxime Gimeno d4f50b5b47 Don't use filtered_graph 2018-02-19 18:04:55 +01:00
Sébastien Loriot b1ee7fb7db remove trailing whitespaces 2018-02-19 18:04:55 +01:00
Sébastien Loriot 84a2e04afc simplying the sorting of points
lexicographic order is fine since extreme points are
already using this order
2018-02-19 18:04:55 +01:00
Sébastien Loriot 6e1b680058 handle case when face orientation around the cc of deg faces is incorrect 2018-02-19 18:04:54 +01:00
Maxime Gimeno cde00f7757 Clean-up and overload. 2018-02-19 18:04:54 +01:00
Maxime Gimeno 3fdc7b67b2 remove non_filled_holes 2018-02-19 18:04:54 +01:00
Sébastien Loriot 935bba4ad3 use dynamic property maps + clean up 2018-02-19 18:04:54 +01:00
Maxime Gimeno 2758143116 fixing the topology test. 2018-02-19 18:04:03 +01:00
Sébastien Loriot 209f1a246c iteratively remove degree 3 vertices incident to a degenerate face 2018-02-19 18:04:03 +01:00
Sébastien Loriot f3a3b5eb5e fix the collapsibility check of connected components of degenerate faces 2018-02-19 18:04:03 +01:00
Maxime Gimeno 59b72cb364 Add some enhancements to remove_self_intersections() 2018-02-19 18:04:02 +01:00
Sébastien Loriot 12c57b588a fix condition to drop patch with dangling edges 2018-02-19 09:34:46 +01:00
Sébastien Loriot c0fc3e92bf avoid identical faces in case of coplanar 2018-02-19 09:11:36 +01:00
Sébastien Loriot d785378bdd workaround issue with msvc 2018-02-15 17:06:31 +01:00
Sébastien Loriot 50dfffcedf Sort halfedge of coplanar faces intersecting in autorefinement case
Since the faces are coming from the same mesh...
2018-02-15 10:31:31 +01:00
Sébastien Loriot c20177c55d add TODO 2018-02-15 10:31:31 +01:00
Sébastien Loriot 3eb109a944 better handling of dangling edges 2018-02-15 10:31:31 +01:00
Sébastien Loriot e9596acaec fix issue with intersection edges not found
this happen when such an edge if not on the same
sheet (and would be found next thanks to the
multimap).
2018-02-15 10:31:31 +01:00
Sébastien Loriot e11a1d8617 fix patches to keep in coplanar cases 2018-02-15 10:31:31 +01:00
Sébastien Loriot 129b4c48fb use union find to track incident between patches and discard nested intersections 2018-02-15 10:31:31 +01:00
Sébastien Loriot 80d820a10e first version of autorefinement able to handle self-intersection of 3 faces
the code is not working with coplanar faces for now and does not handle
more that 3 faces meeting at a point not more that 2 triangles intersecting
along an edge
2018-02-15 10:29:27 +01:00
Sébastien Loriot 483f69728e Refresh branch 2018-02-12 22:21:38 +01:00
Laurent Rineau f310fc588d
Merge pull request #2690 from sgiraudot/Classification-ETHZ_random_forest-GF
Classification: ETHZ Random Forest
2018-02-01 17:35:30 +01:00
Simon Giraudot 6269309d86 Use CGAL include for boost counting/transform iterators everywhere 2018-01-23 11:09:52 +01:00
Laurent Rineau dd3357c508 Merge pull request #2738 from sloriot/PMP-distance_update_max
Make the update of the max value correct
2018-01-19 15:22:22 +01:00
Andreas Fabri 38b2e57b11 PMP 2018-01-17 17:59:35 +00:00
Laurent Rineau f7cbe80c7d Merge pull request #2711 from sloriot/PMP-Janes_commits
More verbose debug output
2018-01-17 10:43:06 +01:00
Sébastien Loriot 499f3c4604 make the update of the max value correct 2018-01-15 18:22:11 +01:00