Commit Graph

224 Commits

Author SHA1 Message Date
Andreas Fabri 144d206a75 cleanup of the helper files, and a partial fix of the slicer (which will be red in the testsuite) 2014-06-11 18:16:58 +02:00
Andreas Fabri 3d30938cb2 Use faces(G) instead of facets_begin/end 2014-06-11 10:38:30 +02:00
Sébastien Loriot 45321b9f90 add a function to export the halfedges defining an intersection polyline 2014-04-28 15:20:04 +02:00
Sébastien Loriot 499860fbc5 by default call the copy constructor of the facets in the re-triangulation 2014-04-16 12:46:52 +02:00
Sébastien Loriot 2bdec7eed1 fix the default facet id pmap 2014-04-14 14:57:04 +02:00
Sébastien Loriot 8efef61028 add boolean to handle unbounded polyhedron representing the world minus a piece 2014-04-14 09:11:44 +02:00
Sébastien Loriot b6859bdea0 update code to compute p-q inplace, q-p inplace and inter and union in new poly
this is a intermediate commit for the more general case
2014-04-11 16:47:29 +02:00
Sébastien Loriot 18404dbe60 add preliminary version of an output visitor to compute boolean ops on polyhedra
still a lot of todos...
2014-03-31 19:42:33 +02:00
Sébastien Loriot fb8c86265e add todo 2014-03-31 19:04:47 +02:00
Sébastien Loriot 8e6d29c88d remove an non-needed template parameter 2014-03-26 12:37:15 +01:00
Sébastien Loriot c1a1f538fb move some utility classes and function into a seperate header 2014-03-26 12:36:37 +01:00
Sébastien Loriot b9c6a37313 rename predicates 2014-03-26 11:38:58 +01:00
Sébastien Loriot 7f143c0193 move predicates into a seperate file 2014-03-26 11:26:19 +01:00
Sébastien Loriot fea785072d add an alternative way to compute the patches bounded by marked edges 2014-03-26 10:48:25 +01:00
Sébastien Loriot fce02f988e New OutputBuilder template parameter responsible for building the cmap
extract from the refinement visitor the functions used to build
the combinatorial map and put them in a OutputBuilder class
2014-03-26 10:33:44 +01:00
Sébastien Loriot f3f1e89008 add a flag to avoid computing the intersection of coplanar facets 2014-03-26 10:00:53 +01:00
Sébastien Loriot 645d018f17 move the construction of the cmap in a function 2014-02-26 05:53:11 +01:00
Sébastien Loriot 23800096aa add comments 2014-02-25 17:35:02 +01:00
Sébastien Loriot 70a7363e74 add missing template parameter 2014-02-25 08:42:40 +01:00
Laurent Rineau 06dac30143 Fix 'const static <type>'
The storage specified (static) is not allowed inside the type
specifier. It must be prefix or postfix (but not infix).

That is strange no C++ compiler gives an error on such a construction.

s/const static/static const/
2014-02-20 19:14:26 +01:00
Sébastien Loriot 62724c2b1f add a todo 2014-02-19 08:14:12 +01:00
Sébastien Loriot 36657d31df bugfix to correctly set the vertex kept 2014-01-22 15:17:46 +01:00
Sébastien Loriot 5ccb85c5ed remove duplicated property settings 2014-01-06 08:46:05 +01:00
Sébastien Loriot f75f156f44 Merge branch 'Polyhedron_demo-stitching_plugin-sloriot'
Add a plugin in the polyhedron demo to stitch the boundaries of a polyhedron.
  The plugin also allows to visualize the boundaries of a polyhedron

  Approved by the release manager
  Tested in CGAL-4.4-Ic-43
