Commit Graph

1204 Commits

Author SHA1 Message Date
Jane Tournois 52dbd6ef3d add precondition about protection of constraints
this precondition is here to check whether protection of constraints is
compatible with termination of the refinement step
2015-11-05 20:09:15 +01:00
Jane Tournois 893b80c490 rename function to isotropic_remeshing() 2015-11-05 20:09:14 +01:00
Sébastien Loriot c6e649aa9b Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF
and adapt plugin to CGAL::Three
2015-11-05 20:07:15 +01:00
Sébastien Loriot 54ca52b538 Merge branch 'BGL-SurfaceMesh2SurfaceMesh-GF' into Polygon_mesh_processing-local_remeshing-GF 2015-11-05 19:25:00 +01:00
Jane Tournois 3448f7cd57 Merge branch 'PMP-length_of_border-GF-old' into PMP-length_of_border-GF 2015-11-03 15:34:45 +01:00
Maxime Gimeno 7c0be4674d Fix for std::sqrt in Mesh_processing
- replaces all the std::sqrt by CGAL::sqrt
2015-10-29 13:44:18 +01:00
Andreas Fabri d2ed79d38d Add keep_large_connected_components (code,doc,test) 2015-10-22 09:01:08 +02:00
Sébastien Loriot cb7d309f86 fix include file path and use it in a test
Trivial fix tested locally
2015-09-22 12:42:06 +02:00
Jane Tournois 6f718be591 rename functions to make it consistent with face_area 2015-09-10 09:30:16 +02:00
Jane Tournois 55ab0f5b06 rename area() to face_area() to avoid ambiguities
also add geom_traits as a named parameter
2015-09-08 09:56:29 +02:00
Jane Tournois 2d251049dd add volume function and test it 2015-09-07 15:11:14 +02:00
Jane Tournois 2160da4ceb add area function for the complete triangulated Surface
use CGAL_PMP_NP_TEMPLATE_PARAMETERS and CGAL_PMP_NP_CLASS
to avoid ambiguities
2015-09-04 17:37:36 +02:00
Jane Tournois 2bb201c0ef add documentation and rename file 2015-09-04 16:58:53 +02:00
Jane Tournois af719e41b5 add simple test 2015-09-04 14:10:23 +02:00
Laurent Rineau 59ac9f30fc Merge pull request #293 from sloriot/PMP-fix_remove_degenerate_faces-sloriot
Polygon mesh processing:  fix remove_degenerate_faces() but do not publish it in the documentation
2015-09-04 11:24:36 +02:00
Jane Tournois ce54198aa7 Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF 2015-09-02 15:57:23 +02:00
Laurent Rineau ff796222d3 Replace VERSION_GREATER by "NOT VERSION_LESS"
Because actually Eigen 3.2.0 is a correct Eigen version!

