Commit Graph

408 Commits

Author SHA1 Message Date
Jane Tournois 6e31d6ff2a deactivate the new_slivers feature for now
it collects no sliver (I must have made a mistake in transfering it)
2012-07-27 10:41:05 +00:00
Jane Tournois aed7443cd3 r67845 from Mesh_3-experimental-GF
Corners incidences

- Now corners are really numbered correctly from 1 to n (before they all
  had 0 as corner_index).
- One can retrieve the set of adjacent surface patches from a corner.
2012-07-27 10:07:34 +00:00
Jane Tournois fdf38d4cce r67783 from Mesh_3-experimental-GF
(fixed by 67792, 67943, 68242, 68257 and 68273)

Add an AABB tree of feature curves in Mesh_domain_with_polyline_features_3
2012-07-27 09:54:49 +00:00
Jane Tournois 1d788a9ae7 r67748 and r67754 from Mesh_3-experimental-GF
Fix a typo: mesure->measure
2012-07-27 09:00:06 +00:00
Jane Tournois d3461617db r67685 from Mesh_3-experimental-GF
Add a comment to ease the reading of the code
2012-07-27 08:53:31 +00:00
Jane Tournois bfabc793f6 copy 2012-07-26 15:07:59 +00:00
Jane Tournois c0c9cadc92 cancel commit 70762
r67022 from Mesh_3-experimental-GF
Deactivate the grid strategy for the moment
Needs more work: that fails with a single cube as input surface.
2012-07-26 15:01:23 +00:00
Jane Tournois 88fc16a1df r67084 from Mesh_3-experimental-GF
(partly done already)

Circumcenter caches must be invalidated by the mesh optimizers.
2012-07-26 14:13:03 +00:00
Jane Tournois e79d35e3fb r66991 from Mesh_3-experimental-GF
Enable the use of grid of witnesses for polyhedral domain, by default.
2012-07-26 13:56:01 +00:00
Jane Tournois 607a18e291 compilation fixed
(missing include and missing implementation of no_topological_change)
2012-07-26 13:48:44 +00:00
Laurent Rineau 28647bf7c7 Fix compilation error: missing <boost/foreach.hpp> for the macro BOOST_FOREACH 2012-07-25 15:17:16 +00:00
Jane Tournois 357f3d3ab8 r66846 from Mesh_3-experimental-GF
Add <CGAL/Mesh_3/config.h> where config macros are used.
2012-07-24 13:52:22 +00:00
Jane Tournois 864bb92dae Avoid calls of incident_cells 2012-07-24 13:38:39 +00:00
Jane Tournois 7a3ac808b2 make use of config.h 2012-07-24 13:09:21 +00:00
Jane Tournois 59d97a0caf r66818 from Mesh_3-experimental-GF
Modify the use of macros

The semantic of CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS is split into
two macros:
  - CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS itself,
  - CGAL_MESH_3_NO_LONGER_CALLS_DO_INTERSECT_3

A new file <CGAL/Mesh_3/config.h> is now responsible for the logic like "if
that macro is enabled, then enable that one too".
2012-07-24 13:09:04 +00:00
Jane Tournois f160748ae2 r66816 from Mesh_3-experimental-GF
I wonder why the const was removed.
2012-07-24 12:49:30 +00:00
Jane Tournois 1ffc4e3424 r66781 from Mesh_3-experimental-GF
Support for CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS in C3t3_helpers
2012-07-24 12:44:55 +00:00
Jane Tournois d903910ac9 add GF copyright 2012-07-24 12:28:38 +00:00
Jane Tournois 5d962b9cb9 r66749 from Mesh_3-experimental-GF
Avoid copying containers
Improve is_sliver and counting slivers
2012-07-24 10:25:12 +00:00
Jane Tournois b96ce91267 r66740 from Mesh_3-experimental-GF
Protect the use of Robust_intersection_traits_3_new by a macro

The macro is named CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAIT.

I have also extended the error message we got if there is a problem with
the intersection returned by the AABB tree.
2012-07-24 09:23:33 +00:00
Jane Tournois 2c7a8e1940 Better debugging
r66717 from Mesh_3-experimental-GF
2012-07-24 09:11:35 +00:00
Jane Tournois fa2b77cd50 Add compatibility with CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS
When CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS is defined, the
Construct_intersection functor is always called, and Do_intersect_3 no
longer is. An assertion must be removed, because Construct_intersection can
be called on a query object that does not intersect the surface.

r66716 from Mesh_3-experimental-GF
2012-07-24 09:06:38 +00:00
Jane Tournois 1cf6743d37 missing include 2012-07-24 09:00:48 +00:00
Jane Tournois e0b8d33410 Add a grid of points for which we dtermine if they are inside or outside
This then can be used by Is_in_domain(Point query)
2012-07-23 15:30:40 +00:00
Jane Tournois 23e2a71425 Tweak the implementation of Polyhedral_mesh_domain_3
Even if there is an AABB tree dedicated to the bounding polyhedron, copy
the facets of that bounding polyhedron to the global AABB tree.