2013-11-29 14:36:16 +01:00
Sébastien Loriot 9527cfcfff bugfix/follow up of 6d5dd252: the vertices need to be updated first ...
... the update of the vertex for incident halfedges requires valid
next pointers
2013-11-28 14:39:51 +01:00
Sébastien Loriot 6d5dd252a9 rm hedges to stitch set used to update next-prev of hedge that won't be stitched 2013-11-28 09:39:55 +01:00
Sébastien Loriot 4c2cabd0ae bug fix in vertex merge
We merge the vertices before updating the HDS connectivitiy.
  All halfedges incident to the vertex to be removed get updated
  and then h2 is removed and the graph updated.
  This prevents from having zombie vertices in case more than
  two vertices are merged.
2013-11-28 09:14:56 +01:00
Sébastien Loriot 05bff9cf8f add a function to stitch boundary edges in a polyhedron
also brings:
  a demo plugin that also display boundary edges
  a testsuite with examples
2013-11-27 16:19:42 +01:00
Guillaume Damiand b69a02e291 Move CGAL_CMAP_DEPRECATED in .h 2013-11-14 13:39:07 +01:00
Sébastien Loriot fa8820bc3f call new_vertex_added of the vertex node visitor before setting the point
more precisely, before putting the point in the property map
2013-11-05 12:24:14 +01:00
Sébastien Loriot 1fe0e3d82d add missing template keyword (detected by clang)
(cherry picked from commit 5bc3222dad4bcdf0bbdf40f5e20028a04c44374c)

Successfully tested in CGAL-4.3-Ic-189
Approved by the release manager
2013-10-03 17:17:01 +02:00
Sébastien Loriot bb938d6914 move compute_normal.h from the demo include path to the internal of CGAL 2013-10-01 14:48:15 +02:00
Andreas Fabri 9ed4f837c3 Merge branch 'CGAL-compilable_headers-GF'
The conflict was about whitesapce
Approved by the release manager

Conflicts:
	Polyhedron/include/CGAL/Polyhedron_copy_3.h
2013-09-23 14:50:17 +02:00
Sébastien Loriot d7ec83c684 follow up of 964e529c and dcbdc636 to use a point pmap in corefinement 2013-09-23 10:15:03 +02:00
Sébastien Loriot db47bc80f7 use a point pmap for the intersection of polyhedra corefinement visitor
you can get an exact intersection using an polyhedron with points
    from another kernel
2013-09-23 10:14:57 +02:00
Sébastien Loriot 7dcb42306a using a point property map for the intersection of polyhedra functor
you can get an exact intersection using an polyhedron with points
from another kernel
2013-09-23 10:14:47 +02:00
Sébastien Loriot c0ef78777e using Default for template parameters 2013-09-23 10:14:39 +02:00
Andreas Fabri 6c547e5663 Mainly added includes 2013-09-13 22:24:30 +02:00
Andreas Fabri afdca001ce As boost::conditional was only introduced in boost 1.45.0 we stick to boost::mpl::if_c 2013-09-13 09:53:05 +02:00
iyaz a199bb6f33 remove custom type selection code and instead use boost::conditional 2013-09-06 09:24:36 +02:00
iyaz 4263a7bf3a underscore prefix to postfix, adding author name 2013-09-06 09:24:23 +02:00
iyaz 2ffc6848a3 CGAL::self_insertect was only returning Facet_const_handle, now it returns Facet_handle if polyhedron is passed by ref, Facet_const_handle if passed by const ref 2013-09-06 09:24:07 +02:00
Sébastien Loriot 9c0808cad1 fix name of classes that do not respect CGAL naming conventions
AABB_HalfedgeGraph_segment_primitive -> AABB_halfedge_graph_segment_primitive
AABB_FaceGraph_triangle_primitive -> AABB_face_graph_triangle_primitive
2013-07-23 17:46:50 +02:00
Sébastien Loriot 75e4146a54 add missing end of line 2013-07-17 19:33:38 +02:00
Sébastien Loriot 33bf170c18 clean compute_normal and update plugins to use the updated functions
also remove the file from the demo include directory.
2013-07-16 16:37:35 +02:00
iyaz 4ad4f0d3e8 Use compute_normal.h for normal calculation 2013-07-11 02:08:09 +03:00
iyaz b236d4527e First version of compute normal 2013-07-11 02:07:24 +03:00
iyaz 9ed7f136de change guard name of orient_polygon_soup.h, add guard to orient_polyhedron_3.h 2013-07-10 18:45:18 +03:00
iyaz edffab5868 update documentation 2013-07-10 17:37:06 +03:00
iyaz 78692b7d0f assertion -> precondition 2013-07-10 16:34:28 +03:00
iyaz 06c957a72e no need for explicit template argument 2013-07-10 16:08:49 +03:00
iyaz 5e2e2d256d First version of polyhedron orientation test 2013-07-10 16:04:27 +03:00
iyaz e8a2ec74b6 Fix warning 2013-07-10 14:23:34 +03:00
Sébastien Loriot da4320735c add missing license 2013-07-09 17:35:38 +02:00
Sébastien Loriot 20446fa777 Merge branch 'Mesh_3-using_new_inside_polyhedron-local'
Successfully tested in CGAL-4.3-Ic-85
Approved by the release manager

