Laurent Rineau
dfb64ce2f1
"Return `true`"
2017-10-13 15:57:02 +02:00
Laurent Rineau
f38c886c8b
Fix typos reported by @janetournois
...
The review: https://github.com/CGAL/cgal/pull/2315#pullrequestreview-58370911
2017-10-13 15:57:02 +02:00
Laurent Rineau
9076ecaddf
Add K::Has_on_bounded_side_3(Sphere_3, Sphere_3, Point_3, Point_3)
2017-10-13 15:57:02 +02:00
Laurent Rineau
dec5908e32
Fix a warning
2017-10-13 15:57:02 +02:00
Laurent Rineau
02d0bea546
Fix a warning
...
```
include/CGAL/Mesh_3/Protect_edges_sizing_field.h:1821:14: warning: unused variable 'point_through' [-Wunused-variable]
Bare_point point_through = wp2p((*previous)->point());
^
```
2017-10-13 15:57:02 +02:00
Laurent Rineau
e6cf0e73f5
Assure the covering of curves by protecting balls
...
- That changes the API of Mesh_domain_with_polyline_features_3 (and the
corresponding concept... TODO)
- The domain is now responsible for checking the covering.
- A lot of method have gained the `orientation` parameter: it is uses
on cycles, to know distinguish between the two curves segments
between two points.
- The implementation of <CGAL/Mesh_3/Protect_edges_sizing_field.h> has
changed accordingly.
2017-10-13 15:57:02 +02:00
Laurent Rineau
38617b17a3
Refactoring of Sizing_field_with_aabb_tree (API breakage too)
...
The refactoring allows to compute a better size of corners in a cycle.
2017-10-13 15:57:02 +02:00
Laurent Rineau
4ff88c8220
Cosmetic
2017-10-13 15:57:02 +02:00
Laurent Rineau
8ef4832e7c
Factorize the `disp_vert` functions into <CGAL/Mesh_3/utilities.h>
2017-10-13 15:57:02 +02:00
Laurent Rineau
6c78907ecc
Fix header guards and license
2017-10-13 15:57:02 +02:00
Laurent Rineau
ddb1aa8aec
Fix compilation of <CGAL/Mesh_3/experimental/Get_facet_patch_id.h>
...
missing header
2017-10-13 15:57:02 +02:00
Laurent Rineau
dc7c887436
Fix the compilation of <CGAL/Polyhedral_mesh_domain_3.h>
...
1. Create <CGAL/boost/graph/Graph_with_descriptor_with_graph_fwd.h>
... a forward-declaration header.
2. Include the forward-declarations of `CGAL::Surface_mesher` and
`CGAL::Graph_with_descriptor_with_graph`, so that the header compiles.
2017-10-13 15:57:02 +02:00
Laurent Rineau
107cdccd6d
Merge pull request #2438 from lrineau/Mesh_3-test_polyhedral_complex_with_surface_mesh-GF
...
Mesh_3: make it work with Surface_mesh
2017-10-11 19:14:49 +02:00
Laurent Rineau
7e9f756935
Replace all std::unary_function by CGAL::unary_function
2017-10-04 15:57:09 +02:00
Laurent Rineau
0ddad74fe0
Change the API of the manifold criterion
2017-09-27 16:21:43 +02:00
Laurent Rineau
19519adeed
Fix warnings
2017-09-26 16:12:45 +02:00
Laurent Rineau
c33d1b6dd9
Merge branch 'releases/CGAL-4.11-branch'
2017-09-25 16:48:41 +02:00
Laurent Rineau
412927917b
Bug-fix for Mesher::one_step()
...
In issue #2453 :
> I am trying to mesh in the demo a given Polyhedron (the problem is the same with Surface_mesh with a very small tetrahedron size, and the output mesh is always more or less the same, with very few simplices compared to what I expect.
Actually, the demo uses a loop:
```C++
while( !mesher->is_algorithm_done() )
mesher->one_step();
```
Because of that bug in `one_step()`, `is_algorithm_done()` could return
`true` even before the cells mesher level has scanned the triangulation
for bad cells. That will be fixed, now.
2017-09-22 16:27:46 +02:00
Jane Tournois
f4c8415dca
add Manifold_options as a new boost parameter name for Mesh_3
...
there are 3 possible values for this parameter :
manifold(),
manifold_with_boundary(),
non_manifold() //the default
it will eventually replace the part of Mesh_facet_topology
that is dedicated to MANIFOLD
2017-09-19 16:04:29 +02:00
Laurent Rineau
8425cc01a9
Last fixes for BGL/Surface_mesh
2017-09-18 14:56:58 +02:00
Laurent Rineau
f5a0f3a587
Add operator== to Primitive
2017-09-18 14:56:57 +02:00
Laurent Rineau
799666ca7a
Duplicate the examples
...
Now we have a `Polyhedron_3` and a `Surface_mesh` version of the
following examples:
- `examples/Mesh_3/mesh_polyhedral_complex.cpp`
- `examples/Mesh_3/mesh_polyhedral_domain.cpp`
2017-09-18 14:56:57 +02:00
Laurent Rineau
578889e801
Fix compilation of mesh_polyhedral_domain.cpp with Polyhedron_3
2017-09-18 14:56:57 +02:00
Laurent Rineau
ebf8db64e9
More BGL
2017-09-18 14:56:57 +02:00
Laurent Rineau
151be29572
No longer use Graph_with_descriptor_with_graph<SM>
...
The `Polyhedral_mesh_domain` template class, now uses a specific
`AABBPrimitive` type, when used with a `FaceGraph`.
2017-09-18 14:56:57 +02:00
Laurent Rineau
d929e90423
add properties for `const Surface_mesh<P>`
...
For a const `Surface_mesh<P>`, one can call `property_map()` instead of
`add_property_map()`.
2017-09-18 14:56:56 +02:00
Laurent Rineau
d666cfa011
Fix: initialize the vertex_feature_degree property map
...
This version of the code now compiles and runs correctly, but it still
uses a `Graph_with_descriptor_with_graph`.
2017-09-18 14:56:56 +02:00
Laurent Rineau
42ef37d773
Change the AABB tree of Side_of_triangle_mesh
...
That allows to use multiple face graph in the same AABB tree.
2017-09-18 14:56:56 +02:00
Laurent Rineau
9fa470c79f
(!) Version that compiles, but does not work with multiple surfaces
2017-09-18 14:56:48 +02:00
Laurent Rineau
037cba3fae
Merge pull request #2336 from maxGimeno/Detect_features-GF
...
PMP: Detect features
2017-09-18 14:29:55 +02:00
Maxime Gimeno
6f4b3c0c93
Fix travis error
2017-08-28 14:36:30 +02:00
Jane Tournois
1c7e171940
call get(property map) outside of function
2017-08-22 17:05:33 +02:00
Jane Tournois
1ce7ea7211
fix compilation error
2017-08-21 13:00:18 +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
9eb349b472
minor indentation issues
2017-08-17 17:22:19 +02:00
Maxime Gimeno
43ff0d092c
Implementation review Jane and sebastien
2017-08-11 15:30:03 +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
7d5226bba3
Another review pass.
2017-08-10 11:22:21 +02:00
Maxime Gimeno
1d497d09ff
Fix warnings and error
2017-08-10 09:37:37 +02:00
Maxime Gimeno
ffd95ac3a0
Add a line in the TriangleMesh definition of facets_in_complex_3_to_triangle_mesh()
2017-08-09 10:31:04 +02:00
Maxime Gimeno
56cb0a66a3
Changes after review
2017-08-09 10:31:04 +02:00
Maxime Gimeno
088934730b
changes in the doc.
2017-08-09 10:31:04 +02:00
Maxime Gimeno
603ae0d9c6
Rename file to match doc
2017-08-09 10:31:04 +02:00
Maxime Gimeno
593d7f6691
Use PMP::polygon_soup_to_polygon_mesh() in output_c3t3_to_facegraph() and adapt doc.
2017-08-09 10:31:04 +02:00
Maxime Gimeno
d57be1d856
Add documentation and update changes.html
2017-08-09 10:31:04 +02:00
Maxime Gimeno
fa598b70ab
Add a file and a test to export a c3t3 to a facegraph.
2017-08-09 10:30:19 +02:00
Maxime Gimeno
f670ffe4e2
detect_surface_patches uses connected_components
2017-08-09 10:24:48 +02:00
Maxime Gimeno
1fe1e21bb6
Replace maximum_surface_patch by first_index.
2017-08-07 13:32:02 +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
Jane Tournois
d826147256
remove TriangleAccessor from polyhedral_mesh_complex
2017-08-03 17:15:43 +02:00
Jane Tournois
56cab9458c
remove extra typename
2017-08-03 16:09:52 +02:00
Jane Tournois
0c2999da30
use forward declaration include
2017-08-03 16:09:52 +02:00
Jane Tournois
77896f38fe
use the AABB_tree internal to Side_of_triangle_mesh
...
this avoids incompatibility issues,
and simplifies the code in Polyhedral_mesh_domain_3
2017-08-03 16:09:52 +02:00
Jane Tournois
862300b609
remove extra *
...
and improve indentation
2017-08-03 16:09:52 +02:00
Jane Tournois
ee8eda8a16
TriangleAccessor is not needed anymore
2017-08-03 16:09:52 +02:00
Jane Tournois
9e388204e8
use Side_of_triangle_mesh in Polyhedral_mesh_domain_3
2017-08-03 16:09:52 +02:00
Maxime Gimeno
95dfae314b
Rename file
2017-08-02 16:26:53 +02:00
Laurent Rineau
917781929b
Merge pull request #2279 from janetournois/Polyhedron_demo_-add_mesh_surface_w_border_in_closed_domain-GF
...
Qualify call of is_empty() as CentOS6-CXX11 sees an ambiguity with struct std::is_empty
2017-07-25 18:17:10 +02:00
Laurent Rineau
0ec094d1e0
Bug-fix: fix a bug that could lead to a size close to 0
...
The bug and the fix are known for six weeks (found while working on
another project):
> commit 15d1f864c4bb68cc9e267c3be3610296e5fa9212
> Author: Laurent Rineau <laurent.rineau@cgal.org>
> Date: Fri Feb 17 12:17:18 2017 +0100
>
> Refactoring of Sizing_field_with_aabb_tree (API breakage too)
but we forgot to include the fix in CGAL.
2017-07-21 17:29:29 +02:00
Laurent Rineau
99bfe4b200
Fix debug code, after the BGLization
2017-07-21 17:18:51 +02:00
Laurent Rineau
5f198bca9c
Bug-fix: fix a bug that could lead to a size close to 0
...
The bug and the fix are known for six weeks (found while working on
another project):
> commit 15d1f864c4bb68cc9e267c3be3610296e5fa9212
> Author: Laurent Rineau <laurent.rineau@cgal.org>
> Date: Fri Feb 17 12:17:18 2017 +0100
>
> Refactoring of Sizing_field_with_aabb_tree (API breakage too)
but we forgot to include the fix in CGAL.
2017-07-21 16:49:40 +02:00
Laurent Rineau
2ef17adaf0
Extend the test to compare with reference files
...
That way, if the format changes, the test will detect the change.
2017-07-18 15:53:21 +02:00
Laurent Rineau
aa85aea097
Fix io_signature for Mesh_3 (since the weighted point rework)
2017-07-18 14:40:10 +02:00
Laurent Rineau
ceec6140ba
Merge pull request #1884 from lrineau/Mesh_3-Polyhedral_complex_mesh_domain_3-GF
...
New class of MeshDomainWithFeatures_3, from a polyhedral complex
2017-07-17 16:28:27 +02:00
Laurent Rineau
78f1988747
Merge pull request #2247 from lrineau/Surface_mesher-cleanup_after_Weighted_point_3-lrineau
...
Surface mesher: cleanup files after the move to Weighted_point_3
2017-07-17 12:24:03 +02:00
Laurent Rineau
871bba21f6
Merge pull request #2212 from MaelRL/Periodic_3_Regular_triangulation_3-APelle
...
Add periodic regular triangulations
2017-07-17 12:23:54 +02:00
Andreas Fabri
b138cc7f9e
Qualify call as CentOS6-CXX11 sees an ambiguity with struct std::is_empty
2017-07-17 11:11:42 +02:00
Laurent Rineau
ef2f6cd9a8
Remove remaining use of <CGAL/Weighted_point.h>
2017-07-11 13:35:41 +02:00
Jane Tournois
0ca00822dc
fix warnings
...
about comparison signed/unsigned
2017-07-07 11:54:24 +02:00
Jane Tournois
433d154329
variable used only in verbose mode
2017-07-07 11:27:21 +02:00
Jane Tournois
400edd0886
this can't be tested when Surface_patch_index is not only an integer
2017-07-07 11:23:59 +02:00
Jane Tournois
b7597d90f7
rt.insert() takes a weighted point
...
fix compilation error
2017-07-07 10:56:17 +02:00
Jane Tournois
ca20cea4f2
fix compilation errors after rebase
2017-07-07 10:19:08 +02:00
Andreas Fabri
5dbe78d1ec
Remove typdef
2017-07-07 10:15:10 +02:00
Jane Tournois
63d793575d
typos in the doc
2017-07-07 10:15:10 +02:00
Jane Tournois
b47a4eec3e
Partially Revert "allow not to protect borders and sharp features in a polyhedral complex"
...
This reverts commit 087c6ab1f388febb8823c66eb9d05b9229a4af93.
We now use a const_cast to solve the problem of the reverted commit
2017-07-07 10:15:10 +02:00
Jane Tournois
8a36efa436
allow not to protect borders and sharp features in a polyhedral complex
...
we overload construct_initial_points_object() to fill internal data structures
of Polyhedral_complex_mesh_domain_3 in case they have not been initialized yet
there were a lot of constness issues to be solved, and most internal data
structures had to be made mutable.
It seems to be a better choice and exposing a non-const mesh domain in the
outer functions as init_c3t3() for example
2017-07-07 10:15:10 +02:00
Jane Tournois
b49bd34349
document the class, and set visible or not what should be
2017-07-07 10:15:10 +02:00
Jane Tournois
6692154562
doc : fix compilation, and add group
2017-07-07 10:15:10 +02:00
Jane Tournois
63cc93d15d
change some private to protected, and add a constructor
...
to be able to use the methods in a derived class
2017-07-07 10:15:10 +02:00
Jane Tournois
0a1f3ce326
use the typedef Polyhedron_type
2017-07-07 10:15:10 +02:00
Jane Tournois
db634d317e
deal with duplicated points
...
in some configurations where the input is non-manifold at a vertex,
there might be duplicated points.
When this happens, we want to merge the incident surface patches
to preserve meshing with the topology criterion from not terminating
2017-07-07 10:15:10 +02:00
Jane Tournois
06434bda1a
fix add_vertices_to_c3t3_on_patch_without_feature_edges(C3t3& c3t3)
...
the implementation was incomplete
2017-07-07 10:15:10 +02:00
Jane Tournois
8d54b6f970
remove functions that have become useless
...
because we do not restrict to cuboid-like domains,
we can use is_sharp, detect_sharp_edges, and detect_border_edges
from Detect_features_in_polyhedra instead of these specific implementations
2017-07-07 10:15:10 +02:00
Jane Tournois
9fc794ec14
add missing ref
2017-07-07 10:15:10 +02:00
Jane Tournois
82da7a8f61
write detect_borders() and detect_features()
...
as done in CGAL::Polyhedral_mesh_domain_with_features_3
2017-07-07 10:15:10 +02:00
Jane Tournois
80e3ce68dd
do not detect sharp features in constructor
...
and do not consider that sharp edges have to be on the bbox
2017-07-07 10:15:10 +02:00
Jane Tournois
675f54334b
add comments
2017-07-07 10:15:10 +02:00
Jane Tournois
46d31b6f48
fix compilation for visual studio
...
msvc 2013 fails to match IGT with the local IGT, and mismatches
with the one from the Base class.
this commit is enough to help it match types
2017-07-07 10:15:10 +02:00
Laurent Rineau
87d7824afc
Include the license checking header
2017-07-07 10:15:10 +02:00
Laurent Rineau
abc6c0697f
Fix the stupid name lookup bug from Visual C++
...
```
...\include\CGAL/Polyhedral_complex_mesh_domain_3.h(283): error C2248: 'CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor,CGAL::Tag_true,CGAL::Tag_true>::IGT': cannot access private typedef declared in class 'CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor,CGAL::Tag_true,CGAL::Tag_true>'
with
[
Polyhedron=CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,
IGT=K,
TriangleAccessor=CGAL::Triangle_accessor_3<CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,K>
]
...\include\CGAL/Polyhedral_mesh_domain_3.h(169): note: see declaration of 'CGAL::Polyhedral_mesh_domain_3<Polyhedron,IGT,TriangleAccessor,CGAL::Tag_true,CGAL::Tag_true>::IGT'
with
[
Polyhedron=CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,
IGT=K,
TriangleAccessor=CGAL::Triangle_accessor_3<CGAL::Polyhedron_3<K,CGAL::Mesh_3::Mesh_polyhedron_items<int>,CGAL::HalfedgeDS_default,std::allocator<int>>,K>
]
```
2017-07-07 10:15:10 +02:00
Laurent Rineau
afa62cbb40
First draft of a documentation for Polyhedral_complex_mesh_domain_3
2017-07-07 10:15:10 +02:00
Laurent Rineau
c4fea992cb
Add an example and a class: Polyhedral_complex_mesh_domain_3
2017-07-07 10:15:10 +02:00
Maxime Gimeno
2e5b2d5d84
Fix mesh_3_plugin with SM
2017-07-05 16:59:11 +02:00
Mael Rouxel-Labbé
5ef4ed6083
Merge branch 'Periodic_3_Regular_triangulation_3-APelle-old' into Periodic_3_Regular_triangulation_3-APelle
...
Based on master
2017-07-03 16:12:14 +02:00
Laurent Rineau
d878561809
Merge pull request #2102 from afabri/Kernel_Weighted_point_without_conversion-GF
...
Remove implicit conversions between points and weighted points
2017-07-03 12:08:57 +02:00
Mael Rouxel-Labbé
ce8f3ff2d9
Fixed unused variable warning
2017-06-28 10:17:14 +02:00
Mael Rouxel-Labbé
044deb6c7e
Replaced boost_static_assert with cgal_static_assert and used () guards
2017-06-28 10:16:23 +02:00