r62302 from Mesh_3-experimental-GF
2012-07-23 15:20:15 +00:00
Jane Tournois 536684d61e Add a histogram for the size of the conflict zone 2012-07-23 14:41:16 +00:00
Jane Tournois 3c3a134256 Use of Mesh_3 profiling macros
r66626 from Mesh_3-experimental-GF
2012-07-23 14:26:14 +00:00
Jane Tournois e8fd55d957 improvement of revert_move using outdated_cells of move_point_topo_change 2012-07-23 14:21:09 +00:00
Jane Tournois b1dd56a5a3 Restructure to avoid calling the area of faces three times for a tetrahedron
r66607 from Mesh_3-experimental-GF
2012-07-23 14:15:23 +00:00
Jane Tournois 66d549d18b Kernel::ComputeArea_3 works directly for 3 points, so we don't have to construct a triangle
r66599 from Mesh_3-experimental-GF
2012-07-23 14:07:27 +00:00
Jane Tournois cdcea5017a useful file: Profile_counter.h for Mesh_3
It defines the same macros as <CGAL/Profile_counter.h>, but with
"CGAL_MESH_3_" as prefix instead of "CGAL_".

r66625 from Mesh_3-experimental-GF
2012-07-23 14:00:50 +00:00
Jane Tournois 9f06042f34 Conditional use of the new Robust_intersection_traits_3
The macro CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS must be defined.

Note : Fix the detection of an empty intersection


see r66579, r66593, r66594 and r66595 of Mesh_3-experimental-GF
2012-07-23 13:59:45 +00:00
Jane Tournois 4ccccab002 merge commits r66533, r66535, r66545, r55546, r66547, r66549, r66556 of Mesh_3/Robust_intersection_traits_3.h
Final commit message :
"
Remove a warning

By the way, with static filter for Angle_3, the results are:

== Results ==

K is EPIC
RIT_new is the new implementation of Robust_intersection_3
RIT is the old implementation of Robust_intersection_3

The prefix "s " means timing for Segment_3
The prefix "r " means timing for Ray_3

s K       time: 0.121981
r K       time: 0.122982
s RIT_new time: 0.118982
r RIT_new time: 0.108983
s RIT     time: 2.17967
r RIT     time: 2.13168

WITH INTERSECTION:
s K       time: 0.202969
r K       time: 0.202969
s RIT_new time: 0.46293
r RIT_new time: 0.408938
s RIT     time: 3.2655
r RIT     time: 3.25051

Conclusion: Robust_intersection_traits_3_new is a great success!

When the intersection is empty, it wins over EPIC by a small percentage
(and wins over RIT by a great factor ~20), and when the intersection is a
point, it wins over Robust_intersection_traits_3 by a factor 8.
"
2012-07-23 13:05:14 +00:00
Jane Tournois 48f70ab87b typo on epsilon
r66515 from Mesh_3-experimental-GF
2012-07-23 12:51:51 +00:00
Jane Tournois 637fc35124 towards faster robust segment/triangle intersections
r66505 from Mesh_3-experimental-GF
2012-07-23 10:33:56 +00:00
Jane Tournois 13d5660f5e use compact cell and vertex base by default 2012-07-23 10:32:01 +00:00
Jane Tournois a67c7e2179 Introduce a vertex and cell class that does derive less so that we can order data members in decreasing size
r66473 and r66474 from Mesh_3-experimental-GF
2012-07-23 10:26:24 +00:00
Jane Tournois c72aca01ae fix compilation bug introduced in my last commit (function was missing and variable misspelled) 2012-07-23 10:25:35 +00:00
Jane Tournois 5f04b17159 introduce new move_point_topo_change_conflict_zone_known to avoid one find_conflicts for each move_point
(merge of several commits from Mesh_3-experimental-GF)
2012-07-23 09:50:46 +00:00
Jane Tournois ba1d6c8774 renaming variable with wrong name
r66424 from Mesh_3-experimental-GF
2012-07-23 09:34:36 +00:00
Jane Tournois 13f794ac01 Various improvement (check the code)
r66292 of Mesh_3-experimental-GF
2012-07-23 09:13:49 +00:00
Jane Tournois 22b47d5bed Introduce CGAL_FREEZE_VERTICES
In global optimizers : vertices that move less than the freeze_ratio (already in documentation) stop moving for the next iterations

(merges lots of commits from Mesh_3-experimental-GF)
2012-07-20 13:45:52 +00:00
Jane Tournois aa3c4c2930 fix previous commit (these macros are not in the code yet) 2012-07-20 12:23:28 +00:00
Jane Tournois f221ec2bfd add config file for default macros 2012-07-20 12:22:55 +00:00
Jane Tournois 88623f4343 Increase the balls sizes when possible
This patch tries not to apply the general rule that the size of protecting
balls is a linear interpolation of the size of protecting balls at
corner. When the curve segment is long enough, pick a point at the middle
and choose a new size.

When insert_balls is called recursively, one needs to call its version with
all parameters. The reason is that d_sign is very important, if the curve
is a sub-curve of a cycle, otherwise that may loop!

CGAL_MESH_3_PROTECTION_NON_LINEAR is the default. 
One can still deactivate it with the macro
CGAL_MESH_3_NO_PROTECTION_NON_LINEAR.

(r64518, r64580, r64581, r64582 from Mesh_3-experimental-GF merged in one commit)
2012-07-20 10:48:25 +00:00
Jane Tournois c9410d68bc Fix the sizing field.
(r64500 from Mesh_3-experimental-GF, should be completed by commits in Polyhedron demo)
2012-07-20 10:25:40 +00:00
Jane Tournois a9459bdbe3 More debugging when PROTECTION_DEBUG is defined. 2012-07-20 10:13:13 +00:00
Jane Tournois d739771db7 Add facets_in_complex_end(const Surface_patch_index)
Make C3t3 conform to its documentation: C3t3::facets_in_complex_end takes a
Surface_patch_index as parameter, like C3t3::facets_in_complex_begin.

