mirror of https://github.com/CGAL/cgal
409 lines
17 KiB
Plaintext
409 lines
17 KiB
Plaintext
7 April 2006 Laurent Rineau
|
|
- added a picture for the sphere example, in manual.
|
|
- modified the bounds for the skull example: with previous bounds (10 and
|
|
10), the resulting mesh was not manifold.
|
|
|
|
6 April 2006 Laurent Rineau
|
|
- better test case with two spheres (I changed the radii and centers), in
|
|
the testsuite.
|
|
- fix the classes Surface_mesh_cell_base_3 and
|
|
Complex_2_in_triangulation_cell_base_3, so that Surface_mesh_cell_base_3
|
|
corresponds to its documentation (the default base class was hidding the
|
|
problem).
|
|
- remove an unused code, in Surface_mesher (check_visits)
|
|
- change to include/CGAL/Weighted_point_with_surface_index.h, used by
|
|
Mesh_3 only.
|
|
- the ImplicitFunction concept now has a operator()(Point), instead of
|
|
operator()(FT, FT, FT). This implied the modification of:
|
|
- the Gray_level_image_3 and its documentation Gray_level_image_3.tex
|
|
(new template parameter, to have the type of point),
|
|
- all examples or demo,
|
|
- Mesh_3 examples or demo as well
|
|
|
|
This modification was mandatory, before the CGAL-3.2 release, to avoid
|
|
Implicit_surface to use methods x(), y() and z() of points.
|
|
|
|
Fully tested, etc.
|
|
- Performance issue, in Standard_criteria.h:
|
|
Quality were not defined correctly, and then facets were not ordered
|
|
correctly, in the Double_map.
|
|
|
|
5 April 2006 Laurent Rineau
|
|
- demo now output an off file, probably non oriented.
|
|
- Mesh_3/application/off_to_medit.C helps to convert it to a medit file.
|
|
|
|
29 March 2006 Laurent Rineau
|
|
- New "#ifdef CGAL_USE_CORE/#endif" around the use of CORE, in
|
|
test/Surface_mesher/implicit_surface_mesher_test.C
|
|
- Patch to ImageIO to kill warnings of SunCC. ImageIO was a C library but
|
|
is compiled by a C++ compiler. It needs adjustments.
|
|
|
|
28 March 2006 Andreas Fabri
|
|
- Replaced #ifdef WIN32 with #ifdef _MSC_VER in ImageIO.c
|
|
|
|
23 March 2006 Laurent Rineau
|
|
- new version, more didactic, of
|
|
examples/Surface_mesher/3d_image_surface_mesher.C
|
|
- killed warnings in ImageIO
|
|
- updated test parameters
|
|
- the handle of bad edges, in
|
|
include/CGAL/Surface_mesher/Surface_mesher_regular_edges.h, is now lazy,
|
|
like in Surface_mesher_manifold.h
|
|
- include/CGAL/Surface_mesher/Surface_mesher_regular_edges_with_boundary.h
|
|
now longer exists: Surface_mesher_regular_edges is templated by a
|
|
boolean (see the code)
|
|
- fix efficiency errors in Surface_mesher_manifold.h
|
|
- the teaser picture of the doc is now centered in HTML too
|
|
- added a demo, even if it is not ready
|
|
If somebody or the release manager do not agree with that, I will
|
|
"dont_submit" it. So "Speak Now or Forever Hold Your Peace!" :-)
|
|
|
|
22 March 2006 Laurent Rineau
|
|
- fix doc_tex/Surface_mesher_ref/ImplicitSurfaceTraits_3.tex after the
|
|
changes of yesterday
|
|
- forgot to tell that FT must be constructible from a double
|
|
- fix the std::cerr everywhere: better use of the macro
|
|
CGAL_SURFACE_MESHER_VERBOSE
|
|
- fix the (bool debug, bool verbose) parameters of
|
|
Surface_mesher::refine_mesh. It is now template parameters of the class
|
|
Surface_mesher. I have verified that the optimizer of GNU/CC is able to
|
|
strip the debug code when NO_DEBUG is use.
|
|
- change sligthly the code of examples, and modify sligthly the user manual
|
|
accordingly
|
|
- change the way the parameter error_bound of the constructor of
|
|
Implicit_Surface_3 is multiplied by the radius of the bounding sphere.
|
|
- added explanation of parameter error_bound of the constructor of
|
|
Implicit_Surface_3, in its ref page
|
|
- change some bug messages in
|
|
include/CGAL/Surface_mesher/Oracles/Implicit_oracle.h
|
|
- add a case in the testsuite
|
|
|
|
21 March 2006 Laurent Rineau
|
|
- fix examples/Surface_mesher/3d_image_surface_mesher.C (stupid bug: the
|
|
bounding sphere and the criteria were copy-pasted from
|
|
implicit_surface_mesher.C and were unappropriate.
|
|
- changes template parameters of all classes
|
|
include/CGAL/Surface_mesher/Surface_mesher*.h and update of
|
|
include/CGAL/make_surface_mesh.h
|
|
- Fix the compilation error on Windows compilers.
|
|
BUG explanation: there was a typedef name SMREB in
|
|
Surface_mesher_regular_edges.h and SMREB was also the name of a template
|
|
parameter of Surface_mesher_regular_edges.h.
|
|
- Change the compilation process of ImageIO, to be cross-platform
|
|
|
|
20 March 2006 Laurent Rineau
|
|
- fix include/CGAL/Gray_level_image_3.h
|
|
- added a CGAL::Timer to test/Surface_mesher/implicit_surface_mesher_test.C
|
|
and fixed a warning ("FT(1)" instead of "1")
|
|
- new version of include/CGAL/Surface_mesher/Oracles/Implicit_oracle.h that
|
|
now uses include/CGAL/Surface_mesher/Oracles/Sphere_oracle_3.h
|
|
|
|
17 March 2006 Laurent Rineau
|
|
- modified examples/Surface_mesher/makefile, to have ImageIO compiled on
|
|
Sun
|
|
- added examples/Surface_mesher/cgal_test, so that the testsuite does not
|
|
try to compile and run examples/Surface_mesher/implicit_functions
|
|
- try to workaround ICL and VC++ 8 bug (or not bug, I do not know), in
|
|
include/CGAL/Surface_mesher/Surface_mesher_manifold.h
|
|
- added a new class include/CGAL/Surface_mesher/Oracles/Sphere_oracle_3.h
|
|
and a specialization Surface_mesh_traits_generator_3<CGAL::Sphere_3<Kernel> >
|
|
- updated test test/Surface_mesher/implicit_surface_mesher_test.C to test
|
|
the meshing of Kernel::Sphere_3(ORIGIN, 1.)
|
|
|
|
15 March 2006 Laurent Rineau
|
|
- Added macro CGAL_SURFACE_MESHER_DEBUG_CONSTRUCTORS to strace constructors
|
|
calls of classes in include/CGAL/Surface_mesher/Surface_mesher*.h
|
|
- Added a test file test/Surface_mesher/internal-test-surface-mesher.C for
|
|
Andreas
|
|
|
|
14 March 2006 Joachim Reichel
|
|
- Added/fixed CGAL_MAKEFILE= line in makefiles
|
|
|
|
10 March 2006 Mariette
|
|
- doc fixes
|
|
|
|
10 March 2006 Laurent Rineau
|
|
- first correct version of SurfaceMeshTraingulation_3.tex
|
|
- removed unused Tr::* typedefs everywhere
|
|
- renamed Triangulation::XXXX_iterator to
|
|
Triangulation::Finite_XXXs_iterator in C2t3.
|
|
|
|
9 March 2006 Laurent Rineau
|
|
- modification of Complex_2_in_triangulation_vertex_base_3 and
|
|
Complex_2_in_triangulation_3: the result of
|
|
union_find_of_incident_facets() is cached in the vertex.
|
|
- remove unwanted verbose output. It is now activable by defining
|
|
the preprocessor macro CGAL_SURFACE_MESHER_VERBOSE.
|
|
|
|
|
|
8 March 2006 Laurent Rineau
|
|
- change some hard-coded "double" to "FT"
|
|
- change face_type() to face_status() in users of C2t3
|
|
- first testsuite
|
|
- renamed nested typedef Triangulation_3 to Triangulation, in C2t3
|
|
- added specializations for Manifold_tag and Manifold_with_boundaries_tag,
|
|
in include/CGAL/make_surface_mesh.h
|
|
- heavy changes of template parameters and constructors of:
|
|
- Surface_mesher_regular_edges_without_boundary_base
|
|
- Surface_mesher_regular_edges_base
|
|
- Surface_mesher_manifold_base
|
|
- new classes Surface_mesher_manifold, urface_mesher_regular_edges and
|
|
Surface_mesher_regular_edges_without_boundary, that are no longer
|
|
copy-pasted from Surface_mesher.
|
|
- rename all triangulation objects to "tr", and all geom_traits objects to
|
|
"gt". No longer "tri3", or "ker".
|
|
- updated the target "depends" of GNUmakefile files.
|
|
- testsuite compiles, but runtime problem in manifold version. Non manifold
|
|
runs correctly.
|
|
- fix layout of this changes.txt file
|
|
|
|
8 March 2006 Mariette Yvinec
|
|
- changed the booleans in Complex_2_in_triangulation_vertex_base_3
|
|
- changes in Complex_2_in_triangulation_3 :
|
|
- remove set_in_complex and remove_from_complex for vertices
|
|
- change set_in_complex and remove_from_complex for facets
|
|
- add iterators on complex faces
|
|
- fixed operator Not_in_complex
|
|
- changed face_type into face_status
|
|
- changed is_in_complex
|
|
- added is_regular_or_boundary_for_vertices
|
|
|
|
|
|
2 March 2006 Laurent Rineau
|
|
(WARNING: partially compiles, runtime errors, temporary commit)
|
|
- Added an undocumented class Surface_mesh_triangulation_generator_3 which
|
|
is a meta functor Kernel->Triangulation, that computes the right
|
|
triangulation for make_surface_mesh()
|
|
- Added documented files:
|
|
- include/CGAL/Implicit_surface_3.h
|
|
- include/CGAL/Surface_mesh_default_criteria_3.h
|
|
- include/CGAL/Surface_mesh_complex_2_in_triangulation_3.h
|
|
- In doc, rename:
|
|
- SurfaceMeshCriteria to SurfaceMeshCriteria_3
|
|
- Surface_mesh_default_criteria to Surface_mesh_default_criteria_3
|
|
- Added doc_tex GNUmakefile, for developers uses.
|
|
|
|
- Wrote the first test file!
|
|
- Find Triangulation_mesher_level_traits_3.h in include/CGAL/Mesh_2/, now.
|
|
- Major changes in template arguments, data members, and constructors of:
|
|
- class Surface_mesher,
|
|
- class Implicit_oracle,
|
|
- Minor changes everywhere (sorry for the imprecision, too long).
|
|
|
|
27 february 2006 Laurent Rineau
|
|
(WARNING: no longer compiles, temporary commit)
|
|
- Added number_of_facets() to C2T3 (code and documentation)
|
|
- Remove Complex_2_in_triangulation_3_surface_meshe.h (not finished)
|
|
- Created classes Surface_mesh_cell_base_3 and Surface_mesher_vertex_base_3.
|
|
- Beginning to changes code to bo sync with the documentation.
|
|
- Remove old headers Nodes.h and Graph.h
|
|
|
|
|
|
20 janvier 2006 Mariette Yvinec
|
|
- changed the reference page manual according to Efi comments + various
|
|
discussions.
|
|
- still missing : the concept SurfaceMeshTriangulation_3
|
|
|
|
|
|
17 janvier 2006 Mariette Yvinec
|
|
- changed in the doc PureComplex_2InTriangulation_3 to
|
|
SurfaceMeshComplex_2InTriangulation_3 and
|
|
Pure_complex_2_in_triangulation_3.tex to
|
|
Surface_mesh_complex_2_in_triangulation_3.tex
|
|
|
|
9 December 2005 Andreas Fabri
|
|
- Replaced arrays of bool with a char and bit operations
|
|
- Moved CGAL/Complex_2_in_triangulation_surface_mesh_cell_base_3.h
|
|
to CGAL/Surface_mesher/Surface_mesh_cell_base_3.h
|
|
|
|
1 December 2005 Andreas Fabri
|
|
- Putting const& in the Implicit_oracle
|
|
- Made Implicit_oracle::intersect_segment_surface_rec(Point p1, Point p2)
|
|
non-recursive
|
|
- Replaced handwritten code with usage of TDS_3::mirror_facet
|
|
|
|
30 November 2005 Andreas Fabri
|
|
- Introduced lazy initialization of treatment of singular vertices
|
|
- Introduced a method for determining if a vertex is in the complex,
|
|
as face_type computation would trigger the lazy initialization
|
|
- Removed the graph in the vertices for computing whether the vertex is
|
|
singular
|
|
- Removed the facet status field and its set/get method
|
|
- Renamed complex_subface_type by face_type
|
|
- Replaced functions that return a list with functions that write in output
|
|
iterators
|
|
- Replaced the "visits" that counted with a visited that only stores a bool
|
|
as there was only an inc and reset method, and the comparison with 0
|
|
- Lots of small cleanup as proposed in TODO
|
|
|
|
|
|
4 november 2005 Laurent Rineau
|
|
- new output/input operators in:
|
|
include/CGAL/Complex_2_in_triangulation_cell_base_3.h
|
|
include/CGAL/Complex_2_in_triangulation_surface_mesh_cell_base_3.h
|
|
include/CGAL/Point_with_surface_index.h
|
|
include/CGAL/Weighted_point_with_surface_index.h
|
|
This permits to save/load meshes with i/o operators of Triangulation_3.
|
|
|
|
3 novembre 2005 Mariette Yvinec
|
|
- surface mesher is now on cgal cvs serveur
|
|
- added in doc_tex the specifications of Complex_2_in Triangulation_3
|
|
although they do not correspond to the code developped by David
|
|
|
|
14 september 2005 Mariette Yvinec
|
|
- put package Surface_mesher on cgal local cvs serveur
|
|
|
|
2 september 2005 Laurent Rineau
|
|
- in Surface_mesher:
|
|
- new file include/CGAL/Point_with_surface_index_geom_traits.h to have
|
|
one class per file.
|
|
- new files:
|
|
include/CGAL/Weighted_point_with_surface_index.h
|
|
include/CGAL/Point_with_surface_index_geom_traits.h
|
|
so that CGAL::Weighted_point_with_surface_index<Weighted_point> can
|
|
have several additional constructors with Bare_point parameters.
|
|
- two important hacks in files:
|
|
include/CGAL/Surface_mesher/Oracles/Polyhedral.h
|
|
include/CGAL/Surface_mesher/Oracles/Implicit_oracle.h
|
|
|
|
1/ Use of a new typedef Kernel_point, obtained by Kernel_traits, so
|
|
these two classes work with Point_with_surface_index<Point> and
|
|
Weighted_point_with_surface_index<Weighted_point>. Some assign
|
|
statement has to be used with a Kernel_point, so that they do not
|
|
fail systematicaly (assign sucks!).
|
|
|
|
2/ Use of CGAL::Random_points_in_sphere_3<Point, Point_creator> in
|
|
include/CGAL/Surface_mesher/Oracles/Implicit_oracle.h in function
|
|
random_points(), so that this function does not use the contructor
|
|
Point(double x, double y, double z). This implied that the tenmplate
|
|
Implicit_oracle had a new template parameter, Point_creator, which I
|
|
gave default
|
|
Creator_uniform_3<typename GT::RT, typename GT::Point_3>.
|
|
With Point_with_surface_index<Point> and
|
|
Weighted_point_with_surface_index<Weighted_point> this creator should
|
|
be defined. See ../Mesh_3/test/Mesh_3/combined_spheres.C and
|
|
../Surface_mesher/examples/Surface_mesher/surfaces_union.C
|
|
- same problem, file
|
|
include/CGAL/Surface_mesher/Oracles/Point_surface_indices_visitor.h
|
|
has been changed: Point_surface_indices_visitor<Tr> now has a
|
|
templated new_point() function, so that is can take Kernel_point or
|
|
Point as argument.
|
|
- minor changes:
|
|
- include/CGAL/IO/Complex_2_in_triangulation_3_file_writer.h now has
|
|
correct copyright and #ifdef sentinel
|
|
- include/CGAL/Surface_mesher/Oracles/Multi_implicit_oracle.h now
|
|
has correct copyright
|
|
- rename DT_3 into Tr, and GT_3 into Geom_traits in file
|
|
include/CGAL/Surface_mesher/Oracles/Polyhedral.h
|
|
- updated examples/Surface_mesher/surfaces_union.C so that it works.
|
|
|
|
TODO: - fix include/CGAL/Surface_mesher/Oracles/Multi_implicit_oracle.h as
|
|
regards Kernel_point stuff
|
|
- merge it with include/CGAL/Surface_mesher/Oracles/Implicit_oracle.h
|
|
|
|
- in Mesh_3:
|
|
- include/CGAL/IO/File_medit.h :
|
|
- fix namespace !!
|
|
- some functions now takes a C2T3 as argument, now that C2T3 has a
|
|
triangulation() getter.
|
|
- new function input_pslg_from_medit() !! It reads indices.
|
|
- output_pslg_to_medit() now uses surface_index() too
|
|
- new implementation of CGAL::Point_traits.h
|
|
|
|
18 august 2005 Laurent Rineau
|
|
- Complex_2_in_triangulation_3 now has an accessor:
|
|
Triangulation_3& triangulation()
|
|
|
|
15 august 2005 Laurent Rineau
|
|
- in Surface_mesher: new Combining_oracle, and Oracle_visitor,
|
|
- in Mesh_3: test/Mesh_3/combined_spheres tests that new oracle.
|
|
|
|
28 july 2005 LR MY
|
|
- fixed the add_node() for memory leaks in Graph.h
|
|
- fixed the face_type() for edges in Complex_2_in_triangulation_3.h
|
|
|
|
27 July 2005 LR MY
|
|
- fixed return type of apply in Multi_implicit_oracle.h
|
|
- remove the const of const int number_of_functions
|
|
|
|
|
|
27 July 2005 LR MY
|
|
- changed some named
|
|
- multi_implicit_oracle added
|
|
|
|
|
|
19 July 2005 Laurent Rineau
|
|
Change in examples/Surface_mesher/surface_mesher.C :
|
|
- added a macro SURFACE_MESHER_POLYHEDRAL. If defined, the polyhedral
|
|
version is compiled.
|
|
- change of makefile (and .cvsignore), so that two versions
|
|
implicit_surface_mesher and polyhedral_surface_mesher are built by make
|
|
all.
|
|
|
|
19 July 2005 Laurent Rineau
|
|
Minor changes:
|
|
- use mirror_facet, from Triangulation_3. Introduced in CGAL_3_2_I_146.
|
|
|
|
|
|
30 June 2005 Laurent Rineau
|
|
- attempt to merged trunk, sliver_branch and my local modifications...
|
|
- may be correct, or not.
|
|
|
|
12 may 2005 David Rey
|
|
- create several surface meshers:
|
|
- with no verification about manifoldness
|
|
- constraint regulare edges
|
|
- constraint regular edges and no boundary
|
|
- constraint manifoldness
|
|
|
|
- mv names into better ones:
|
|
- Chew_4_surfaces -> Surface_mesher
|
|
- Chew_4_surfaces_manifold -> Surface_mesher_regular_edges
|
|
- Chew_4_surfaces_manifold_without_boundary ->
|
|
Surface_mesher_regular_edges_without_boundary
|
|
- Chew_4_surfaces_manifold_simple_vertices -> Surface_mesher_manifold
|
|
|
|
24 March 2005 Laurent Rineau
|
|
- compatibility with new requirements of Mesher_level
|
|
- code is still broken, since 2005/02/27.
|
|
|
|
8 February 2005 Laurent Rineau
|
|
- new changes.txt file
|
|
- removed files that are in Mesh_2 and Mesh_3:
|
|
- Mesher_level.h (Mesh_2)
|
|
- Triangulation_mesher_level_traits_3 (Mesh_3)
|
|
- new template parameters for Mesher_level
|
|
- modified Complex_2_in_triangulation_3:
|
|
- factorised set_in_complex and remove_from_complex
|
|
- new functions is_in_complex
|
|
- rename Complex_2_in_triangulation_cell_base_* classes:
|
|
- Complex_2_in_triangulation_cell_base_3
|
|
- Complex_2_in_triangulation_surface_mesh_cell_base_3
|
|
- new Mesher_level function names:
|
|
- Tr& triangulation_ref_impl()
|
|
- Vertex_handle insert_impl(p, z)
|
|
- Zone conflicts_zone_impl(p)
|
|
- void scan_triangulation_impl()
|
|
- bool no_longer_element_to_refine_impl()
|
|
- Element get_next_element_impl()
|
|
- void pop_next_element_impl()
|
|
- Point refinement_point_impl(e)
|
|
- void before_conflicts_impl(e, p)
|
|
- Mesher_level_conflict_status private_test_point_conflict_impl(p, zone)
|
|
- Mesher_level_conflict_status
|
|
test_point_conflict_from_superior_impl(p, zone)
|
|
- void before_insertion_impl(e, p, zone)
|
|
- void after_insertion_impl(vh)
|
|
- void after_no_insertion_impl(e, p, zone)
|
|
- new class in Mesher_level.h for default implementations:
|
|
- class Triangulation_ref_impl
|
|
- No_private_test_point_conflict
|
|
- No_test_point_conflict_from_superior
|
|
- No_test_point_conflict :
|
|
- No_before_insertion
|
|
- No_after_insertion
|
|
- No_after_no_insertion
|
|
- No_before_after_insertion
|
|
- added implementation of:
|
|
Chew_4_surface::test_point_conflict_from_superior_impl()
|