Dion Moult
55374d78ed
svgfill: use std::optional instead of transitive boost::optional
...
Graph2D::query and arrange_polygons relied on boost::optional reaching
them transitively through CGAL/boost headers. That transitive include no
longer happens on newer toolchains (GCC 14 / newer libstdc++), so the
build breaks with "boost::optional does not name a template type". The
rest of the svgfill module already uses std::optional; migrate these two
holdouts to match and include <optional> explicitly rather than freeload
on a fragile transitive include.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-25 23:27:11 +10:00
Thomas Krijnen
561a23cfbc
After-merge clean-ups
2026-07-09 22:01:21 +02:00
Thomas Krijnen
7fc2d9a998
Merge remote-tracking branch 'origin/v0.8.0' into ifcviewer-wgpu
2026-07-09 13:21:39 +02:00
Thomas Krijnen
ca99ef3af7
More changes to pass around logger to parse-related calls
2026-06-14 14:49:14 +02:00
Thomas Krijnen
295c7d801c
arrange polygons: limit width ratio when merging boxes
2026-06-11 18:29:12 +02:00
Thomas Krijnen
13bb8fbb98
arrange polies: don't allow snapped point paths to cross non-containing other rect axes
2026-06-11 18:29:12 +02:00
Thomas Krijnen
55d7c24dc8
Fix temporary solution storage in arrange polygons
2026-06-11 18:29:12 +02:00
Thomas Krijnen
3a14786a5b
Calculate box-width as orthogonal distance; aabb code for segment intersection (disabled)
2026-06-11 18:29:12 +02:00
Thomas Krijnen
10f93545da
Arrange polies: reorder segment to exterior insertion based on length
2026-06-11 18:29:12 +02:00
Thomas Krijnen
6fffe33da1
arrange polies, fuse boxes only when obb also overlaps
2026-06-11 18:29:11 +02:00
Thomas Krijnen
57d1feaba8
arrange polies: try connect to closest point when extension and projection both do not work
2026-06-11 18:29:11 +02:00
Thomas Krijnen
98a897dd34
arrange polies performance: retain input poly provenance while subdividing; insert into arrangement_2 in batches
2026-06-11 18:29:11 +02:00
Thomas Krijnen
3b4cff838e
arrange polies: only subdivide segments that correspond to input poly segments
2026-06-11 18:29:11 +02:00
Thomas Krijnen
b7a329c9bc
arrange polies: apply triangle elimination in both algo 1 and 2
2026-06-11 18:29:11 +02:00
Thomas Krijnen
15574f78ac
arrange polies: lower iou to 45%
2026-06-11 18:29:11 +02:00
Thomas Krijnen
cd51c3ae85
arrange polygons: debug output point and annotate self intersecting polies; fix snapping distance check and fallback; tweak max snap to exterior distance; accept non-simple polies - likely touching without edge overlap; write representative points to debug output; properly apply algo 1 fallback; correct order for halfedge elimination;
2026-06-11 18:29:11 +02:00
Thomas Krijnen
a5cd8d025d
arrange_polygons: Revert to unsimplified when big IoU difference; threshold on max snap distance; write most deviating input-output pair to debug output
2026-06-11 18:26:42 +02:00
Thomas Krijnen
fc1af4ed93
ifcchat: update ifopsh to latest wasm wheel
2026-06-11 18:25:46 +02:00
Thomas Krijnen
227d85d81f
arrange polygons: limit width ratio when merging boxes
2026-05-15 21:12:43 +02:00
Thomas Krijnen
9345b9ce3f
arrange polies: don't allow snapped point paths to cross non-containing other rect axes
2026-05-14 21:45:59 +02:00
Thomas Krijnen
0b5dded3b3
Fix temporary solution storage in arrange polygons
2026-05-14 14:37:44 +02:00
Thomas Krijnen
97218b1fdb
Calculate box-width as orthogonal distance; aabb code for segment intersection (disabled)
2026-05-14 14:17:10 +02:00
Thomas Krijnen
1b637c6499
Arrange polies: reorder segment to exterior insertion based on length
2026-05-12 20:52:30 +02:00
Thomas Krijnen
94f4dbcf31
Add missing file
2026-05-10 17:01:11 +02:00
Thomas Krijnen
a2012ace2e
Proper svgfill isolation
2026-05-10 14:33:07 +02:00
Thomas Krijnen
cd612dc988
Add missing files
2026-05-09 22:00:46 +02:00
Thomas Krijnen
fde502daa1
svgfill as plug-in
2026-05-09 21:03:55 +02:00
Thomas Krijnen
7aa2bb366e
arrange polies, fuse boxes only when obb also overlaps
2026-05-07 20:35:54 +02:00
Thomas Krijnen
53c2ddbb47
arrange polies: try connect to closest point when extension and projection both do not work
2026-05-03 21:46:11 +02:00
Thomas Krijnen
7c6f6a4176
arrange polies performance: retain input poly provenance while subdividing; insert into arrangement_2 in batches
2026-05-02 13:21:20 +02:00
Thomas Krijnen
261037fb82
arrange polies: only subdivide segments that correspond to input poly segments
2026-05-02 13:21:20 +02:00
Thomas Krijnen
eacbb55810
arrange polies: apply triangle elimination in both algo 1 and 2
2026-05-02 13:21:20 +02:00
Thomas Krijnen
3d05a5e9d1
arrange polies: lower iou to 45%
2026-05-02 13:21:20 +02:00
Thomas Krijnen
a23cb3744f
arrange polygons: debug output point and annotate self intersecting polies; fix snapping distance check and fallback; tweak max snap to exterior distance; accept non-simple polies - likely touching without edge overlap; write representative points to debug output; properly apply algo 1 fallback; correct order for halfedge elimination;
2026-05-01 16:24:20 +02:00
Thomas Krijnen
57982a0d99
arrange_polygons: Revert to unsimplified when big IoU difference; threshold on max snap distance; write most deviating input-output pair to debug output
2026-04-24 14:10:26 +02:00
Thomas Krijnen
ead061a98a
svgfill dll link related
2026-04-18 21:13:24 +02:00
Thomas Krijnen
fae85e63cc
std::optional
2026-04-18 21:06:39 +02:00
Thomas Krijnen
32a7de66de
ifcchat: update ifopsh to latest wasm wheel
2026-04-17 10:05:25 +02:00
Thomas Krijnen
158756e921
arrange_polygons: settings, simplify based on growing boxes; more...
2026-04-10 21:46:39 +02:00
Thomas Krijnen
3fbf01f446
partial revert of 24acfea
2026-04-08 13:48:23 +02:00
Bruno Postle
26a1955cba
Fix compilation failure introduced in 24acfea
2026-04-07 23:34:30 +01:00
Thomas Krijnen
24acfeaf45
Thinking indicator under chat
2026-04-03 10:59:09 +02:00
Thomas Krijnen
43146530b0
arrange polygons: Alternative (unused) perimiter approach; simpler topology handling; projection-based clean-up
2026-03-02 21:49:05 +01:00
Andrej730
d4ebf3f308
cmake - error if svgpp submodule is not initialized
2026-02-26 17:01:54 +05:00
Thomas Krijnen
7978f1fb08
Fix compilation on gcc #7666
2026-02-13 10:17:28 +01:00
Thomas Krijnen
e6780973da
arrange_poly: Refactor into logical blocks; add timing
2026-02-10 14:01:10 +01:00
Andrej730
d41985f23a
format cmake files
2025-12-22 18:44:42 +05:00
Andrej730
b686c19a25
Create .gersemirc
2025-12-22 18:44:42 +05:00
Andrej730
dd683d1115
examples - further simplify linking
2025-12-12 20:19:42 +05:00
Andrej730
5a0f8d30cf
cmake - install headers using PUBLIC_HEADER, deprecate INCLUDEDIR
2025-12-12 19:30:21 +05:00