(r63143 from Mesh_3-experimental-GF)
2012-07-20 09:39:10 +00:00
Jane Tournois 38a12c2350 Documentation bug in Mesh_3
LR
(r61997 from Mesh_3-experimental-GF)
2012-07-20 09:25:36 +00:00
Jane Tournois 8f7a8947b7 Remove unused parameter
From: Laurent Rineau <Laurent.Rineau__fedora@normalesup.org>
(r61395 from Mesh_3-experimental-GF)
2012-07-20 09:22:53 +00:00
Jane Tournois 96e2c46be5 Several missing #include
From: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
(r61394 from Mesh_3-experimental-GF)
2012-07-20 09:20:51 +00:00
Jane Tournois 2632276b37 Add a missing #include
From: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
(r61191 from Mesh_3-experimental-GF)
2012-07-20 09:07:44 +00:00
Jane Tournois a6f5e84413 Fix the I/O of Mesh_complex_3_in_triangulation_3, when the index types are
not all "int". 

LR
part of r61189 from Mesh_3-experimental-GF
2012-07-19 15:42:11 +00:00
Jane Tournois c09476db5f - Fix a bug in Polyhedral_mesh_domain_3: the Surface_patch_index types was
not equal to Polyhedron::Face::Patch_id but to Subdomain_index!

LR
r61189 from Mesh_3-experimental-GF
2012-07-19 15:16:51 +00:00
Jane Tournois 87c0652c50 Restore support for io-signature (a hack of mine to detect mismatches
between binary I/O formats).

<CGAL/Mesh_vertex_base_3.h>: the operator<< and >> were wrong.

From: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
r61170 from Mesh_3-experimental-GF
2012-07-19 15:06:08 +00:00
Jane Tournois 79de9f8e9d Remove this old file, which seems no longer used.
From: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
r61169 from Mesh_3-experimental-GF
2012-07-19 14:48:35 +00:00
Jane Tournois cbc7f64c29 Fix a compilation error in a debug output, when the surface patchs indices
are pairs, and not integral types.

From: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
2012-07-19 14:47:15 +00:00
Jane Tournois 693f71d3b8 Fix compilation error with Patch_id is not an int. 2012-07-19 14:36:46 +00:00
Jane Tournois d607377d85 Polyhedral_mesh_domain_3 with a cache of the previous query, and its
answer.
2012-07-19 14:23:42 +00:00
Jane Tournois 1dbc3fa69e If the angle bound is 0, do not even test the dihedral angle of edges: all edges are marked as sharp edges. 2012-07-19 13:54:43 +00:00
Jane Tournois caec2f2dc0 Avoid to compute the distance to the infinite vertex!
(this should be avoided by the small feature
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Initialize_infinite_vertex%28%29_with_NaN  )
2012-07-19 13:24:21 +00:00
Jane Tournois 0a3c4089fb fix constness inconsistency 2012-07-19 13:13:27 +00:00
Jane Tournois 3fa42c724e refactoring, extension of comments. 2012-07-19 13:02:52 +00:00
Jane Tournois 8e24599539 Implement the 'minimal_size' feature of Protect_edges_sizing_field.
(First implementation.)

Add a lot of "#ifdef PROTECTION_DEBUG".
2012-07-19 11:09:06 +00:00
Jane Tournois 9084012e22 In the Meshing Dialog of the Polyhedron demo (for mesh_3_plugin), add a
parameter to set a minimal size of protecting balls. That parameters is
forwarded through the call chain to the class Protect_edges_sizing_field,
but for the moment it does change anything (other commits will come).
2012-07-19 09:50:43 +00:00
Jane Tournois 2d2708aa82 Mark special ball differently. Now the Vertex must have:
void set_special(bool);
  bool is_special() const;

Add a Boolean parameter to C3t3::is_valid(bool), to have a verbose mode
(display an explanation of why the C3t3 is not valid).
2012-07-19 09:29:17 +00:00
Philipp Möller 17797b7271 Merge next into this branch. There have been conflicts in the
AABB_tree documentation, Intersections_3 and Arrangement_on_surface_2.

The merge also introduced a regression for a bug fixed in R68387 which
fixed a bug in Triangle_3 Segment_3 intersections. The relevant
testcase is in triangle_other_intersection_test.cpp.
2012-04-24 15:06:19 +00:00
Laurent Rineau aa19d9f3ad Minor whitespace changes, to fit 80 columns 2012-04-18 14:56:31 +00:00
Laurent Rineau 34ea09bc75 Minor whitespace changes, to fit 80 columns 2012-04-18 14:52:49 +00:00
Laurent Rineau bedc217022 Whitespace changes + Polyline renamed to Polyline_and_context
- Rename Polyline to Polyline_with_context: the name was not good
- Reformat the whitespace, to fit 80 columns
2012-04-18 14:45:43 +00:00
Philipp Möller 8f1ce2412c Removed all places where the CGAL_CFG_NO_TMPL_IN_TMPL work-around was
used. Those were mostly in Polyhedron and HalfedgeDS but some places
in Arrangement_2 used it, too. Neither of the parts of Arrangement_2
have been documented.
2012-04-13 13:13:30 +00:00
Laurent Rineau eb52def3db Restore indentation (one line) after a modification by a Windows developer 2012-04-10 12:08:05 +00:00
Laurent Rineau b2d0dcfc58 Remove a warning (unused variable) 2012-01-31 15:03:44 +00:00
Laurent Rineau dbf52257f8 In Polyhedral_mesh_domain_3, add a check that the input polyhedron is
triangulated.
2012-01-18 11:06:11 +00:00
Laurent Rineau 83f0d35e52 Protect calls to min and max with parenthesis 2012-01-17 15:54:58 +00:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Laurent Rineau ab6628060a Fix a bug in a debug message 2011-12-07 18:10:32 +00:00
Philipp Möller e9748fdf9a Set but not used variables removed for smoother compiling with -Wextra 2011-11-25 14:04:37 +00:00
Philipp Möller 0d528ddb74 Mesh_3 intersections with variants 2011-11-16 14:04:13 +00:00
Laurent Rineau 9d7bc3fcd7 Typo. To be coherent with current documentation of the concept MeshDomain_3
In Mesh_domain_with_polyline_features_3, the type FT must be taken from the
geom traits, and not from the base, because the concept MeshDomain_3 does
not ask for the type FT.
2011-09-30 13:41:09 +00:00
Laurent Rineau 369498d1e5 Cancel revision 64607. There had been a problem with the branch.
| ------------------------------------------------------------------------
  | r64607 | efif | 2011-07-05 17:27:04 +0200 (Tue, 05 Jul 2011) | 1 line
  | 
  | Merged feature-branch Aos_2-new_functors-tau into next
  | ------------------------------------------------------------------------