Was pointed out by the testsuite:
https://cgal.geometryfactory.com/CGAL/Members/testsuite/CGAL-4.7-Ic-121/Polygon_mesh_processing_Examples/TestReport_lrineau_Ubuntu-Latest-CXX11.gz
2015-08-20 15:09:30 +02:00
Laurent Rineau 5d99700c3d Merge pull request #277 from janetournois/Polygon_mesh_processing-GF
Polygon mesh processing - Eigen 3.2 needed for fairing
2015-08-18 18:07:23 +02:00
Jane Tournois 1f91bd8a77 avoid compilation of tests and examples that use fairing when Eigen < 3.2 2015-08-17 12:23:09 +02:00
Jane Tournois 86896278e5 Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF 2015-08-07 13:02:35 +02:00
Sébastien Loriot 41be0745a4 testing border cases or keep/remove ccs 2015-08-04 12:22:51 +02:00
Sébastien Loriot bc30aa5f48 handle the stitching of patches with incorrect orientation
we make two border halfedges matching only if they are opposite
2015-07-31 14:11:38 +02:00
Sébastien Loriot 89498ff175 remove less_halfedge named parameter that is no longer needed 2015-07-31 11:18:24 +02:00
Jane Tournois bb3d38c9e7 Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF 2015-07-23 17:50:34 +02:00
Sébastien Loriot 7da45ca55c handle the case of a triangle hole with an edge of length 0 2015-07-22 16:08:38 +02:00
Sébastien Loriot 0cb9a5a1be use assert in tests 2015-07-17 14:42:04 +02:00
Sébastien Loriot c89fa4bd53 simplify bgl named parameters handling with boost < 1.51 and make PMP compatible 2015-07-16 16:01:21 +02:00
Sébastien Loriot 9508675fe1 update test to use named parameters 2015-07-16 15:06:13 +02:00
Sébastien Loriot a81cf1a814 remove outdated test 2015-07-16 14:55:50 +02:00
Sébastien Loriot 3766bf3a3e add new line at the end of test file 2015-07-16 09:35:49 +02:00
Sébastien Loriot bcfb705df0 remove CGAL_assertion_code hidding variables used in assert 2015-07-16 08:51:22 +02:00
Jane Tournois 8e44b5d77a fix remeshing test 2015-07-15 16:02:32 +02:00
Jane Tournois 08e06531f3 add test data 2015-07-15 16:02:32 +02:00
Jane Tournois 6214feaaf1 add stuff for verbose mode 2015-07-15 16:02:29 +02:00
Jane Tournois 6e7f4f7b21 test code 2015-07-15 16:02:28 +02:00
Jane Tournois cfff71068d add options and draft to the remeshing test 2015-07-15 16:02:28 +02:00
Jane Tournois 0844e79b67 add code to read selection from input 2015-07-15 16:02:27 +02:00
Jane Tournois 8b5902b038 add function to split long edges listed by the user
this changes the remesher internal API only
2015-07-15 16:02:27 +02:00
Jane Tournois 9e8ad02f94 more in remeshing test 2015-07-15 16:02:23 +02:00
Jane Tournois 577e0f08f0 use macro and 17 digits in cout 2015-07-15 16:02:23 +02:00
Jane Tournois 8b9bcefe22 remeshing of the patch
works when the patch describes the full mesh
otherwise, it enters an endless loop for now
2015-07-15 16:02:22 +02:00
Jane Tournois f7820a6517 introduce API to mesh only a patch (does not implement anything yet) 2015-07-15 16:02:22 +02:00
Jane Tournois e80a4adfaa increase the number of iterations in test 2015-07-15 16:02:21 +02:00
Jane Tournois fc0b9bd51a add collapse short edges to remeshing
longest edges are split first
and shortest edges are collapsed first

todo : allow edges incident to boundary to be collapsed
2015-07-15 16:02:21 +02:00
Jane Tournois 79b5ba8553 first step : split_long_edges 2015-07-15 16:02:20 +02:00
Jane Tournois 598472d210 add framework for remeshing 2015-07-15 16:02:20 +02:00
Sébastien Loriot 0b34de5674 generate elephant with hole
prepare for rebasing
2015-07-15 11:27:53 +02:00
Sébastien Loriot 51839a0b84 remove data that can be generated
prepare for rebasing
2015-07-15 10:54:41 +02:00
Sébastien Loriot a968e99279 do not use a large off file
prepare for rebasing
2015-07-15 10:08:57 +02:00
Sébastien Loriot 78542206ba add test for remove_degenerate_faces 2015-07-15 10:01:11 +02:00
Sébastien Loriot 7d8fe2553d add remove_connected_components + overload for the keep version using cc ids 2015-07-13 07:08:45 +02:00
Sébastien Loriot 13263efa8c fix the test without Delaunay 2015-07-06 18:43:49 +02:00
Sébastien Loriot f69cabe72c make tests more uniform 2015-07-06 18:32:09 +02:00
Sébastien Loriot de7482f998 CGAL_assertion -> assert 2015-07-06 16:52:59 +02:00
Sébastien Loriot 545fca57b7 improve test by checking the expected number of remaining holes 2015-07-06 16:49:00 +02:00
Jane Tournois 0c6340543c comment a bit of too verbose tests 2015-07-03 16:56:04 +02:00
Jane Tournois 12ccaeb3a5 rename type to avoid error on windows
Polyline conflicts with a type defined in
Program Files (x86)\Windows Kits\8.0\include\um\wingdi.h
2015-07-03 16:12:31 +02:00
Jane Tournois 433609093f add return statement 2015-07-03 16:07:45 +02:00
Jane Tournois f2f7aa6874 fix warnings about unused variables 2015-07-03 16:05:16 +02:00
Jane Tournois 6dedc9e451 add new line at end of file 2015-07-03 16:04:34 +02:00
Jane Tournois cf60dd41f1 fix unused variable warnings 2015-07-03 13:54:01 +02:00
Jane Tournois 4c54b2ec26 don't use typename outside of template 2015-07-03 13:46:17 +02:00
Jane Tournois 01d0c2770b add return statement 2015-07-02 16:01:52 +02:00
Jane Tournois fda787e284 add return statement 2015-07-02 15:38:59 +02:00
Jane Tournois c88a2e5a7f to get validity at level 5 after stitching a Polyhedron_3,
normalize_border should be called
this is mainly because nb_border_halfedges of the
underlying HDS gets undefined
2015-07-02 15:36:34 +02:00
Jane Tournois 0ba7215a5b add return statement 2015-07-02 14:44:30 +02:00
Jane Tournois 94e9d263c2 and end of file 2015-07-02 14:43:40 +02:00
Jane Tournois 3623705fcf fix some tests 2015-07-02 11:48:59 +02:00
Andreas Fabri 8d86bebcaf Merge remote-tracking branch 'cgal-dev/Polygon_mesh_processing-GF' into Polygon_mesh_processing-GF 2015-07-01 17:25:13 +02:00
Andreas Fabri 20c1b1a1f6 Merge branch 'Polygon_mesh_processing-GF-old' into Polygon_mesh_processing-GF
Conflicts:
	BGL/include/CGAL/boost/graph/Euler_operations.h
	BGL/include/CGAL/boost/graph/iterator.h
	Documentation/doc/Documentation/Doxyfile.in
	Documentation/doc/Documentation/dependencies
	Polyhedron/demo/Polyhedron/Polyhedron_demo_point_inside_polyhedron_plugin.cpp
	Polyhedron/demo/Polyhedron/Scene_polygon_soup_item.cpp
	Polyhedron/demo/Polyhedron/Selection_widget.ui
