Mael Rouxel-Labbé
fb080e2685
Misc tiny fixes / cleaning
2023-03-06 20:45:31 +01:00
Mael Rouxel-Labbé
7b3ef62746
v2 of simply-connected enforcement + extrude for wsls of pwh
2023-03-06 20:44:14 +01:00
Mael Rouxel-Labbé
0404a616a2
Replace boost::intrusive_ptr and its machinery by a simple shared_ptr
2023-03-06 13:24:07 +01:00
Mael Rouxel-Labbé
f635c61475
Fix trisegment print
2023-03-05 21:42:29 +01:00
Mael Rouxel-Labbé
cc26b71886
Fix not setting up slopes on artificial bisectors
2023-03-04 20:49:07 +01:00
Mael Rouxel-Labbé
99671f7867
Use kernel functor
2023-03-04 20:47:36 +01:00
Mael Rouxel-Labbé
8125fb62e1
Avoid needless copies
2023-03-04 20:47:16 +01:00
Mael Rouxel-Labbé
687e8d0911
Discourage partial weighted skeletons of polygons with holes
2023-03-03 23:35:16 +01:00
Mael Rouxel-Labbé
3003518ae9
Fix missing header includes
2023-03-03 23:22:53 +01:00
Mael Rouxel-Labbé
ac361834db
Restore skeleton reset on failure
...
Revert 1f98344908
2023-03-03 23:21:02 +01:00
Mael Rouxel-Labbé
9779807a40
Clarify some comments describing the algorithm
2023-03-03 16:52:56 +01:00
Mael Rouxel-Labbé
da9674a63e
Fix missing set_halfedge() on right side of split
2023-03-03 16:51:38 +01:00
Mael Rouxel-Labbé
302dfd8846
Add a postprocessing step to ensure that all skeleton faces are simply connected
2023-03-03 15:41:54 +01:00
Mael Rouxel-Labbé
7b87eea95a
Handle reconnection of fictuous fronts
...
Can happen for weighted polygon with holes
2023-03-03 15:40:13 +01:00
Mael Rouxel-Labbé
6893d831e3
Remove dangling bisectors ASAP to keep a valid (and printable) SLS HDS
...
Safe because it's a list-based HDS, and we're keeping handles left and
right already anyway.
2023-03-03 02:13:48 +01:00
Mael Rouxel-Labbé
3c9c0dae52
Remove undocumented functors from traits
2023-03-03 02:10:47 +01:00
Mael Rouxel-Labbé
fd770a9763
Fix debug code + debug code improvements
2023-03-03 02:10:47 +01:00
Mael Rouxel-Labbé
63b7f9cb33
Replace archaic traits usage with _object() (which the concept requires)
2023-03-03 02:10:43 +01:00
Mael Rouxel-Labbé
a00b48a3c6
Harmonize regardless of the weight (since unweighted line coeffs are stored)
2023-03-01 13:46:48 +01:00
Mael Rouxel-Labbé
6452ad0e41
Do not take SLS weights (speed ranges) by reference
2023-02-28 16:46:30 +01:00
Mael Rouxel-Labbé
d3398ce00d
Allow downward extrusion
2023-02-28 16:46:30 +01:00
Mael Rouxel-Labbé
baebae65b5
Dump outputs in taper testsuite
2023-02-28 16:46:23 +01:00
Mael Rouxel-Labbé
90877e18b5
Add SLS/extrude_skeleton.h
2023-02-24 18:50:53 +01:00
Mael Rouxel-Labbé
fdf1823336
Fix offset point coordinates
2023-02-23 14:48:45 +01:00
Mael Rouxel-Labbé
39ec19b940
Clarify comment
2023-02-23 11:23:23 +01:00
Mael Rouxel-Labbé
d7eaa7782e
Give more (visual) breathing room by increasing the weights of the outer frame
...
This is purely cosmetic, it makes it so the bisectors of the input polygon
will end closer to the outer frame (a larger weight means one's face
is smaller).
2023-02-23 11:15:09 +01:00
Mael Rouxel-Labbé
b3523fd879
Misc debug improvements
2023-02-23 11:14:48 +01:00
Mael Rouxel-Labbé
f7533877e2
Fix offset point construction not taking weights into account in collinear cases
2023-02-23 11:13:28 +01:00
Mael Rouxel-Labbé
e9e6c35eea
Temporarily disable split event filtering (currently broken for weighted SLS)
2023-02-23 10:37:25 +01:00
Mael Rouxel-Labbé
4952eb2ac7
Remove intrinsic assertions
...
Never used + has false negatives
2023-02-23 10:35:29 +01:00
Mael Rouxel-Labbé
8d5484919a
Fix compilation
2023-02-22 14:47:50 +01:00
Mael Rouxel-Labbé
8782d12930
Implement split event filtering for weighted SLS
2023-02-22 14:30:22 +01:00
Mael Rouxel-Labbé
5ceb8227df
Fix missing namespace
2023-02-22 14:30:02 +01:00
Mael Rouxel-Labbé
732559e80b
Cache unweighted coefficients instead of weighted coefficients
2023-02-22 14:29:39 +01:00
Mael Rouxel-Labbé
2b052e00ea
Use inexact_norm() rather than inexact_sqrt(aLV.aLV)
2023-02-22 11:03:03 +01:00
Mael Rouxel-Labbé
a1845691d5
Use std::hypot rather than explicitely computing sqrt(x²+y²)
2023-02-22 11:01:36 +01:00
Mael Rouxel-Labbé
23a9ab5a49
Improve debug messages
2023-02-22 10:39:54 +01:00
Mael Rouxel-Labbé
1ffde0eeaf
Simplify is_equal + is_smaller into a single compare() call
2023-02-20 16:18:26 +01:00
Mael Rouxel-Labbé
d06f58fc70
Doc improvements
2023-02-20 16:18:05 +01:00
Mael Rouxel-Labbé
a93a083df6
Avoid needless constructions if the midpoint is an input point
2023-02-20 16:16:51 +01:00
Mael Rouxel-Labbé
606bef047b
Do not compute a second SideOfBisector if the first one failed
2023-02-20 16:16:02 +01:00
Mael Rouxel-Labbé
5e56614d03
Fix subtle inconsistency between line displacement representations
...
Rarely resulted in broken skeletons on very regular inputs
See comments in the code.
2023-02-20 15:49:36 +01:00
Mael Rouxel-Labbé
f4c1f204ad
Re-introduce compute_noralized_line_coeffs (useful when weights are not used)
2023-02-20 14:33:58 +01:00
Mael Rouxel-Labbé
d031add9d8
Misc debug improvements
2023-02-20 12:23:27 +01:00
Mael Rouxel-Labbé
8cfbefdcc1
Do not needlessly compare norms, weights are enough
2023-02-16 15:05:47 +01:00
Mael Rouxel-Labbé
4dfd622a64
typename K::Obj rather than Obj<K> since we don't control the traits in theory
2023-02-16 15:05:10 +01:00
Mael Rouxel-Labbé
15c674d5c9
Move helper classes to SLS_aux.h
2023-02-14 14:59:10 +01:00
Mael Rouxel-Labbé
9c5842625b
Add missing defaults in collinear enum switch
2023-02-14 14:42:26 +01:00
Mael Rouxel-Labbé
8dc23b8051
Fix CI compilation errors
2023-02-14 13:30:00 +01:00
Mael Rouxel-Labbé
1f98344908
Temporarily do not abort if the returned skeleton is invalid
...
For polygons with holes
2023-02-14 13:03:38 +01:00
Mael Rouxel-Labbé
68067c039f
Merge remote-tracking branch 'cgal/master' into SLS-Weighted_skeleton-GF
2023-02-14 12:26:50 +01:00
Mael Rouxel-Labbé
38312c1e63
Use 'FT' as template parameter rather than 'Traits'
2023-02-14 10:04:03 +01:00
Mael Rouxel-Labbé
bc9e01a08d
Misc minor fixes
2023-02-14 00:19:22 +01:00
Mael Rouxel-Labbé
6a44bf6244
Simplify outer frame offset removal: the outerframe is always at [0]
2023-02-14 00:18:55 +01:00
Mael Rouxel-Labbé
13cdc1004e
Temp. disable an optimization and an assertion (not yet compatible w/ WSLS)
2023-02-13 23:46:17 +01:00
Mael Rouxel-Labbé
9d43ea40df
Fix weight order in exterior skeletons
2023-02-13 23:44:09 +01:00
Mael Rouxel-Labbé
0582f5fd42
Misc minor debug fixes
2023-02-13 23:43:37 +01:00
Mael Rouxel-Labbé
2d0ba983ba
Align IO precision to 17
2023-02-13 17:42:09 +01:00
Mael Rouxel-Labbé
62be888c48
Fix precondition
2023-02-13 17:29:20 +01:00
Mael Rouxel-Labbé
c6f23d0bc1
Do not generate different weights for adjacent collinear input segments
2023-02-13 17:28:30 +01:00
Mael Rouxel-Labbé
15cafdf72c
Clean debug messages
2023-02-13 16:10:21 +01:00
Mael Rouxel-Labbé
62a2c9745a
Initialize weights to 1 to make it seamless for unweighted SLS
2023-02-13 16:07:32 +01:00
Mael Rouxel-Labbé
3c7339933b
Minor fixes for weighted trisegments
2023-02-13 16:06:37 +01:00
Mael Rouxel-Labbé
80311b730c
Enforce adjacent collinear segments not having different weights
2023-02-13 16:05:10 +01:00
Mael Rouxel-Labbé
b51b4d8713
Fix SLS iterators to actually handle all possible models
2023-02-13 16:04:33 +01:00
Mael Rouxel-Labbé
f6579ecb2c
Misc minor cleaning
2023-02-11 17:34:02 +01:00
Mael Rouxel-Labbé
56fa7b9099
Fix time and intersection computations for collinear segments with != weights
2023-02-10 16:59:08 +01:00
Mael Rouxel-Labbé
4bdd91da80
Specify template to avoid ambiguous call
2023-02-10 16:58:33 +01:00
Mael Rouxel-Labbé
bc7dce7d85
Fix missing semicolon
2023-02-10 16:55:44 +01:00
Mael Rouxel-Labbé
62c3212a6c
Do not call visitor on duplicate offset points
2023-02-10 16:55:33 +01:00
Mael Rouxel-Labbé
dea1a65631
Add weighted SLS offset functions
2023-02-09 23:30:40 +01:00
Mael Rouxel-Labbé
7449c7419a
Do not needless lose precision in outer frame computations
2023-02-09 23:28:52 +01:00
Mael Rouxel-Labbé
c25c407b81
Remove unused trisegment member (EventTriedge was replaced by a Trisegment)
2023-02-09 23:27:56 +01:00
Mael Rouxel-Labbé
090084af98
Fix warning
2023-02-09 23:27:42 +01:00
Mael Rouxel-Labbé
182d693e49
Avoid point copy
2023-02-09 23:27:31 +01:00
Mael Rouxel-Labbé
7390209a54
Enhance visitor API
2023-02-09 23:27:14 +01:00
Mael Rouxel-Labbé
9d9a51731a
Fix typo
2023-02-09 23:27:01 +01:00
Mael Rouxel-Labbé
cb40b63bb3
weighted SLS: weights in trisegment, fix degenerate cases, weighted outer frame
2023-02-09 23:25:52 +01:00
Mael Rouxel-Labbé
ad4b82383d
Debug code improvements
2023-02-09 23:22:21 +01:00
Mael Rouxel-Labbé
f58cd7fb9d
Make Compare_offset_against_event_time() public
2023-02-09 23:16:35 +01:00
Mael Rouxel-Labbé
5b89b81f8b
Deactivate the "is_simple_2" precondition for strictly simple poly orientation
...
Recent changes to set_use_assertions have made it so that you need to also
define a macro to be able to use it, which makes it very unpractical.
2023-02-09 23:12:40 +01:00
Laurent Rineau
5f8930db8c
Merge branch '5.5.x-branch'
...
# Conflicts:
# Convex_hull_2/test/Convex_hull_2/ch_test_CH.cpp
# Convex_hull_2/test/Convex_hull_2/ch_test_SC.cpp
# Convex_hull_2/test/Convex_hull_2/ch_test_SH.cpp
# Convex_hull_2/test/Convex_hull_2/ch_test_SS.cpp
# Straight_skeleton_2/include/CGAL/constructions/Straight_skeleton_cons_ftC2.h
# Straight_skeleton_2/include/CGAL/predicates/Straight_skeleton_pred_ftC2.h
2023-01-27 21:16:14 +01:00
Laurent Rineau
c5176ef327
Merge pull request #7166 from MaelRL/SLS-Memorize_trisegments-GF
...
Fix seed computation in SLS offset computation
2023-01-27 20:52:10 +01:00
Mael Rouxel-Labbé
fd627e141c
Misc minor fixes
2023-01-27 18:22:28 +01:00
Mael Rouxel-Labbé
114db88652
Add weighted (interior) straight skeletons
2023-01-27 18:17:04 +01:00
Mael Rouxel-Labbé
46ba764a8e
Reorganise skeleton_HDS::halfedge model accessors
2023-01-27 18:10:01 +01:00
Mael Rouxel-Labbé
a72c871bf9
Distinguish between Protector usage and split filtering
2023-01-27 18:08:27 +01:00
Mael Rouxel-Labbé
d3e8fadb33
Cache's get / is_cached are const
2023-01-27 18:06:55 +01:00
Mael Rouxel-Labbé
f767612b24
Merge branch 'SLS-Memorize_trisegments-GF' into SLS-Weighted_skeleton-GF
2023-01-26 10:53:11 +01:00
Mael Rouxel-Labbé
aa1cb4b664
Add missing include
2023-01-05 12:39:58 +01:00
Mael Rouxel-Labbé
6b5954d2cf
Remove another unused function which isn't part of the concept
2023-01-04 22:11:13 +01:00
Mael Rouxel-Labbé
b2d562e582
Store trisegments within SLS vertices
...
This violates the concept, but it replaces storage of triedges, which
was also violating the concept...
2023-01-04 20:41:03 +01:00
Mael Rouxel-Labbé
2410d8e304
Reduce the (large) delta between SLS HDS concepts and models...
2023-01-04 16:36:34 +01:00
Mael Rouxel-Labbé
c38ff2b4e2
Move Segment_2_with_ID to aux
2023-01-04 16:26:31 +01:00
Mael Rouxel-Labbé
b1b7cacf42
Minor debug improvements
2023-01-04 16:26:09 +01:00
Mael Rouxel-Labbé
e2f1940747
Fix spelling
2023-01-04 16:17:15 +01:00
Mael
0ff7882997
Merge branch 'master' into feature/bug_documentation_spell_20221113
2022-12-06 22:21:06 +01:00
Mael Rouxel-Labbé
b5c21e1f5d
Http -> https + update some dead links
2022-11-23 18:54:37 +01:00
albert-github
c32b1f4127
spelling corrections
...
Some spelling corrections (Directories starting with `S` rest - `W`),
2022-11-16 13:22:39 +01:00
albert-github
45478184de
spelling corrections
...
Some spelling corrections (Directories starting with `E`-` L`),
some backward work
some forward work
2022-11-15 13:39:40 +01:00