lower dimension that contains them,
- the oracle sets tags in points as well,
- the edges default criteria can now enforce that an edge must have its two
end points on the same curved edge,
- new facets criteria to enforce a facet to have its three vertices on the
same surface patch.
- The surface is now pass by const reference to the oracle (that was one
reason of the poor performances of the polyhedral oracle!).
ALL THAT CODE WILL NEED A FULL REVIEW BEFORE CGAL-3.4.
- Polyhedral_oracle::initial_points_: use input points in random order,
- Polyhedral_surface is know templated by a new tag, that can be
"Has_no_edges" or "Has_edges", so that the edges detection and handling
is triggered.
- Polyhedral_oracle::is_in_volume() now tests if the point is in the
bounding box, before anything else. That solved several issues, when
the point tested had very big coordinates.
In Mesh_3:
- Mesh_criteria's size_bound is know squared in the constructor.
Polyhedron_3.
- Added "Facet neighbor(Facet f, int j) const;" in
<CGAL/Complex_2_in_triangulation_3.h>.
- New code for output_surface_facets_to_off() in
<CGAL/IO/Complex_2_in_triangulation_3_file_writer.h>. Now uses
Polyhedron_3 I/O operators (maybe temporarily), and *orients the output*,
as mush as possible, without any call to any surface oracle.
The ordering code is adapted from reorient_faces() in TDS_2.
- Updated demo/Surface_mesher/polyhedron_remesher.cpp, so that it works.
Notes for the CGAL-3.3 release manager:
- Surface_mesher/demo/Surface_mesher is "dont_submitted".
- The changes in Surface_mesher/include/CGAL/ only impact undocumented
features of the package. Actually, maybe output_surface_facets_to_off()
should be documented (with an adapted API) now that it orients the facets.
- added a public member function
Bbox bbox() const;
to Data_structure_using_octree_3<>.
- fix several bad coding patterns, in Data_structure_using_octree_3.h
- fix the header of Data_structure_using_octree_3.h
- trivial destructor for Constrained_Element, to delete the "type"
member.
** In Surface_mesher:
- added a public member function
Bbox bbox() const;
to Polyhedral_surface_3<>.
- remove subdirectories of include/CGAL/Surface_mesher: files of Criteria/
and Oracles/ are moved one step back.
- repear the polyhedral oracle
- Implicit_oracle.h is now Implicit_surface_oracle.h (and the class has
been renamed too.
- no longer "Kernel_point" trick in Implicit_surface_oracle.h
- *but* "Kernel_point" trick is needed in Polyhedral_oracle.h! :-(
** In Mesh_3:
- repear examples/Mesh_3/polyhedral_surface_mesher.C
- add two input files in ./inputs/*.off (with their medit files)