Conflicts:
	Mesh_3/include/CGAL/Polyhedral_mesh_domain_3.h
2013-07-09 17:34:15 +02:00
Sébastien Loriot 755b41e67b add a new line at the end of file to please msvc 2013-07-03 10:45:31 +02:00
Sébastien Loriot de048c1bf0 beta<i> is not documented 2013-06-28 17:02:17 +02:00
Sébastien Loriot 0dff9ba1d0 use the new inside polyhedron test to test inclusion of disjoint volume
We need one pint from a volume not on the boundary of the other.
This fixes a bug in the previous implementation
2013-06-28 14:55:34 +02:00
Sébastien Loriot 91dde8b2c0 use undirected_edges to have only one primitive per edge 2013-06-26 08:55:14 +02:00
Laurent Rineau be820820b0 Fix a warning: no eol at eof 2013-06-25 11:48:27 +02:00
Sébastien Loriot 98d212b2c0 add missing typename 2013-06-24 17:46:48 +02:00
Sébastien Loriot 4620b38ffd update include path 2013-06-24 17:27:41 +02:00
Sébastien Loriot 4f70640db8 move file 2013-06-24 14:46:22 +02:00
iyaz 2d160e77ca internal class for point inside test, using existing AABB tree
Conflicts:
	Operations_on_polyhedra/include/CGAL/Point_inside_polyhedron_3.h
2013-06-24 14:45:33 +02:00
Sébastien Loriot 2edeab8071 accomodate changes of AABB primitive type for polyhedron 2013-06-24 13:26:06 +02:00
Sébastien Loriot 7dcfef5a53 Merge branch 'Polyhedron-demo_header_cleanup_and_new_plugins-sloriot'
Successfully tested in CGAL-4.3-Ic-68
approved by the Release Manager
2013-06-24 12:30:25 +02:00
Sébastien Loriot b49dbe358e move surface mesh polyhedron oracle to operations on polyhedra 2013-06-21 11:42:28 +02:00
Sébastien Loriot a762131d50 rename header file 2013-06-21 11:30:39 +02:00
Sébastien Loriot cbc7f8edfa add missing license in header 2013-06-21 09:03:57 +02:00
Sébastien Loriot a1b9c5b36d rename plugin 2013-06-20 18:04:48 +02:00
Sébastien Loriot b2b9b0375a update path 2013-06-20 17:34:54 +02:00
Sébastien Loriot b5aa981404 move corefinement to operations on polyhedra 2013-06-20 16:47:26 +02:00
Sébastien Loriot ca9636bf1e move polyhedron slicer 2013-06-20 16:45:17 +02:00
Sébastien Loriot a500939d52 rename the package to Operations_on_polyhedra 2013-06-20 16:41:01 +02:00