2011-07-06 11:11:58 +00:00
Laurent Rineau 05a607fabc Fix a bug in PVertex::operator<
PVertex::operator was implementing a <= instead of a strict ordering. That
is incorrect.

Bug found by the debug mode of the STL of MSVC.
2011-06-29 10:53:53 +00:00
Laurent Rineau 15f5aea274 Patch so that SWIG can use this class
For SWIG, iterators must be default-constructible.
2011-05-11 12:44:01 +00:00
Laurent Rineau ffc1186215 - Add a function overload that was documented but not implemented!
- Fix a call in a deprecated function.
- In the tests, add the test of the deprecated functions.
2011-05-11 12:34:50 +00:00
Laurent Rineau 6d500f3605 Make the code conform to the documentation: add C3t3::edges_in_complex_end(Curve_segment_index) 2011-04-19 12:15:22 +00:00
Laurent Rineau aad9d073da Bug in Construct_initial_points if the non-bounding polyhedra are coplanar.
Before this patch, Construct_initial_points did not try to intersect with
the bounding polyhedron, but only with the other polyhedra. That can lead
to a crash if the given polyhedra are a bounding one, and a second
polyhedron that is coplanar. Then the initial points are *all* coplanar,
and then tr.dimension()==2 and an assertion is triggered.

Now Construct_initial_points uses construct_intersection_object(), and the
later tries to intersect with all polyhedra, including the bounding one.
2011-03-23 14:24:26 +00:00
Laurent Rineau c6a63ce5f9 Add an error if the class template Triangle_accessor is instantiated.
Only its specialization (partial or not) should be instantiated.
2011-03-23 11:42:49 +00:00
Sébastien Loriot 0ebdccfa4e update URL and Id tag 2011-03-02 14:59:51 +00:00
Sébastien Loriot 4fc6788be8 *add contains function to mutable_queue
*use mutable_queue instead of relaxed_heap in Sliver_perturber
2011-02-15 16:03:46 +00:00
Sébastien Loriot f9ea578db9 Insert cells in container of cells (not container of facets) 2011-01-26 07:40:10 +00:00
Laurent Rineau 433bc6eb50 The previous patch for Polyline::locate was not correct. Now we really
project the point on the polyline (ie find the nearest segment).
2011-01-19 13:53:28 +00:00
Laurent Rineau c537b7cc27 In this file, fix the method Polyline::locate: the previous implementation
was using predicates on intermediate construction, and thus this was not
exact. Now the implementation only uses predicates, that are exact in the
filtered kernel.
2011-01-19 11:57:21 +00:00
Laurent Rineau 574d50aa3b Remove unused header file: Mesh_criteria_3.h is the new equivalent. 2011-01-18 09:01:20 +00:00
Laurent Rineau 6bb54466d8 Fix the CGAL_CFG_MATCHING_BUG_6 version: missing operator() for Sphere_3 and Circle_3. 2011-01-11 13:22:14 +00:00
Laurent Rineau 95cde53b17 Merge "Mesh_3 with features" in trunk, so that it is in CGAL-3.8, at last!
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Mesh_3_with_features
2011-01-10 15:43:22 +00:00
Michael Hemmer adf5b2bc4a added missing includes 2010-11-07 11:53:20 +00:00
Sébastien Loriot 930af080a9 add comment 2010-10-11 10:52:26 +00:00
Sébastien Loriot 1c7208f137 allow default constuctor of Facet_iterator 2010-10-11 10:45:12 +00:00
Sébastien Loriot 74f0d49f78 add missing const
allow default constructor for Cell_iterator.
2010-10-11 08:48:38 +00:00
Sébastien Loriot 72188d60e3 add missing but documented function 2010-10-08 11:48:25 +00:00
Sébastien Loriot d64265a379 correct indentation 2010-10-06 13:49:59 +00:00
Sébastien Loriot f60852ba5c less restrictive specialization 2010-10-06 13:40:04 +00:00
Laurent Rineau 7606b93406 Merge last unmerged revision from the branch CGAL-3.7-branch:
| ------------------------------------------------------------------------
  | r57979 | lrineau | 2010-08-11 15:24:20 +0200 (Wed, 11 Aug 2010) | 1 line
  | 
  | Global fix of all uses of qt4_generate_moc: the destination file path must be absolute.
  | ------------------------------------------------------------------------
  | r58026 | stayeb | 2010-08-12 17:40:41 +0200 (Thu, 12 Aug 2010) | 2 lines
  | 
  | Bug fix: ensure that c3t3 contains no in complex cell when starting a new refinement process. We need this because the first refinement of the surface does not update the volume, so c3t3 can't know that in complex cells have been deleted.
  | 
  | ------------------------------------------------------------------------

