Mael Rouxel-Labbé
c6a91e3281
Misc minor changes
2017-12-01 18:33:05 +01:00
Mael Rouxel-Labbé
a843cf0530
Moved function bodies out of class
2017-12-01 18:30:24 +01:00
Mael Rouxel-Labbé
daec72c617
Fixed periodic medit output function for occurence values less than 8
2017-12-01 09:02:01 +01:00
Mael Rouxel-Labbé
8a9750709b
Moved the timestamp hash function to STL_extension (and rewrote it)
2017-12-01 08:44:12 +01:00
Mael Rouxel-Labbé
412bda1c44
Fixed licence headers, include guards, authors, etc.
2017-11-30 16:00:23 +01:00
Mael Rouxel-Labbé
7031e940aa
Fixed projection of dummies using the wrong index
2017-11-30 15:37:08 +01:00
Mael Rouxel-Labbé
69d13d0a7b
Changed name of function
2017-11-30 15:36:46 +01:00
Mael Rouxel-Labbé
11f35f57ed
Reworked how the periodic protection class is selected
...
Rather than overwriting Mesh_3's, a virtual function is used in the initializer.
This allows to use Mesh_3 along Periodic_3_mesh_3.
2017-11-30 15:15:07 +01:00
Mael Rouxel-Labbé
c83469fa0e
The remove() function of P3M3 now does not do anything if the cover would change
2017-11-30 14:29:11 +01:00
Mael Rouxel-Labbé
8139500daf
Added a check on robust_canonicalize_point()
2017-11-30 14:28:51 +01:00
Mael Rouxel-Labbé
1078e00e7f
Uniformized between Mesh_3::internal and internal::Mesh_3
2017-11-30 14:26:12 +01:00
Mael Rouxel-Labbé
9b8c5cd824
Another batch of v->point() --> tr.point(v)
2017-11-29 17:48:55 +01:00
Mael Rouxel-Labbé
13a49227c1
Improved documentation
2017-11-29 16:32:58 +01:00
Mael Rouxel-Labbé
45e93cacfd
Misc minor changes
2017-11-29 16:32:05 +01:00
Mael Rouxel-Labbé
78133c5100
Replaced usages of '.weight()' in Mesh_3 and P3M3
...
Either through the comparison predicate or the weight constructor.
2017-11-29 16:30:34 +01:00
Mael Rouxel-Labbé
cae1889fe2
Enabled the visited vertex boolean in P3M3 (safe 1-cover)
2017-11-29 12:32:44 +01:00
Mael Rouxel-Labbé
5b93c880de
Added missing licence
2017-11-29 12:32:31 +01:00
Mael Rouxel-Labbé
67fde8ea05
Misc minor changes
2017-11-28 15:25:52 +01:00
Mael Rouxel-Labbé
557176e23e
Reworked the way periodic protection is done
...
A map allows to keep multiple (different) positions for each vertex. Determiningwhich position is chosen for a given vertex is done using curve_index,
orientation, and other available information.
2017-11-28 14:33:23 +01:00
Mael Rouxel-Labbé
e8a905e56f
Aesthetical changes
2017-11-25 21:01:05 +01:00
Mael Rouxel-Labbé
c78d8651ac
Introduced mechanism to handle problematic dummy vertices during protection
2017-11-24 13:31:31 +01:00
Mael Rouxel-Labbé
ce0c2afd40
Readability changes
...
Increasing reader sanity, one commit at a time
2017-11-24 11:19:21 +01:00
Mael Rouxel-Labbé
461a8a0ff7
Added is_vertex to the periodic mesh triangulation
2017-11-22 14:53:45 +01:00
Mael Rouxel-Labbé
6b674f6efd
Renamed Periodic_3_regular_triangulation_3_mesher_3
...
for consistency with Mesh_3's version
2017-11-22 14:24:34 +01:00
Mael Rouxel-Labbé
357f9d6257
Reworked initialization of a periodic triangulation-based c3t3
2017-11-22 10:06:39 +01:00
Mael Rouxel-Labbé
dcfbd3ea42
Get rid of Mesh_domain_holder_with_corners
2017-11-22 10:03:47 +01:00
Mael Rouxel-Labbé
aadddba985
Fixed a couple of "an h..." that should have been "a h..."
2017-11-21 17:15:25 +01:00
Mael Rouxel-Labbé
59017a5e9e
Minor code cleaning
2017-11-21 16:14:16 +01:00
Mael Rouxel-Labbé
c1a4fe3d65
Added dual_segment_exact
2017-11-21 16:12:40 +01:00
Mael Rouxel-Labbé
07d6ce363d
Cleaned some obsolete todos
2017-11-20 17:35:24 +01:00
Mael Rouxel-Labbé
5bce5be47d
Included P3M3's protection file in P3M3/config.h
...
To ensure that the file is included before Mesh_3's
2017-11-20 17:03:25 +01:00
Mael Rouxel-Labbé
6bf075e682
Cleaned "get_vertex" usages from periodic protection code
...
Since we insert dummy before protecting, we're in a 1-sheet triangulation
and we don't need to get canonical vertices: every vertex is already canonical
2017-11-20 16:58:49 +01:00
Mael Rouxel-Labbé
837d685ae0
Forked Protect_edges_sizing_field.h away from Mesh_3
...
Can't figure out how to do it directly within the original file without making
things slower for Mesh_3... Fork!
2017-11-20 15:54:22 +01:00
Mael Rouxel-Labbé
d859221440
Added wrappers to Mesh_3's optimizers
2017-11-20 15:19:01 +01:00
Mael Rouxel-Labbé
9b1ebd71b3
Added a precondition
2017-11-20 15:13:11 +01:00
Mael Rouxel-Labbé
ecf9e64f56
Misc minor changes
2017-11-20 15:12:43 +01:00
Mael Rouxel-Labbé
f3931d5877
Misc minor changes
2017-11-17 18:42:34 +01:00
Mael Rouxel-Labbé
adfb2f6e74
Fixed nearest_power_vertex functions (some issue with offsets)
2017-11-17 18:34:58 +01:00
Mael Rouxel-Labbé
4f09343be1
Fixed not canonalizing some points in P3_mesh_triangulation_3
2017-11-17 18:33:03 +01:00
Mael Rouxel-Labbé
302b3c24fe
Introduced signatures for periodic triangulations
2017-11-17 18:28:34 +01:00
Mael Rouxel-Labbé
b32a7f8b00
Fixed erroneous precondition
2017-11-11 21:47:01 +01:00
Mael Rouxel-Labbé
c33fa46593
Misc minor changes (mostly v->point() to tr.point(v))
2017-11-11 21:46:14 +01:00
Mael Rouxel-Labbé
e1d09b140a
Added 'nearest_power_vertex_with_sq_distance'
...
Which returns, in addition to the power vertex, the squared distance
to this nearest power vertex
Done to avoid a call to tr.min_squared_distance() which is costly for P3M3
2017-11-10 17:49:07 +01:00
Mael Rouxel-Labbé
7298bf0882
Replaced double by FT where appropriate in Slivers_exuder.h
2017-11-10 11:31:45 +01:00
Mael Rouxel-Labbé
943327fe86
Cleaned some M3/P3M3 code
2017-11-06 15:36:30 +01:00
Mael Rouxel-Labbé
0ef6701e6c
Added the manifold criterium to P3M3
2017-11-06 14:59:41 +01:00
Mael Rouxel-Labbé
78b32eb91b
Fixed trailing whitespace (no real changes)
2017-11-06 13:19:14 +01:00
Mael Rouxel-Labbé
e968ab9275
Removed P3M3's Mesh_domain_holder_etc.
...
Simply use Mesh_3's mesh_domain_with_polylines_features.
2017-11-02 16:58:13 +01:00
Mael Rouxel-Labbé
5996f5959d
Replaced periodic code with a call to Mesh_3
2017-11-02 11:24:45 +01:00
Mael Rouxel-Labbé
3b0425a48d
Misc minor changes
...
Mostly code cleaning
2017-10-31 15:49:15 +01:00
Mael Rouxel-Labbé
ac0a27cdfd
Made Mesh_3's optimizers work with periodic triangulations
2017-10-31 15:47:23 +01:00
Mael Rouxel-Labbé
7009f228a5
Changed some documentation and comments
2017-10-30 14:50:51 +01:00
Mael Rouxel-Labbé
e2b33c4948
Progress on periodic optimizers
...
- Replaced a lot of v->point() with tr.point(v) & similar
- Fixed taking references to temporary:
we can't do "F(construct_point_3_object()(tr.point(c, i)))" for periodic
triangulations because tr.point(c,i) is _not_ a reference
- Added some sanity checks to debug Lloyd optimization
- Fixed some indentation
2017-10-29 21:31:59 +01:00
Mael Rouxel-Labbé
1f4475d471
Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov
2017-10-27 16:26:27 +02:00
Mael Rouxel-Labbé
bae6f15fa5
WIP commit
2017-10-27 15:34:33 +02:00
Mael Rouxel-Labbé
60fbe1975c
Various readability changes (no real changes)
2017-10-26 13:01:39 +02:00
Mael Rouxel-Labbé
c4fddff235
Minor wording improvement
2017-10-22 23:32:16 +02:00
Mael Rouxel-Labbé
75fceea173
Removed useless commented assertion
2017-10-22 23:32:00 +02:00
Mael Rouxel-Labbé
d9ef84a33a
Added triangle() to P3_mesh_triangulation_3
2017-10-22 23:31:28 +02:00
Mael Rouxel-Labbé
9767912335
Fixed some functions from P3_mesh_triangulation...
...
... that did not properly canonicalize points
2017-10-22 23:30:26 +02:00
Mael Rouxel-Labbé
41f5c47394
Misc minor changes
...
Indentation, comments, whitespace, etc.
2017-10-22 23:28:37 +02:00
Mael Rouxel-Labbé
94bb59b722
Various doc/comments improvements
2017-10-17 12:45:30 +02:00
Mael Rouxel-Labbé
d8d4709012
Removed some std::cout
2017-08-18 10:58:25 +02:00
Mael Rouxel-Labbé
c6af3e8755
Minor doc changes
2017-08-07 11:32:58 +02:00
Mael Rouxel-Labbé
b330f05354
Misc minor changes
2017-07-27 17:01:28 +02:00
Mael Rouxel-Labbé
b938fd1c58
Fixed license
2017-07-27 16:40:46 +02:00
Mael Rouxel-Labbé
1c618f7e22
Fixed compilation issue
2017-07-27 13:57:39 +02:00
Mael Rouxel-Labbé
e1e5261603
Misc minor changes
2017-07-27 13:04:21 +02:00
Mael Rouxel-Labbé
9749c71a1c
Replaced calls to assert() with CGAL assertions
2017-07-27 11:55:37 +02:00
Mael Rouxel-Labbé
a8336f39ec
Minor misc changes
2017-06-22 15:52:43 +02:00
Mael Rouxel-Labbé
956b1f6fc0
Introduced robust_canonicalize_point()
...
This is a way to handle points that are epsilon-close to the boundary yet still
outside. This might create numerical issue such that the point + any offset
does not fall into the domain (due to -epsilon + 1 ~= 1)
The numerical issue is detected when the offset is computed and we snap the
point to the domain.
This is done for P3M3 only (not P3T3: people should give proper input points!)
2017-06-22 15:48:01 +02:00
Mael Rouxel-Labbé
fe14379106
P3M3 now use the new robust traits
2017-06-22 15:36:02 +02:00
Mael Rouxel-Labbé
7ba903423a
Silenced warning
2017-06-22 15:07:48 +02:00
Mael Rouxel-Labbé
6fcb046c4f
Fixed unused variable warning
2017-06-22 15:02:36 +02:00
Mael Rouxel-Labbé
bf3df5b397
Cleaned Periodic_3_mesh_triangulation_3 includes
2017-06-20 11:07:46 +02:00
Mael Rouxel-Labbé
4c636bbd1c
Remove all criteria-related classes from P3M3
...
They are now obsolete: we can simply use Mesh_3's
2017-06-19 16:24:23 +02:00
Mael Rouxel-Labbé
65ef142bff
P3M3 now uses Mesh_3 criteria
2017-06-19 16:00:38 +02:00
Mael Rouxel-Labbé
1b2c929af4
Removed P3M3 cell base file that was copied from T3
2017-06-16 15:59:51 +02:00
Mael Rouxel-Labbé
dca4a3ff32
Hid main encroachment code in P3_mesh_triangulation_3
...
End goal is to hide periodic details in P3MT3 so that the criteria of Mesh_3
can be fully used without change in P3M3
2017-06-13 17:53:31 +02:00
Mael Rouxel-Labbé
513af55151
Fixed calling c->circumcenter() with a periodic cell
...
can't do that since it will take point coordinates through c->vertex(i)->point()
which will give the wrong cell
2017-06-02 16:59:17 +02:00
Mael Rouxel-Labbé
9d0e9336f5
P3M3 must use a regular cell base that caches its weighted circumcenter cache
2017-06-02 16:12:54 +02:00
Mael Rouxel-Labbé
b56f24ddee
Added some empty parallel functions to P3_mesh_triangulation_3
...
(necessary for compilation)
2017-06-02 16:11:37 +02:00
Mael Rouxel-Labbé
9d37080d74
Cleaned off some useless "this->"
2017-06-02 16:11:22 +02:00
Mael Rouxel-Labbé
223c0fc869
Improved a comment
2017-06-02 16:10:51 +02:00
Mael Rouxel-Labbé
05debcfeac
Fixed some Bare_point / Weighted_point issues
...
and added a function canonicalize_weighted_point() to P3_mesh_triangulation_3
2017-06-02 16:08:11 +02:00
Mael Rouxel-Labbé
316e2e1b50
Added dual_segment and dual_ray to P3_mesh_triangulation_3
...
-- Removed P3M3 shenanigans from Refine_facets_3.h
-- exact_dual_segment is todo
2017-06-02 16:04:38 +02:00
Mael Rouxel-Labbé
46dad2abb6
Cosmetic changes
2017-06-02 16:02:05 +02:00
Mael Rouxel-Labbé
3870e20958
Adapted all cell / facets criteria to work with periodic meshes
...
and without implicit conversions.
These files are so close to Mesh_3's that it only requires hiding a bit of
periodic shenanigans behind some generic functions of which Mesh_3 would have
a trivial version to be able to remove those files and use Mesh_3.
2017-06-02 15:54:59 +02:00
Mael Rouxel-Labbé
c11d91b800
Improved periodic mesh medit output
...
There's no need to create a point per face, per cell, per periodic instance,
etc.
Much lighter meshes now!
2017-06-02 15:49:36 +02:00
Mael Rouxel-Labbé
3fa3a6820e
Removed CGAL_3.7 remnant files
2017-06-02 08:38:46 +02:00
Mael Rouxel-Labbé
52d5272330
Fixed canonicalize_point()
...
This function needs to work for bare and weighted points
2017-05-30 10:53:16 +02:00
Mael Rouxel-Labbé
8eb362abf0
Added a comment
2017-05-30 10:43:14 +02:00
Mael Rouxel-Labbé
50b86a94b6
Fixed "using::" of P3MT3 not including the necessary construct_* functions
2017-05-29 15:59:34 +02:00
Mael Rouxel-Labbé
6d3a8be7fa
Regular triangulations must use regular vertex/cell bases
2017-05-29 15:59:13 +02:00
Mael Rouxel-Labbé
9d256e500d
Removed obsolete use of Regular_triangulation_euclidean_traits_3
2017-05-29 15:58:27 +02:00
Mael Rouxel-Labbé
21ccf77504
Fixed Weighted_point / Bare_point issue in corner setting
2017-05-29 15:57:29 +02:00
Mael Rouxel-Labbé
74de94c602
Fixed some Weighted_point / Bare_point issues
...
and updated some geometrical function calls to use the new names
2017-05-29 15:56:44 +02:00
Mael Rouxel-Labbé
be0f81bcf4
Removed useless typedefs
2017-05-29 15:55:33 +02:00
Mael Rouxel-Labbé
8a00196484
Added P3M3 reference manual
2017-04-04 14:56:48 +02:00
Mael Rouxel-Labbé
bf097fd572
Added template arguments for Vb and Cb for the periodic mesh triangulation
2017-04-04 14:41:54 +02:00