2015-07-01 13:52:44 +02:00
Jane Tournois 49b2c90f3b rename normals test 2015-07-01 10:12:05 +02:00
Jane Tournois cbd9a083c9 use filenames and improve tests 2015-06-30 10:30:51 +02:00
Jane Tournois 95463c654f fix warning 2015-06-29 11:06:29 +02:00
Jane Tournois e2a996f551 implement function keep_connected_components
and add it to the tests
2015-06-25 16:29:18 +02:00
Jane Tournois 0fa3bb46e6 add input to tests 2015-06-25 16:21:03 +02:00
Jane Tournois 32f0c9b37b rename Point_inside_polygon_mesh to Side_of_triangle_mesh
and document it
2015-06-25 11:51:45 +02:00
Sébastien Loriot 7292515448 fix warnings 2015-06-22 11:31:19 +02:00
Sébastien Loriot f6a2479472 fix compilation issues with g++ 2015-06-22 11:23:31 +02:00
Jane Tournois 7977d10418 rename is_self_intersecting to does_self_intersect
for consistency with do_intersect
2015-06-22 11:17:43 +02:00
Andreas Fabri 81318a1cfd more small examples for degenerate meshes 2015-05-13 09:29:39 +02:00
Jane Tournois 9800abb789 add simple fairing test 2015-05-04 15:51:05 +02:00
Sébastien Loriot 6a375326fa rename named param kernel to geom_traits and fix compilation issues 2015-04-02 07:33:24 +02:00
Jane Tournois 388f155c1e add data about degeneracies 2015-04-01 15:09:36 +02:00
Jane Tournois 396d1875ab named parameters in self_intersections.h (code and doc) 2015-04-01 13:46:53 +02:00
Jane Tournois 9f3efdeba6 add kernel named parameter to triangulate_hole_polyline 2015-03-31 17:24:19 +02:00
Jane Tournois 8d60913c43 introduce named parameters in keep_largest_connected_components 2015-03-31 12:09:35 +02:00
Jane Tournois cbfef8b105 introduce named parameters for connected_components 2015-03-31 11:34:19 +02:00
Jane Tournois ceda35d9dd use named parameters in compute_normal.h functions
todo : complete documentation
2015-03-26 17:02:00 +01:00
Jane Tournois 993cb4f552 add vertex point map in triangulate_and_refine_hole 2015-03-26 12:42:35 +01:00
Jane Tournois 21606b28c0 add VertexPointMap to the code of self intersections.
note this version is temporary because it will be using named parameters
2015-03-26 12:02:17 +01:00
Jane Tournois 59cbb9403f add VertexPointMap in fairing code 2015-03-26 11:31:08 +01:00
Jane Tournois d913b48d98 introduce bgl named function parameters
and implement them for hole filling, refine and fair functions
2015-03-20 09:52:54 +01:00
Jane Tournois d2a73301ef add everything to be tested 2015-03-19 10:14:50 +01:00
Sébastien Loriot 5b0030e256 update header path 2015-03-18 18:24:08 +01:00
Sébastien Loriot 78f2283406 move header files 2015-03-18 17:11:45 +01:00
Sébastien Loriot 6d2c6df6ab rename header 2015-03-18 15:11:10 +01:00
Sébastien Loriot 324839c8ae move header files 2015-03-18 11:51:33 +01:00
Jane Tournois 8007bf6d91 add function reverse_face_orientations & rename is_oriented.h to orientation.h 2015-03-17 14:48:16 +01:00
Jane Tournois d217078122 reorganize examples targeting documentation 2015-03-13 15:33:06 +01:00
Jane Tournois d39f201724 in triangulate_hole_polyline, replace begin and end iterators by PointRanges 2015-03-10 11:38:08 +01:00
Jane Tournois b081f8d92b move stitch_borders to Polygon_mesh_processing folder for readability 2015-03-09 12:30:16 +01:00
Jane Tournois fe3d702461 rename stitch_polygon_mesh to stitch_borders
because it's the name of the function implemented in the header file
2015-03-09 12:27:58 +01:00
Jane Tournois afba431244 make stitching BGL, and complete test with Surface_mesh 2015-03-05 13:35:06 +01:00
Jane Tournois 1663717992 rename functions, files and types for uniformization
also get rid of a useless Kernel_traits<Point>
2015-02-17 16:33:08 +01:00
Jane Tournois 755d7c8049 remove useless specification of PolygonMesh 2015-02-17 15:40:50 +01:00
Jane Tournois 874645b017 duplicate the test to run it on Polyhedron_3 and Surface_mesh
also use a non-oriented data set : elephant-shuffled.off
2015-02-17 11:42:21 +01:00
Andreas Fabri f25d87ed9c Add compute_normals; facet -> face 2015-02-11 10:18:00 +01:00
Andreas Fabri 1d33cb9735 add compute_vertex_normals() 2015-02-10 21:05:08 +01:00
Andreas Fabri 20744d629a Add compute_facet_normals 2015-02-10 18:27:16 +01:00
Andreas Fabri ea1a819466 Add compute_facet_normals 2015-02-10 18:27:16 +01:00
Andreas Fabri 1f869d269a Add overloads with a default for Kernel 2015-02-10 13:08:07 +01:00
Sébastien Loriot c5737d0fa4 rename header 2015-02-03 10:15:42 +01:00
Sébastien Loriot 022666fe09 Polygon_mesh_slicer_3 -> Polygon_mesh_slicer 2015-02-03 10:12:42 +01:00
Sébastien Loriot a6ea5c0b22 update orient_polygon_soup testsuite 2015-01-30 18:02:36 +01:00
Sébastien Loriot 1a79edd840 fix compilation issues (nothing to do with the merge) 2015-01-30 17:57:04 +01:00
Jane Tournois 7a4428e43d start conversion to BGL API, and improve test 2015-01-23 15:48:53 +01:00
Jane Tournois 4f364cf17b make is_oriented, compute_facet_normal, and compute_vertex_normal BGL
these 3 functions now handle a FaceGraph
test completed to check their use with Polyhedron_3 and Surface_mesh