(That shows it is difficult to avoid to merge the release branch in the
trunk from time to time.)
2010-08-20 13:09:22 +00:00
Sylvain Pion 74dfad8dad Avoid throwing memory out of the window. 2010-08-18 14:09:32 +00:00
Stéphane Tayeb b54f2dc130 Bug fix: ensure that c3t3 contains no in complex cell when starting a new refinement process. We need this because the first refinement of the surface does not update the volume, so c3t3 can't know that in complex cells have been deleted. 2010-08-12 15:40:41 +00:00
Stéphane Tayeb caa4afd04d Merge from CGAL-3.7-branch/Mesh_3. 2010-08-05 09:41:38 +00:00
Stéphane Tayeb a5f7a4357e Fix facet encroachement test:
+ some encroached facet could be missed with the old version of the code (seems to happen in some cases where facet_size > tet_size in the meshing criteria). This leads to a possible crash with the new optimized version of the volume refinement.
2010-08-03 06:34:02 +00:00
Michael Hemmer ef787e82df added missing include <CGAL/Origin.h> 2010-07-19 14:01:28 +00:00
Stéphane Tayeb 4d8c7e19c9 Bug fix: remove a call to timer.stop() in verbose mode to avoid calling twice timer.stop() (that leads to a precondition failure). 2010-07-09 08:02:20 +00:00
Stéphane Tayeb 3759e0c596 Fix warning: remove unused parameter. 2010-07-07 07:30:34 +00:00
Stéphane Tayeb 2ec1dd5eb9 Fix warnings: fix r57304: use std::size_t instead of strange casts to unsigned int. 2010-07-02 15:37:13 +00:00
Stéphane Tayeb 82f725fa95 Fix warnings: remove unused variables. 2010-07-02 15:13:57 +00:00
Stéphane Tayeb f2973b7ff0 Fix warnings on MSVS2010. 2010-07-02 14:51:18 +00:00
Stéphane Tayeb d15a229e8a Fix typo (from commit r57297). 2010-07-02 13:01:58 +00:00
Stéphane Tayeb 751a789e9e Parameter factor is actually a squared factor (see r57295)
+ fix parameter and function namings
  + fix numerical values used in perturb_mesh_3()
  + fix numerical values used in demo
2010-07-02 12:54:56 +00:00
Stéphane Tayeb e87a55cf2e Bug fix in sliver perturber: the length of the move should depend on the parameter provided by the user. 2010-07-02 11:25:36 +00:00
Stéphane Tayeb 8b6a0cbc25 Fix warnings. 2010-07-01 08:27:03 +00:00
Stéphane Tayeb 52b0c5874c Add missing #include. 2010-06-21 15:32:30 +00:00
Stéphane Tayeb d1a0e71528 Add missing #include. 2010-06-21 15:28:31 +00:00
Stéphane Tayeb 623bd3e119 + Add visitors in Mesh_3 optimization classes (to be able to trace optimization execution in demo).
NB: there is no change in the public API or in the behaviour of the algorithms
2010-06-21 13:59:12 +00:00
Stéphane Tayeb c9e80127c9 + Add a new header file for optimization global function default parameters
+ Use this new header in Mesh_3_demo
2010-06-21 09:59:28 +00:00
Stéphane Tayeb cc820c185e Mesh_3_demo:
+ Add status report in meshing MessageBox
  + Fix a bug which could happened if user stops meshing process early: cells should be scanned to have tets in the mesh and not only facets
2010-06-18 16:16:50 +00:00
Stéphane Tayeb 8e01b3cd32 Mesh_3_demo:
+ A window now pops-up during meshing (with a 'stop' button)
2010-06-18 13:06:08 +00:00
Stéphane Tayeb 08e6269f08 Second step towards run of mesh optimization process in a separated thread:
+ A message box pops up when optimizer is launched.
  + Optimization can be stop using 'stop' button of this message box

  + todo: add (dynamic) information in message box about status of running optimizer
2010-06-17 14:02:02 +00:00
Stéphane Tayeb 038b2ec240 Optimize (efficiency) Mesh_3 refinement process:
+ do not update bad tet queue during the first surface refinement

  + rebuild restricted Delaunay uses adjacency informations during volume
  refinement (could be disabled by setting macro CGAL_MESH_3_USE_OLD_SURFACE_RESTRICTED_DELAUNAY_UPDATE)
2010-06-10 13:08:29 +00:00
Sébastien Loriot 52317dd49f add python script (replace_CGAL_NAMESPACE.py) to replace CGAL_BEGIN_NAMESPACE and CGAL_END_NAMESPACE
by namespace CGAL { and } //namespace CGAL. in all .h and .cpp files
in a directory.
Apply it to all packages in the trunk
Remove macro definition from the config.h file.
2010-06-09 07:37:13 +00:00
Laurent Rineau 09e21e48d1 Merged revisions 56414-56415,56551-56552 via svnmerge from
svn+ssh://lrineau@scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.6-branch

........
  r56414 | reichel | 2010-05-21 19:16:35 +0200 (Fri, 21 May 2010) | 2 lines
  
  Fix syntax error in generated VRML 2 file in IndexedFaceSet nodes.
........
  r56415 | reichel | 2010-05-21 19:22:44 +0200 (Fri, 21 May 2010) | 2 lines
  
  Add changelog entry for r56414.
........
  r56551 | stayeb | 2010-06-03 11:11:44 +0200 (Thu, 03 Jun 2010) | 8 lines
  
  Backport r54173 from trunk
  
    | New Revision: 54173
    | Author: stayeb
    | Date: 2010-02-15 09:55:02 +0100 (Mon, 15 Feb 2010)
    | 
    | Log message:
    | Add missing includes.
........
  r56552 | lrineau | 2010-06-03 11:57:44 +0200 (Thu, 03 Jun 2010) | 2 lines
  
  Add missing includes.
........
2010-06-03 12:22:15 +00:00
Stéphane Tayeb f8638f27cd Fix compilation on x86-64_Linux-2.6_llvm-clang-with-g++-4.4.1_F11: implement private classes before using their internal types. 2010-05-20 07:13:39 +00:00
Andreas Fabri 480ddb54f5 Remove ';' 2010-05-14 09:46:02 +00:00
Andreas Fabri 224606fadd Remove ';' after free function 2010-05-14 08:42:39 +00:00
Stéphane Tayeb 312ab0f9f0 Add 'this->' for ansi-compliance. 2010-05-10 07:23:51 +00:00
Stéphane Tayeb a5764fa49f + fix commit 55520 2010-04-19 12:31:52 +00:00
Stéphane Tayeb 2b34fe9d2d + add protected access to bounding_box of Labeled_mesh_domain_3
+ remove old commented code
2010-04-19 12:24:52 +00:00
Stéphane Tayeb 8384929e2f Add default ctor in Mesh_complex_3_in_triangulation_3::Cell_iterator class. 2010-04-12 08:27:53 +00:00
Stéphane Tayeb 98318a5264 Revert previous commit. 2010-04-12 08:21:41 +00:00
Stéphane Tayeb e93766f06d Wrong commit (reverted in r55407). 2010-04-12 08:19:08 +00:00
Stéphane Tayeb de3a8f9cb5 + attempt to remove warnings C4244, C4181, C4180 (MSVS) 2010-04-06 09:13:53 +00:00
Stéphane Tayeb 48ccaef648 Remove useless includes. 2010-04-02 11:32:06 +00:00
Stéphane Tayeb e2727ac131 Remove buggy ';' 2010-03-18 15:34:41 +00:00
Stéphane Tayeb 03cfb643e5 Sphere and cylinder radius (which are used to draw points and edges) now depends on mesh bbox. 2010-03-18 12:33:56 +00:00
Stéphane Tayeb 0a9354a9f6 Inline some non-templated functions. 2010-02-16 15:55:09 +00:00
Stéphane Tayeb bf07514d00 Add missing includes. 2010-02-15 08:55:02 +00:00
Sylvain Pion 85dc12f2a7 Remove empty lines at beginning and end of files
(apply Scripts/developer_scripts/remove_empty_lines.pl).
2010-02-01 12:55:28 +00:00
Stéphane Tayeb 2c1944c3eb Fix: ensure that no '0' is inserted in the sizing field. 2010-01-29 15:33:26 +00:00
Stéphane Tayeb 2776bd6219 Postpone vector normalization when computing perturbation moves. 2010-01-29 10:21:06 +00:00
Stéphane Tayeb 33fc21a9c8 Improve weighted robust circumcenter: do not compute same thing twice. 2010-01-29 08:47:59 +00:00
Stéphane Tayeb d822ef8474 Fix: replace Vector_3() by CGAL::NULL_VECTOR. 2010-01-29 08:47:00 +00:00
Michael Hemmer d4bc692102 use CGAL::cpp0x for tuple 2010-01-27 13:50:01 +00:00
Stéphane Tayeb 593e6cedc5 Remove useless expensive preconditions. 2010-01-18 09:22:51 +00:00
Stéphane Tayeb 1f3332bf63 Move Mesh_3 from candidate-packages to trunk (2/2) 2010-01-06 13:46:02 +00:00
Stéphane Tayeb 313a28d9a2 Move Mesh_3 from candidate-packages to trunk (1/2) 2010-01-06 13:44:50 +00:00
Stéphane Tayeb 9707b3edea Merge r53152 from 3.5 branch
r53152 | stayeb
Fix bug (typo) in polyhedral domain initialization.
2009-11-24 12:46:06 +00:00
Stéphane Tayeb 43fd508112 Merge r53086 from branches/experimental-packages/Mesh_3_with_optimizations
r53086 | stayeb
Use static filtered predicate Side_of_oriented_sphere_3 instead of Side_of_bounded_sphere_3.
2009-11-18 10:37:30 +00:00
Stéphane Tayeb 4874158276 Fix robust circumcenter construction (fix r52147). 2009-11-03 12:16:19 +00:00
Stéphane Tayeb 0a48c9eec4 Fix traits (remove use of deprecated Regular_triangulation_filtered_traits_3). 2009-10-23 09:30:49 +00:00
Stéphane Tayeb a9e9d368b4 Attempt to fix warning in File_medit.h on g++-4.3.2_F10GLIBCXXDEBUG-cmake 2009-10-06 07:25:54 +00:00
Stéphane Tayeb 321c9893d6 use is_zero() comparison in traits. Add precondition check. 2009-10-05 16:06:14 +00:00
Stéphane Tayeb dcf43908d9 * remove accelerate_distance_queries() call in Polyhedral_mesh_domain_3 ctor
* make_surface_index() of class Polyhedral_mesh_domain_3 is now public
* change default value of Min_dihedral_angle_criterion from 25 to 12
* add command-line applications for various mesh generation examples
2009-10-05 12:03:49 +00:00
Stéphane Tayeb 7057ddc2d1 Merge [r51556-r51996]
From branches/CGAL-3.5-branch/Mesh_3 To trunk/Mesh_3.