typedef Point added in Polyhedron_3
to handle with no difference Surface_mesh and Polyhedron_3
2015-01-23 14:55:36 +01:00
Jane Tournois da972f0df8 TriangleMesh made a model of FaceListGraph
test added to use Point_inside_polygon_mesh with Surface_mesh
test code factorized in a helper file
2015-01-22 14:43:56 +01:00
Sébastien Loriot 406b4f6cbe add testsuite for polygon mesh slicer
for some reason it does not work with Surface mesh
2015-01-20 19:51:21 +01:00
Jane Tournois 51d01df1c9 rename file because it only contains a predicate 2015-01-20 11:43:04 +01:00
Jane Tournois f7ff3b2548 move file to subfolder Polygon_mesh_processing 2015-01-20 11:40:07 +01:00
Jane Tournois fcfe30d114 rename is_oriented to is_outward_oriented
'is_oriented' was misleading because it was suggesting
"is consistently oriented" insted of "normals are oriented outwards
on this already consistently oriented mesh"
2015-01-20 10:36:34 +01:00
Jane Tournois c76d58d9d7 use CGAL_assertion's 2015-01-20 10:17:56 +01:00
Jane Tournois e028035776 rename orient_polyhedron_3 to orient_polygon_mesh
also add namespace Polygon_mesh_processing
2015-01-20 10:08:09 +01:00
Jane Tournois 38186adcbc add a constructor that takes a pre-built AABB_tree 2015-01-19 17:07:05 +01:00
Jane Tournois 45ebea96f9 Point_inside_polyhedron renamed to Point_inside_polygon_mesh
also remove TriangleAccessor_3 and start migrating to FaceGraph
2015-01-19 14:34:59 +01:00
Jane Tournois ef4df5f47d add constructor for Polygon_mesh_slicer_3 taking a pre-built AABB_tree of edges
AABB_tree is made a template parameter of Polygon_mesh_slicer_3