r51758 | lrineau
* Fix all \ccPkgHowToCiteCgal at once to turn 08 into 09

r51937 | stayeb
* Fix polyhedral oracle issue: switch to exact intersection computation.

r51957 | stayeb
* cleanup example folder.

r51960 | stayeb
* Remove wrong using namespace statement.
2009-09-21 14:36:31 +00:00
Stéphane Tayeb 00035e1bc9 * add customization parameters to output_to_medit. 2009-09-21 13:39:27 +00:00
Laurent Rineau 79d815d8ba Add an export function from c3t3 to vtk unstructured grid 2009-08-27 16:05:28 +00:00
Stéphane Tayeb a2682b9bc2 Merge [r51123-r51555]
From branches/CGAL-3.5-branch/Mesh_3 To trunk/Mesh_3.

r51555 | stayeb | 2009-08-27 15:10:21 +0200 (Thu, 27 Aug 2009) | 1 line
Fix missing svn properties.

r51552 | stayeb | 2009-08-27 13:45:47 +0200 (Thu, 27 Aug 2009) | 1 line
Fix test data size (gzip inr file).

r51431 | yvinec | 2009-08-24 12:08:59 +0200 (Mon, 24 Aug 2009) | 3 lines
fixed typo

r51382 | yvinec | 2009-08-20 17:59:49 +0200 (Thu, 20 Aug 2009) | 2 lines
fixed authors in reference manual

r51340 | yvinec | 2009-08-18 18:44:31 +0200 (Tue, 18 Aug 2009) | 2 lines
added package_info to Mesh_3
2009-08-27 13:46:14 +00:00
Stéphane Tayeb b1eaa6b00f Remove warning. 2009-08-24 07:55:06 +00:00
Stéphane Tayeb f8101d1b48 Merge [r50813-r51122]
From branches/CGAL-3.5-branch/Mesh_3 To trunk/Mesh_3.

r51094 | stayeb | 
* Fix "protect macros" of header files

r51075 | stayeb |
* Typo. Fix liver background color.
2009-08-07 15:35:32 +00:00
Stéphane Tayeb 7fb9b2d26c Labels are now ordered according to their natural order (instead of randomly). 2009-08-06 09:30:37 +00:00
Stéphane Tayeb 1d8a06d401 * Code cleanup
* Minor fix in Polyhedral_mesh_domain_3: internal AABB kd-tree is now built
* Minor fix in mesh_standard_facet_criteria.h: check dimension with >2 instead of ==2 & add some assertions
* Add internal(undocumented) usefull genericity:
  + add Wrapper template parameter (with default value) in Implicit_mesh_domain_3
  + add Wrapper template parameter (with default value) in Labeled_Image_mesh_domain_3
  + add two template parameters (with defaults) in Mesh_criteria_3
2009-08-05 15:40:23 +00:00
Stéphane Tayeb 9cb54ec5ca Attempt to fix warning on MSVS compiler. 2009-07-10 08:11:26 +00:00
Stéphane Tayeb 149482f1f8 * Bug Fix: c3t3 cell/facet counter update during exudation 2009-07-09 14:17:51 +00:00
Stéphane Tayeb 55a4124bb5 Fix warning on MSVS2008 compiler: fix typo introduced in r50488. 2009-07-09 09:40:16 +00:00
Stéphane Tayeb 7717a8d142 Fix warning on MSVS2008 compiler. 2009-07-09 07:34:25 +00:00
Stéphane Tayeb a32afb6637 * Bug Fix: c3t3 number of cells after refinment (Refine_cells_3.h)
* Bug Fix: c3t3 reconstruction (refine_mesh_3.h)
* Add assertions to check c3t3 number of cells & facets wrt std::distance (it was done only in test_c3t3) (test_meshing_*)
* Code factorization for dihedral angles computation (dihedral_angle_3.h, min_dihedral_angle.h)
* Cleanup
2009-07-08 09:00:25 +00:00
Stéphane Tayeb fdcbcb04d3 * Code cleanup
* Add copy ctor, operator= and swap methods (instead of defaults) to Mesh_complex_3_in_triangulation_3 
* Fix refine_mesh_3
2009-07-07 09:40:24 +00:00
Stéphane Tayeb d2e5e5b5b2 Minor fixes on exuder (CGAL_MESH_3_VERBOSE). 2009-07-06 16:10:24 +00:00
Stéphane Tayeb 92d0b207f5 Renaming. Fix sliver default bound. 2009-07-06 15:55:04 +00:00
Stéphane Tayeb 0e2c7a832d Fix robust weighted circumcenter. 2009-07-06 08:43:05 +00:00
Stéphane Tayeb 138d88f518 * Fix warnings
* Use adjacent_vertices instead of incident_vertices (which is deprecated)
2009-07-06 07:48:37 +00:00
Stéphane Tayeb e32ea59a7d * Remove old commentaries
* Renaming
* Minor fix in mesh_polyhedral_domain example
2009-07-03 15:11:04 +00:00
Stéphane Tayeb c2694f5fbe Remove old code. 2009-07-03 14:27:07 +00:00
Stéphane Tayeb 772f0ecd6b Split test_meshing into 3 files (less compilation memory consumption).\nDo not exude to verify mesher idempotence. 2009-07-03 12:32:32 +00:00
Stéphane Tayeb 13ebef3804 Add exudation step after refinment. 2009-07-03 09:26:52 +00:00
Stéphane Tayeb 1c11763f6c Fix implicit double/FT conversion warning: mesh_cell_criteria now uses FT only. 2009-06-29 08:13:01 +00:00
Stéphane Tayeb f7c6d2a847 Fix tests & compilation errors. 2009-06-28 17:39:25 +00:00
Stéphane Tayeb fe60ae5f4e Move Mesh_3 from branches/experimental-packages to trunk. 2009-06-26 15:29:26 +00:00
Laurent Rineau 3c6e2102f0 Move Mesh_3 into "experimental-packages" until accepted in CGAL.
(Request from Sylvain Pion.)
2007-03-19 07:32:03 +00:00
Sylvain Pion 3450e99ca9 OK, let's do some meshing now 2007-02-15 20:51:51 +00:00
Andreas Fabri 42b16556c3 fixed min/max problem 2006-08-17 09:37:01 +00:00
Laurent Rineau d7395a13f0 - fix i/o operators of <CGAL/Volume_mesher_cell_base_3.h>, in binary mode.
- fix <CGAL/Mesh_3/IO.h>, in case of binary mode.
2006-07-12 00:17:09 +00:00
Laurent Rineau a81ad0ebe3 - new class Volume_mesher_default_triangulation_3 2006-07-12 00:14:48 +00:00
Laurent Rineau 0d1d892da1 - new debug macros:
- CGAL_MESH_3_DIRTY_DEBUG_SPHERES,
  - and CGAL_MESHES_DEBUG_REFINEMENT_POINTS.
- new macro CGAL_MESHES_OUTPUT_STREAM, which is set to std::cout by
default.
- in Mesh_2: new header <CGAL/Mesh_2/Output_stream.h>
2006-07-10 09:25:35 +00:00
Laurent Rineau e99d491534 remove Point_traits.h from Mesh_3 2006-07-05 07:11:47 +00:00
Laurent Rineau 1e456740f2 another fix of Slivers_exuder 2006-06-28 17:09:37 +00:00
Laurent Rineau 9a1bd6b513 Fix Slivers_exuder so that it can pump vertices of surfaces too
(Note: I may have broken things. I'll check tomorrow.)
2006-06-27 17:01:46 +00:00
Laurent Rineau 5c6b881a1d ** In Surface_mesher:
- 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)
2006-06-13 13:08:19 +00:00
Laurent Rineau 150bd10d38 Remove old copy of Data_structure_using_octree files. 2006-06-07 14:16:39 +00:00
Laurent Rineau d2eaf96b9b Remove one assertion that bothers me. 2006-06-07 13:40:21 +00:00
Laurent Rineau 15fccff9f2 Redo revision 31466. :-) 2006-06-07 13:22:41 +00:00
Laurent Rineau b0e184015d Revert revision 31466, for Sliver_exuder.h 2006-06-07 13:10:02 +00:00
Laurent Rineau 171707f114 - sliver exuder fixed,
- Combining_oracle fixed too.
2006-06-07 12:55:01 +00:00
Laurent Rineau b2a71386fa Copy Mesh_2, Mesh_3 and Surface_mesher, from the branch
"cannot_wait_for_CGAL-3.2" to the trunk.

My idea: the branch is the real working version, and I want it to be joined
back to the trunk:

          __________________________         cannot_wait_for_CGAL-3.2 branch
         /                          \
        /                            \ 
-------------------------------------------- trunk
        S                             M

The modification of the trunk between the splitting point S and the merging
point M has already been merged into "cannot_wait_for_CGAL-3.2".

The trunk versions of these three packages have been removed already.
2006-06-06 13:38:16 +00:00
Laurent Rineau ebb3f7c912 Remove trunk of Mesh_2, Mesh_3 and Surface_mesher.
Do not worry: I will "svn cp" the branch "cannot_wait_for_CGAL-3.2" into the
trunk, and the trunk will inherit from the logs of the branch.

My idea: the branch is the real working version, and I want it to be joined
back to the trunk:

          __________________________         cannot_wait_for_CGAL-3.2 branch
         /                          \
        /                            \ 
-------------------------------------------- trunk
        S                             M

The modification of the trunk between the splitting point S and the merging
point M has already been merged into "cannot_wait_for_CGAL-3.2".
2006-06-06 13:36:21 +00:00
Laurent Saboret 87d65f75e3 Fixed svn properties of ASCII files (as defined by Maintenance/svn_client/config) 2006-04-18 12:42:52 +00:00
Laurent Rineau c906966566 - if the surface_index() of a point is 0, set it to 1, in
include/CGAL/Mesh_3/Implicit_surface_mesher_visitor.h
  This visitor is passed to the Surface_mesher, when it is used from
  Mesh_3. This patch makes surface_index() of points on the surface to
  be 1, if is was 0.
- replay-skull now run correctly too.
- sliver exuder still crash. :-(
2006-04-06 16:44:08 +00:00
Laurent Rineau 629bb0c0ff - Too much changes, after Surface_mesher API changes.
- example/Mesh_3/implicit_surfaces_mesher_3.C compiles
- applications/ too.
- This package is still under reconstruction. Do no expect any from it!
2006-04-05 21:23:40 +00:00
Laurent Rineau bf18b7b7ce Move include/CGAL/Mesh_3/Triangulation_mesher_level_traits_3.h to Mesh_2. 2006-02-27 17:19:11 +00:00
Laurent Saboret 35cfa18a2a Change CVS keywords to SVN style 2006-02-17 17:01:13 +00:00
Laurent Saboret db6a8f948c Change CVS keywords to SVN style 2006-02-16 14:30:13 +00:00
Laurent Saboret 1aad55d4cb Change CVS keywords to SVN style 2006-02-14 10:08:15 +00:00
Laurent Saboret 8b43d295ce Move packages to trunk root 2006-02-14 08:58:16 +00:00