also add a test for compilation of this new constructor
2015-01-16 16:12:30 +01:00
Jane Tournois 1471da97bb add a test for hole_filling when DT3 are not used 2015-01-16 14:25:17 +01:00
Jane Tournois 68c33c9e60 remove useless include 2015-01-16 14:15:40 +01:00
Jane Tournois 27d329b1e9 move fair() and refine() to their own files
- move fairing and refinement internal code to
the subfolder Meshing_functions (they were in Hole_filling)

- and fix namespaces
2015-01-15 17:11:00 +01:00
Jane Tournois 93107e9c88 move hole_filling functions to non-internal header triangulate_hole.h 2015-01-15 15:17:15 +01:00
Andreas Fabri 2e5d7006f0 move the include of Hole_filling after those of the mesh 2015-01-15 11:37:29 +01:00
Andreas Fabri 4f7ae328d7 switch to pmesh as parameter 2015-01-14 11:38:53 +01:00
Andreas Fabri 1b2f4f4bb2 it also works with Surface_mesh. The reader does not deal with comments though 2015-01-13 21:57:44 +01:00
Andreas Fabri bab97f92a3 WIP: it compiles but crashes for Surface_mesh 2015-01-13 18:47:36 +01:00
Jane Tournois 27698d58e6 Merge branch 'Polygon_mesh_processing-GF' of ssh://scm.cgal.org/var/git/cgal into Polygon_mesh_processing-GF 2015-01-13 17:37:26 +01:00
Jane Tournois 56c6a126cd add namespace Polygon_mesh_processing to orient_polygon_soup 2015-01-13 17:36:57 +01:00
Jane Tournois 99df22972e rename polygon_soup_to_polyhedron to Polygon_soup_to_polygon_mesh
also rename template parameter Polyhedron to PolygonMesh
2015-01-13 17:08:49 +01:00
Sébastien Loriot 029f53e70d solve overload compilation issues 2015-01-13 16:56:29 +01:00
Jane Tournois be88a07ebf rename stitch_polyhedron to stitch_borders 2015-01-13 16:43:27 +01:00
Jane Tournois d4c63f8911 renaming
- rename do_self_intersect to is_self_intersecting
- add namespace Polygon_mesh_processing
- rename template parameter Polyhedron to PolygonMesh
2015-01-13 16:30:23 +01:00
Jane Tournois 67786d30ec convert Polygon_soup_to_polyhedron_3 to a standalone function 2015-01-13 16:03:26 +01:00
Jane Tournois 8e5312bfc1 Merge branch 'Polygon_mesh_processing-GF' of ssh://scm.cgal.org/var/git/cgal into Polygon_mesh_processing-GF 2015-01-13 15:17:11 +01:00
Jane Tournois ab92b04655 move tests from Operations_on_Polyhedra to Polygon_mesh_processing
and fix compilation
2015-01-13 15:16:05 +01:00
Sébastien Loriot 162e6c7527 fix warnings and some compilation issues 2015-01-13 15:07:36 +01:00
Jane Tournois dff6924698 Merge branch 'Polygon_mesh_processing-GF' of ssh://scm.cgal.org/var/git/cgal into Polygon_mesh_processing-GF 2015-01-13 14:11:01 +01:00
Jane Tournois 83d35ff704 rename polyhedron_stitching() to Polygon_mesh_processing::stitch_polyhedron() 2015-01-13 14:10:35 +01:00
Andreas Fabri 013d7e6e69 code which does not compile 2015-01-13 13:01:39 +01:00
Andreas Fabri 78de42d075 some static_cast to avoid warnings 2015-01-13 10:15:23 +01:00
Sébastien Loriot 690839ea00 ofstream built from std::string is available in c++11 2015-01-13 09:49:26 +01:00
Andreas Fabri 19fc08ebc3 add CMakeists.txt 2015-01-13 09:35:01 +01:00
Andreas Fabri d0eadcda44 partial BGLization 2015-01-12 17:11:06 +01:00
Sébastien Loriot 0b55e11abd move stitching in Polygon Mesh Processing 2015-01-06 12:00:50 +01:00
Sébastien Loriot fc6f9368a0 move Hole Filling in the new Polygon Mesh Processing package 2015-01-06 11:37:25 +01:00