NathanRoll commited on
Commit
445d547
·
verified ·
1 Parent(s): 23695ab

Credit Friedman authors and show image recovery status

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. app.py +5 -1
  2. data/records.jsonl +0 -0
  3. data/solutions/generated/cirincir_10_be14c55679a54b28.json +119 -0
  4. data/solutions/generated/cirinsqu_10_522948d614943781.json +122 -0
  5. data/solutions/generated/triincir_16_8bb5531a7df45934.json +157 -0
  6. data/solutions/generated/triincir_24_e1de703df3a339d6.json +205 -0
  7. data/solutions/generated/triincir_26_8245fa6b2a472124.json +217 -0
  8. data/solutions/generated/triinhex_28_3435500023858121.json +232 -0
  9. data/solutions/generated/triinhex_29_4339d1ebd3160f94.json +238 -0
  10. data/solutions/generated/triinhex_30_7274d354e73d8050.json +244 -0
  11. data/solutions/generated/triinhex_31_cae7087451040120.json +250 -0
  12. data/solutions/generated/triinhex_35_ec49778cf450c37b.json +274 -0
  13. data/solutions/generated/triinhex_39_a314b4bb8467e5e8.json +298 -0
  14. data/solutions/generated/triinoct_16_640352ab60961c58.json +160 -0
  15. data/solutions/generated/triinoct_27_c7748eb19b34ff2e.json +226 -0
  16. data/solutions/generated/triinoct_29_0575780ea85d68dd.json +238 -0
  17. data/solutions/generated/triinpen_19_eaa1430599d74148.json +178 -0
  18. data/solutions/generated/triinpen_24_7bc3466b163ec849.json +208 -0
  19. data/solutions/generated/triinpen_25_d7a41b31b48a9cd4.json +214 -0
  20. data/solutions/generated/triinpen_30_29e4e0e684891d8a.json +244 -0
  21. data/solutions/generated/triinsqu_10_5b0eaf84f54fe48c.json +124 -0
  22. data/solutions/generated/triinsqu_13_7628e283de25ee68.json +142 -0
  23. data/solutions/generated/triinsqu_32_f42801b713b9238d.json +256 -0
  24. data/solutions/generated/triinsqu_33_a6f49f2f24228d1b.json +262 -0
  25. data/solutions/generated/triinsqu_34_61b4d5d6bf22a206.json +268 -0
  26. data/solutions/generated/triintri_11_8c37202a929dc807.json +130 -0
  27. data/solutions/generated/triintri_29_f2204c752005e940.json +238 -0
  28. data/solutions/generated/triintri_30_149a91e0248df04e.json +244 -0
  29. data/svg/0575780ea85d68dd.svg +35 -0
  30. data/svg/149a91e0248df04e.svg +36 -0
  31. data/svg/29e4e0e684891d8a.svg +36 -0
  32. data/svg/3435500023858121.svg +34 -0
  33. data/svg/4339d1ebd3160f94.svg +35 -0
  34. data/svg/522948d614943781.svg +16 -0
  35. data/svg/5b0eaf84f54fe48c.svg +16 -0
  36. data/svg/61b4d5d6bf22a206.svg +40 -0
  37. data/svg/640352ab60961c58.svg +22 -0
  38. data/svg/7274d354e73d8050.svg +36 -0
  39. data/svg/7628e283de25ee68.svg +19 -0
  40. data/svg/7bc3466b163ec849.svg +30 -0
  41. data/svg/8245fa6b2a472124.svg +32 -0
  42. data/svg/8bb5531a7df45934.svg +22 -0
  43. data/svg/8c37202a929dc807.svg +17 -0
  44. data/svg/a314b4bb8467e5e8.svg +45 -0
  45. data/svg/a6f49f2f24228d1b.svg +39 -0
  46. data/svg/be14c55679a54b28.svg +16 -0
  47. data/svg/c7748eb19b34ff2e.svg +33 -0
  48. data/svg/cae7087451040120.svg +37 -0
  49. data/svg/d7a41b31b48a9cd4.svg +31 -0
  50. data/svg/e1de703df3a339d6.svg +30 -0
app.py CHANGED
@@ -941,9 +941,13 @@ def visual_provenance(record: dict[str, Any], visual_record: dict[str, Any]) ->
941
  if visual_record.get("frontend_seed"):
942
  visual_metric = metric_value(visual_record)
943
  shown_metric = metric_value(record)
 
944
  suffix = ""
945
  if visual_metric != shown_metric:
946
- suffix = f" Rendering metric: {esc(metric_symbol(visual_record))} = {esc(visual_metric)}; displayed record metric: {esc(metric_symbol(record))} = {esc(shown_metric)}."
 
 
 
947
  return "Generated feasible coordinate rendering, not recovered from the Friedman source image." + suffix
948
 
949
  return "Coordinate rendering attached to this case."
 
941
  if visual_record.get("frontend_seed"):
942
  visual_metric = metric_value(visual_record)
943
  shown_metric = metric_value(record)
944
+ notes = str(visual_record.get("notes") or "").lower()
945
  suffix = ""
946
  if visual_metric != shown_metric:
947
+ suffix = f" Verified coordinate metric: {esc(metric_symbol(visual_record))} = {esc(visual_metric)}; Friedman reported metric: {esc(metric_symbol(record))} = {esc(shown_metric)}."
948
+ if "image-seeded" in notes or "image seeded" in notes:
949
+ status = "recovered within tolerance" if not needs_recovery(record, visual_record) else "still outside recovery tolerance"
950
+ return f"Image-seeded from the Friedman source image and verified ({status})." + suffix
951
  return "Generated feasible coordinate rendering, not recovered from the Friedman source image." + suffix
952
 
953
  return "Coordinate rendering attached to this case."
data/records.jsonl CHANGED
The diff for this file is too large to render. See raw diff
 
data/solutions/generated/cirincir_10_be14c55679a54b28.json ADDED
@@ -0,0 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "cirincir@10",
3
+ "container": {
4
+ "radius": 3.813115539124243,
5
+ "type": "circle"
6
+ },
7
+ "friedman_reference": {
8
+ "analytical_or_proved": true,
9
+ "case": "cirincir@10",
10
+ "credit": "Pirl",
11
+ "date": "1969",
12
+ "family_updated": "6/27/05",
13
+ "metric_expression": "3.813+",
14
+ "metric_symbol": "r",
15
+ "metric_value": 3.813,
16
+ "reference_text": "r = 3.813+ | Proved by Pirl in 1969.",
17
+ "source_image": "ccc10.gif",
18
+ "source_image_url": "https://erich-friedman.github.io/packing/cirincir/ccc10.gif",
19
+ "source_page": "https://erich-friedman.github.io/packing/cirincir/",
20
+ "title": "Circles in Circles"
21
+ },
22
+ "item": {
23
+ "radius": 1.0,
24
+ "type": "circle"
25
+ },
26
+ "metadata": {
27
+ "certification_slack": 1.000040000600004,
28
+ "friedman_reference": {
29
+ "analytical_or_proved": true,
30
+ "case": "cirincir@10",
31
+ "credit": "Pirl",
32
+ "date": "1969",
33
+ "family_updated": "6/27/05",
34
+ "metric_expression": "3.813+",
35
+ "metric_symbol": "r",
36
+ "metric_value": 3.813,
37
+ "reference_text": "r = 3.813+ | Proved by Pirl in 1969.",
38
+ "source_image": "ccc10.gif",
39
+ "source_image_url": "https://erich-friedman.github.io/packing/cirincir/ccc10.gif",
40
+ "source_page": "https://erich-friedman.github.io/packing/cirincir/",
41
+ "title": "Circles in Circles"
42
+ },
43
+ "generator": "friedman_image_seed",
44
+ "generator_profile": "best of cg/steepest/sa seed profiles",
45
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/cirincir_010.gif",
46
+ "image_seed_transform_error": 0.06260662900137194,
47
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
48
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/cirincir_010_image_refined.state",
49
+ "source_url": "https://erich-friedman.github.io/packing/cirincir/",
50
+ "submitted_at": "2026-05-01T02:08:58+00:00",
51
+ "submitted_by": "polygon-packer-c image seed"
52
+ },
53
+ "placements": [
54
+ {
55
+ "id": 1,
56
+ "rotation_radians": 4.250841583787497,
57
+ "x": -1.5495894413068694,
58
+ "y": 2.347809976552831
59
+ },
60
+ {
61
+ "id": 2,
62
+ "rotation_radians": 1.2049245946973615,
63
+ "x": 2.475977848974938,
64
+ "y": -1.3352782482689725
65
+ },
66
+ {
67
+ "id": 3,
68
+ "rotation_radians": 3.324535391146819,
69
+ "x": 0.9628155378992221,
70
+ "y": -2.6431837470626016
71
+ },
72
+ {
73
+ "id": 4,
74
+ "rotation_radians": 2.235924865008793,
75
+ "x": -2.7181525310229597,
76
+ "y": 0.724620859045127
77
+ },
78
+ {
79
+ "id": 5,
80
+ "rotation_radians": 5.015462004334633,
81
+ "x": 0.4022919298430151,
82
+ "y": 2.7841965332540686
83
+ },
84
+ {
85
+ "id": 6,
86
+ "rotation_radians": 0.28911623382725804,
87
+ "x": -1.0370560344683115,
88
+ "y": -2.614970847945628
89
+ },
90
+ {
91
+ "id": 7,
92
+ "rotation_radians": 0.652847074253164,
93
+ "x": 2.7375524795110038,
94
+ "y": 0.6476129213608892
95
+ },
96
+ {
97
+ "id": 8,
98
+ "rotation_radians": 2.753751059344826,
99
+ "x": 0.7444079617997427,
100
+ "y": 0.813627221395956
101
+ },
102
+ {
103
+ "id": 9,
104
+ "rotation_radians": 5.720342076194702,
105
+ "x": -0.6056692970283514,
106
+ "y": -0.6619913272422999
107
+ },
108
+ {
109
+ "id": 10,
110
+ "rotation_radians": 2.794472784545188,
111
+ "x": -2.512698883945597,
112
+ "y": -1.2648690591199467
113
+ }
114
+ ],
115
+ "problem": "10 equal items for Circles in Circles",
116
+ "setup": "cirincir",
117
+ "source_image": "https://erich-friedman.github.io/packing/cirincir/ccc10.gif",
118
+ "source_page": "https://erich-friedman.github.io/packing/cirincir/"
119
+ }
data/solutions/generated/cirinsqu_10_522948d614943781.json ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "cirinsqu@10",
3
+ "container": {
4
+ "circumradius": 4.771259329856722,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 6.74757965388254,
7
+ "sides": 4,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "cirinsqu@10",
13
+ "credit": "De Groot",
14
+ "date": "1990",
15
+ "family_updated": "10/9/10",
16
+ "metric_expression": "6.747+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 6.747,
19
+ "reference_text": "s = 6.747+ | Proved by De Groot in 1990.",
20
+ "source_image": "cs10.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/cirinsqu/cs10.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/cirinsqu/",
23
+ "title": "Circles in Squares"
24
+ },
25
+ "item": {
26
+ "radius": 1.0,
27
+ "type": "circle"
28
+ },
29
+ "metadata": {
30
+ "certification_slack": 1.000040000600004,
31
+ "friedman_reference": {
32
+ "analytical_or_proved": true,
33
+ "case": "cirinsqu@10",
34
+ "credit": "De Groot",
35
+ "date": "1990",
36
+ "family_updated": "10/9/10",
37
+ "metric_expression": "6.747+",
38
+ "metric_symbol": "s",
39
+ "metric_value": 6.747,
40
+ "reference_text": "s = 6.747+ | Proved by De Groot in 1990.",
41
+ "source_image": "cs10.gif",
42
+ "source_image_url": "https://erich-friedman.github.io/packing/cirinsqu/cs10.gif",
43
+ "source_page": "https://erich-friedman.github.io/packing/cirinsqu/",
44
+ "title": "Circles in Squares"
45
+ },
46
+ "generator": "friedman_image_seed",
47
+ "generator_profile": "best of cg/steepest/sa seed profiles",
48
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/cirinsqu_010.gif",
49
+ "image_seed_transform_error": 1.0052492910490174e-15,
50
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
51
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/cirinsqu_010_image_refined.state",
52
+ "source_url": "https://erich-friedman.github.io/packing/cirinsqu/",
53
+ "submitted_at": "2026-05-01T02:08:58+00:00",
54
+ "submitted_by": "polygon-packer-c image seed"
55
+ },
56
+ "placements": [
57
+ {
58
+ "id": 1,
59
+ "rotation_radians": 0.6631201483233983,
60
+ "x": -1.452583219963529,
61
+ "y": -1.9044085825632537
62
+ },
63
+ {
64
+ "id": 2,
65
+ "rotation_radians": 3.460415277605134,
66
+ "x": -0.038322427094046985,
67
+ "y": -3.3186863548500445
68
+ },
69
+ {
70
+ "id": 3,
71
+ "rotation_radians": 5.175384480811934,
72
+ "x": 1.4137529043718686,
73
+ "y": -1.9432788926909437
74
+ },
75
+ {
76
+ "id": 4,
77
+ "rotation_radians": 1.210268797097649,
78
+ "x": 2.828002842573363,
79
+ "y": -0.5289911772412871
80
+ },
81
+ {
82
+ "id": 5,
83
+ "rotation_radians": 1.2733469800666406,
84
+ "x": -3.357028277502991,
85
+ "y": -1.8343155996848248e-06
86
+ },
87
+ {
88
+ "id": 6,
89
+ "rotation_radians": 0.7406471839276207,
90
+ "x": -1.3591735215093275,
91
+ "y": 0.09348660293620727
92
+ },
93
+ {
94
+ "id": 7,
95
+ "rotation_radians": 5.70981309480042,
96
+ "x": 0.6312250856386635,
97
+ "y": -0.10267057200586589
98
+ },
99
+ {
100
+ "id": 8,
101
+ "rotation_radians": 0.7817877980872996,
102
+ "x": 2.045418000705354,
103
+ "y": 1.3116253947392875
104
+ },
105
+ {
106
+ "id": 9,
107
+ "rotation_radians": 3.1295383626226756,
108
+ "x": -1.2656324453185372,
109
+ "y": 2.091369376176176
110
+ },
111
+ {
112
+ "id": 10,
113
+ "rotation_radians": 1.2491990785030422,
114
+ "x": 0.6311280446094484,
115
+ "y": 2.7258703870584085
116
+ }
117
+ ],
118
+ "problem": "10 equal items for Circles in Squares",
119
+ "setup": "cirinsqu",
120
+ "source_image": "https://erich-friedman.github.io/packing/cirinsqu/cs10.gif",
121
+ "source_page": "https://erich-friedman.github.io/packing/cirinsqu/"
122
+ }
data/solutions/generated/triincir_16_8bb5531a7df45934.json ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triincir@16",
3
+ "container": {
4
+ "radius": 1.6880356342518776,
5
+ "type": "circle"
6
+ },
7
+ "friedman_reference": {
8
+ "analytical_or_proved": false,
9
+ "case": "triincir@16",
10
+ "credit": "Maurizio Morandi",
11
+ "date": "April 2008",
12
+ "family_updated": "8/31/19",
13
+ "metric_expression": "1.687+",
14
+ "metric_symbol": "r",
15
+ "metric_value": 1.687,
16
+ "reference_text": "r = 1.687+ | Found by Maurizio Morandi | in April 2008.",
17
+ "source_image": "tc16.gif",
18
+ "source_image_url": "https://erich-friedman.github.io/packing/triincir/tc16.gif",
19
+ "source_page": "https://erich-friedman.github.io/packing/triincir/",
20
+ "title": "Triangles in Circles"
21
+ },
22
+ "item": {
23
+ "circumradius": 0.5773502691896258,
24
+ "side_length": 1.0,
25
+ "sides": 3,
26
+ "type": "regular_polygon"
27
+ },
28
+ "metadata": {
29
+ "certification_slack": 1.0000500010000102,
30
+ "friedman_reference": {
31
+ "analytical_or_proved": false,
32
+ "case": "triincir@16",
33
+ "credit": "Maurizio Morandi",
34
+ "date": "April 2008",
35
+ "family_updated": "8/31/19",
36
+ "metric_expression": "1.687+",
37
+ "metric_symbol": "r",
38
+ "metric_value": 1.687,
39
+ "reference_text": "r = 1.687+ | Found by Maurizio Morandi | in April 2008.",
40
+ "source_image": "tc16.gif",
41
+ "source_image_url": "https://erich-friedman.github.io/packing/triincir/tc16.gif",
42
+ "source_page": "https://erich-friedman.github.io/packing/triincir/",
43
+ "title": "Triangles in Circles"
44
+ },
45
+ "generator": "friedman_image_seed",
46
+ "generator_profile": "best of cg/steepest/sa seed profiles",
47
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triincir_016.gif",
48
+ "image_seed_transform_error": 0.027220545981561973,
49
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
50
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triincir_016_image_refined.state",
51
+ "source_url": "https://erich-friedman.github.io/packing/triincir/",
52
+ "submitted_at": "2026-05-01T02:08:58+00:00",
53
+ "submitted_by": "polygon-packer-c image seed"
54
+ },
55
+ "placements": [
56
+ {
57
+ "id": 1,
58
+ "rotation_radians": 3.664836111795197,
59
+ "x": 0.17784122734082114,
60
+ "y": -1.2571047992820488
61
+ },
62
+ {
63
+ "id": 2,
64
+ "rotation_radians": 4.714168249798268,
65
+ "x": 0.6790906403670012,
66
+ "y": -0.9651644644659932
67
+ },
68
+ {
69
+ "id": 3,
70
+ "rotation_radians": 4.714791780188679,
71
+ "x": -0.6756068095649385,
72
+ "y": -0.9701790597822169
73
+ },
74
+ {
75
+ "id": 4,
76
+ "rotation_radians": 3.6669608737812425,
77
+ "x": 0.6781245142290789,
78
+ "y": -0.38778615596180166
79
+ },
80
+ {
81
+ "id": 5,
82
+ "rotation_radians": 3.667182124316511,
83
+ "x": -0.6769412889928326,
84
+ "y": -0.3925004446075234
85
+ },
86
+ {
87
+ "id": 6,
88
+ "rotation_radians": 4.714149062611521,
89
+ "x": -2.4130474758168597e-05,
90
+ "y": -0.4087345808758347
91
+ },
92
+ {
93
+ "id": 7,
94
+ "rotation_radians": 4.714174172108395,
95
+ "x": 1.1776612863037883,
96
+ "y": -0.098207910938591
97
+ },
98
+ {
99
+ "id": 8,
100
+ "rotation_radians": 4.714342739980999,
101
+ "x": -1.1775005563864305,
102
+ "y": -0.10475716820426578
103
+ },
104
+ {
105
+ "id": 9,
106
+ "rotation_radians": 3.6670083738869836,
107
+ "x": -0.0010252175255247636,
108
+ "y": 0.16866225588699266
109
+ },
110
+ {
111
+ "id": 10,
112
+ "rotation_radians": 4.714109377232937,
113
+ "x": -0.5016448569989238,
114
+ "y": 0.4563718060621621
115
+ },
116
+ {
117
+ "id": 11,
118
+ "rotation_radians": 3.6668516895701138,
119
+ "x": 1.176649754238234,
120
+ "y": 0.4793120981355878
121
+ },
122
+ {
123
+ "id": 12,
124
+ "rotation_radians": 3.6670986444315585,
125
+ "x": -1.1785732975925363,
126
+ "y": 0.47268227758235737
127
+ },
128
+ {
129
+ "id": 13,
130
+ "rotation_radians": 4.7141986910842455,
131
+ "x": 0.49851306861668276,
132
+ "y": 0.4584037917258823
133
+ },
134
+ {
135
+ "id": 14,
136
+ "rotation_radians": 3.666969080809803,
137
+ "x": -0.502678709168134,
138
+ "y": 1.033781450033703
139
+ },
140
+ {
141
+ "id": 15,
142
+ "rotation_radians": 3.6673907525139184,
143
+ "x": 0.49771966045806454,
144
+ "y": 1.0359918811775524
145
+ },
146
+ {
147
+ "id": 16,
148
+ "rotation_radians": 4.714609969432941,
149
+ "x": -0.002953549079464715,
150
+ "y": 1.323563676623352
151
+ }
152
+ ],
153
+ "problem": "16 equal items for Triangles in Circles",
154
+ "setup": "triincir",
155
+ "source_image": "https://erich-friedman.github.io/packing/triincir/tc16.gif",
156
+ "source_page": "https://erich-friedman.github.io/packing/triincir/"
157
+ }
data/solutions/generated/triincir_24_e1de703df3a339d6.json ADDED
@@ -0,0 +1,205 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triincir@24",
3
+ "container": {
4
+ "radius": 2.0003198331040326,
5
+ "type": "circle"
6
+ },
7
+ "friedman_reference": {
8
+ "analytical_or_proved": true,
9
+ "case": "triincir@24",
10
+ "credit": "Trivial",
11
+ "date": "",
12
+ "family_updated": "8/31/19",
13
+ "metric_expression": "2",
14
+ "metric_symbol": "r",
15
+ "metric_value": 2.0,
16
+ "reference_text": "r = 2 | Trivial.",
17
+ "source_image": "tc24.gif",
18
+ "source_image_url": "https://erich-friedman.github.io/packing/triincir/tc24.gif",
19
+ "source_page": "https://erich-friedman.github.io/packing/triincir/",
20
+ "title": "Triangles in Circles"
21
+ },
22
+ "item": {
23
+ "circumradius": 0.5773502691896258,
24
+ "side_length": 1.0,
25
+ "sides": 3,
26
+ "type": "regular_polygon"
27
+ },
28
+ "metadata": {
29
+ "certification_slack": 1.000040000600004,
30
+ "friedman_reference": {
31
+ "analytical_or_proved": true,
32
+ "case": "triincir@24",
33
+ "credit": "Trivial",
34
+ "date": "",
35
+ "family_updated": "8/31/19",
36
+ "metric_expression": "2",
37
+ "metric_symbol": "r",
38
+ "metric_value": 2.0,
39
+ "reference_text": "r = 2 | Trivial.",
40
+ "source_image": "tc24.gif",
41
+ "source_image_url": "https://erich-friedman.github.io/packing/triincir/tc24.gif",
42
+ "source_page": "https://erich-friedman.github.io/packing/triincir/",
43
+ "title": "Triangles in Circles"
44
+ },
45
+ "generator": "friedman_image_seed",
46
+ "generator_profile": "best of cg/steepest/sa seed profiles",
47
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triincir_024.gif",
48
+ "image_seed_transform_error": 0.007191923516456017,
49
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
50
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triincir_024_image_refined.state",
51
+ "source_url": "https://erich-friedman.github.io/packing/triincir/",
52
+ "submitted_at": "2026-05-01T02:08:58+00:00",
53
+ "submitted_by": "polygon-packer-c image seed"
54
+ },
55
+ "placements": [
56
+ {
57
+ "id": 1,
58
+ "rotation_radians": 5.241059323477685,
59
+ "x": 1.4444771289496978,
60
+ "y": 0.5016294125069167
61
+ },
62
+ {
63
+ "id": 2,
64
+ "rotation_radians": 5.241062652280637,
65
+ "x": 1.4406087723289192,
66
+ "y": -0.5024986973774566
67
+ },
68
+ {
69
+ "id": 3,
70
+ "rotation_radians": 6.288277869295962,
71
+ "x": 1.1573717102793835,
72
+ "y": 0.0007123568200705665
73
+ },
74
+ {
75
+ "id": 4,
76
+ "rotation_radians": 6.288232763009969,
77
+ "x": 1.1532623806596338,
78
+ "y": 1.0001827459727697
79
+ },
80
+ {
81
+ "id": 5,
82
+ "rotation_radians": 6.288254792580777,
83
+ "x": 1.1544637057195657,
84
+ "y": -1.0039607117177685
85
+ },
86
+ {
87
+ "id": 6,
88
+ "rotation_radians": 5.24105995252929,
89
+ "x": 0.5799983916113182,
90
+ "y": -0.0009317182549815385
91
+ },
92
+ {
93
+ "id": 7,
94
+ "rotation_radians": 5.241068225633825,
95
+ "x": 0.5770572061230892,
96
+ "y": -0.9986038731065473
97
+ },
98
+ {
99
+ "id": 8,
100
+ "rotation_radians": 5.241076137834945,
101
+ "x": 0.575881984443291,
102
+ "y": 0.9988016099617755
103
+ },
104
+ {
105
+ "id": 9,
106
+ "rotation_radians": 6.288530818331481,
107
+ "x": 0.29212798018452074,
108
+ "y": 1.5018607366931442
109
+ },
110
+ {
111
+ "id": 10,
112
+ "rotation_radians": 6.288272124778973,
113
+ "x": 0.28899536440490886,
114
+ "y": 0.4977474332160452
115
+ },
116
+ {
117
+ "id": 11,
118
+ "rotation_radians": 6.288277368644234,
119
+ "x": 0.28777227861143206,
120
+ "y": -0.498939605482995
121
+ },
122
+ {
123
+ "id": 12,
124
+ "rotation_radians": 6.2882521245659,
125
+ "x": 0.2887658630746917,
126
+ "y": -1.4988514537772064
127
+ },
128
+ {
129
+ "id": 13,
130
+ "rotation_radians": 5.2412305836829205,
131
+ "x": -0.28528491007168744,
132
+ "y": 1.498795390140168
133
+ },
134
+ {
135
+ "id": 14,
136
+ "rotation_radians": 5.241072968022201,
137
+ "x": -0.2883985816301646,
138
+ "y": 0.5005138806834849
139
+ },
140
+ {
141
+ "id": 15,
142
+ "rotation_radians": 5.241053708767374,
143
+ "x": -0.2896116180487381,
144
+ "y": -0.49938477813437493
145
+ },
146
+ {
147
+ "id": 16,
148
+ "rotation_radians": 5.241066813750423,
149
+ "x": -0.28859809557271954,
150
+ "y": -1.501772240617878
151
+ },
152
+ {
153
+ "id": 17,
154
+ "rotation_radians": 6.2882687222393665,
155
+ "x": -0.5771617819348002,
156
+ "y": 1.0004930025398349
157
+ },
158
+ {
159
+ "id": 18,
160
+ "rotation_radians": 6.2882496959436684,
161
+ "x": -0.5757542828818456,
162
+ "y": -1.0008521447295065
163
+ },
164
+ {
165
+ "id": 19,
166
+ "rotation_radians": 6.288261083797817,
167
+ "x": -0.5778227991874708,
168
+ "y": 0.0009147945860385828
169
+ },
170
+ {
171
+ "id": 20,
172
+ "rotation_radians": 5.241169092966143,
173
+ "x": -1.1552438132437945,
174
+ "y": -0.0016047133151932636
175
+ },
176
+ {
177
+ "id": 21,
178
+ "rotation_radians": 5.24029650401851,
179
+ "x": -1.153522376071441,
180
+ "y": -1.0001787667511954
181
+ },
182
+ {
183
+ "id": 22,
184
+ "rotation_radians": 5.241496683330858,
185
+ "x": -1.1547523966349973,
186
+ "y": 1.0002783329064036
187
+ },
188
+ {
189
+ "id": 23,
190
+ "rotation_radians": 6.288462515101502,
191
+ "x": -1.4422832021429448,
192
+ "y": 0.49943677409198034
193
+ },
194
+ {
195
+ "id": 24,
196
+ "rotation_radians": 6.288390508775298,
197
+ "x": -1.4448036057547426,
198
+ "y": -0.5011451020354435
199
+ }
200
+ ],
201
+ "problem": "24 equal items for Triangles in Circles",
202
+ "setup": "triincir",
203
+ "source_image": "https://erich-friedman.github.io/packing/triincir/tc24.gif",
204
+ "source_page": "https://erich-friedman.github.io/packing/triincir/"
205
+ }
data/solutions/generated/triincir_26_8245fa6b2a472124.json ADDED
@@ -0,0 +1,217 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triincir@26",
3
+ "container": {
4
+ "radius": 2.1091687246398596,
5
+ "type": "circle"
6
+ },
7
+ "friedman_reference": {
8
+ "analytical_or_proved": false,
9
+ "case": "triincir@26",
10
+ "credit": "Maurizio Morandi",
11
+ "date": "April 2008",
12
+ "family_updated": "8/31/19",
13
+ "metric_expression": "2.109+",
14
+ "metric_symbol": "r",
15
+ "metric_value": 2.109,
16
+ "reference_text": "r = 2.109+ | Found by Maurizio Morandi | in April 2008.",
17
+ "source_image": "tc26.gif",
18
+ "source_image_url": "https://erich-friedman.github.io/packing/triincir/tc26.gif",
19
+ "source_page": "https://erich-friedman.github.io/packing/triincir/",
20
+ "title": "Triangles in Circles"
21
+ },
22
+ "item": {
23
+ "circumradius": 0.5773502691896258,
24
+ "side_length": 1.0,
25
+ "sides": 3,
26
+ "type": "regular_polygon"
27
+ },
28
+ "metadata": {
29
+ "certification_slack": 1.000040000600004,
30
+ "friedman_reference": {
31
+ "analytical_or_proved": false,
32
+ "case": "triincir@26",
33
+ "credit": "Maurizio Morandi",
34
+ "date": "April 2008",
35
+ "family_updated": "8/31/19",
36
+ "metric_expression": "2.109+",
37
+ "metric_symbol": "r",
38
+ "metric_value": 2.109,
39
+ "reference_text": "r = 2.109+ | Found by Maurizio Morandi | in April 2008.",
40
+ "source_image": "tc26.gif",
41
+ "source_image_url": "https://erich-friedman.github.io/packing/triincir/tc26.gif",
42
+ "source_page": "https://erich-friedman.github.io/packing/triincir/",
43
+ "title": "Triangles in Circles"
44
+ },
45
+ "generator": "friedman_image_seed",
46
+ "generator_profile": "best of cg/steepest/sa seed profiles",
47
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triincir_026.gif",
48
+ "image_seed_transform_error": 0.06729175389758921,
49
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
50
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triincir_026_image_refined.state",
51
+ "source_url": "https://erich-friedman.github.io/packing/triincir/",
52
+ "submitted_at": "2026-05-01T02:08:58+00:00",
53
+ "submitted_by": "polygon-packer-c image seed"
54
+ },
55
+ "placements": [
56
+ {
57
+ "id": 1,
58
+ "rotation_radians": 0.411966304053005,
59
+ "x": 0.22147727520203306,
60
+ "y": 1.7390894237514836
61
+ },
62
+ {
63
+ "id": 2,
64
+ "rotation_radians": 0.8534477693502467,
65
+ "x": -0.9616338824492232,
66
+ "y": 1.342525674625043
67
+ },
68
+ {
69
+ "id": 3,
70
+ "rotation_radians": 1.9006521579090687,
71
+ "x": -0.3896118491664226,
72
+ "y": 1.2592042917296944
73
+ },
74
+ {
75
+ "id": 4,
76
+ "rotation_radians": 0.45673983939243823,
77
+ "x": 1.0063752508702557,
78
+ "y": 1.2028740137500096
79
+ },
80
+ {
81
+ "id": 5,
82
+ "rotation_radians": 1.5039351546147814,
83
+ "x": 0.4468953730586414,
84
+ "y": 1.0322887614847231
85
+ },
86
+ {
87
+ "id": 6,
88
+ "rotation_radians": 1.5860698213869406,
89
+ "x": -1.5193809568526218,
90
+ "y": 0.8763967661906918
91
+ },
92
+ {
93
+ "id": 7,
94
+ "rotation_radians": 1.5412216026166252,
95
+ "x": 1.507486482184622,
96
+ "y": 0.8803849485592858
97
+ },
98
+ {
99
+ "id": 8,
100
+ "rotation_radians": 0.5055467201835621,
101
+ "x": 0.018463302992162985,
102
+ "y": 0.45622795200597244
103
+ },
104
+ {
105
+ "id": 9,
106
+ "rotation_radians": 0.5269403086444218,
107
+ "x": -1.0925207264340502,
108
+ "y": 0.29954506408575243
109
+ },
110
+ {
111
+ "id": 10,
112
+ "rotation_radians": 0.49639141943292026,
113
+ "x": 1.0991882242968416,
114
+ "y": 0.3136572504596233
115
+ },
116
+ {
117
+ "id": 11,
118
+ "rotation_radians": 1.5551856716924959,
119
+ "x": -0.4874057099716846,
120
+ "y": 0.17534076085655723
121
+ },
122
+ {
123
+ "id": 12,
124
+ "rotation_radians": 1.5578278185405194,
125
+ "x": 0.5173228577420397,
126
+ "y": 0.1604244953628256
127
+ },
128
+ {
129
+ "id": 13,
130
+ "rotation_radians": 1.5508756898440608,
131
+ "x": 1.5953465766729664,
132
+ "y": 0.011331681477471529
133
+ },
134
+ {
135
+ "id": 14,
136
+ "rotation_radians": 1.5741375262856343,
137
+ "x": -1.5912286928792618,
138
+ "y": 0.008625260685862364
139
+ },
140
+ {
141
+ "id": 15,
142
+ "rotation_radians": 0.5079476148511448,
143
+ "x": -0.4964443331452417,
144
+ "y": -0.4019789281597175
145
+ },
146
+ {
147
+ "id": 16,
148
+ "rotation_radians": 0.5106361798032403,
149
+ "x": 0.5076292805303124,
150
+ "y": -0.4168643891507205
151
+ },
152
+ {
153
+ "id": 17,
154
+ "rotation_radians": 0.5107004580259054,
155
+ "x": 1.5858174644124867,
156
+ "y": -0.569469926504456
157
+ },
158
+ {
159
+ "id": 18,
160
+ "rotation_radians": 0.5081624769900152,
161
+ "x": -1.594771926054912,
162
+ "y": -0.5780950409002047
163
+ },
164
+ {
165
+ "id": 19,
166
+ "rotation_radians": 1.5578903715817103,
167
+ "x": 1.003877625707231,
168
+ "y": -0.7120355768276022
169
+ },
170
+ {
171
+ "id": 20,
172
+ "rotation_radians": 1.5553577642123908,
173
+ "x": -0.993130061796448,
174
+ "y": -0.69700090311865
175
+ },
176
+ {
177
+ "id": 21,
178
+ "rotation_radians": 1.557822708254683,
179
+ "x": 0.002111456546847889,
180
+ "y": -0.6958274692619407
181
+ },
182
+ {
183
+ "id": 22,
184
+ "rotation_radians": 0.510770225475142,
185
+ "x": -0.0085143326852867,
186
+ "y": -1.2731811915499027
187
+ },
188
+ {
189
+ "id": 23,
190
+ "rotation_radians": 0.508161244315508,
191
+ "x": -1.001098612443008,
192
+ "y": -1.2743146289753529
193
+ },
194
+ {
195
+ "id": 24,
196
+ "rotation_radians": 0.5106949165388395,
197
+ "x": 0.9895222327694476,
198
+ "y": -1.2892646611573944
199
+ },
200
+ {
201
+ "id": 25,
202
+ "rotation_radians": 1.5545633778787935,
203
+ "x": -0.5053710527594489,
204
+ "y": -1.571084607285751
205
+ },
206
+ {
207
+ "id": 26,
208
+ "rotation_radians": 1.5579674864734907,
209
+ "x": 0.48580442929971707,
210
+ "y": -1.571518753286086
211
+ }
212
+ ],
213
+ "problem": "26 equal items for Triangles in Circles",
214
+ "setup": "triincir",
215
+ "source_image": "https://erich-friedman.github.io/packing/triincir/tc26.gif",
216
+ "source_page": "https://erich-friedman.github.io/packing/triincir/"
217
+ }
data/solutions/generated/triinhex_28_3435500023858121.json ADDED
@@ -0,0 +1,232 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinhex@28",
3
+ "container": {
4
+ "circumradius": 2.3245501826518793,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.324550182651879,
7
+ "sides": 6,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinhex@28",
13
+ "credit": "Ian Watson",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.32289+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.32289,
19
+ "reference_text": "s = 2.32289+ | Found by Ian Watson | in April 2026.",
20
+ "source_image": "28.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/28.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
23
+ "title": "Triangles in Hexagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinhex@28",
36
+ "credit": "Ian Watson",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.32289+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.32289,
42
+ "reference_text": "s = 2.32289+ | Found by Ian Watson | in April 2026.",
43
+ "source_image": "28.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/28.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
46
+ "title": "Triangles in Hexagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinhex_028.gif",
51
+ "image_seed_transform_error": 0.05683594732720138,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinhex_028_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinhex/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -3.665190859395831,
62
+ "x": -0.011084716521545133,
63
+ "y": 1.7244339040081273
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -3.665107102413602,
68
+ "x": 0.8255824689055333,
69
+ "y": 1.4414573256455283
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -3.665130283028151,
74
+ "x": -0.8366862735643784,
75
+ "y": 1.4222920086610136
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": -4.712302664709926,
80
+ "x": 1.3256092996451394,
81
+ "y": 1.1527745656892323
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -4.712336378905933,
86
+ "x": 0.32554066269230175,
87
+ "y": 1.1526564924562932
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -4.712366466885393,
92
+ "x": -1.3367190253547458,
93
+ "y": 1.1335846540959764
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": -4.705624222885824,
98
+ "x": -0.49391979939340924,
99
+ "y": 0.8206454872720005
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -3.6635430449078936,
104
+ "x": 1.3228993240545766,
105
+ "y": 0.5746071128216436
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -3.6633272445674416,
110
+ "x": 0.3192317990551307,
111
+ "y": 0.5743540914683599
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -3.6651723170745942,
116
+ "x": -1.3122785570450033,
117
+ "y": 0.5561994976326674
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -4.710727144161777,
122
+ "x": 1.8234046014100134,
123
+ "y": 0.2867356420092979
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": -4.706129760331103,
128
+ "x": 0.8262176966615168,
129
+ "y": 0.2756242973965346
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": -4.712357543912013,
134
+ "x": -1.812017960213541,
135
+ "y": 0.2670078846017444
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": -3.6594349532249493,
140
+ "x": -0.4932480628045271,
141
+ "y": 0.24270014762455275
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": -4.706622185415509,
146
+ "x": 0.008851661705133162,
147
+ "y": -0.04236187827070748
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": -4.708049895239821,
152
+ "x": -0.992294437853645,
153
+ "y": -0.0491062453018452
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": -3.6550663157196133,
158
+ "x": 1.8120798606597557,
159
+ "y": -0.29490842940015705
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": -3.662487242319353,
164
+ "x": -1.8093181016855107,
165
+ "y": -0.3123156383115333
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": -4.705290307467756,
170
+ "x": 1.3125530047310474,
171
+ "y": -0.5874931361596458
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": -3.4010553472346445,
176
+ "x": 0.5885138351954893,
177
+ "y": -0.6061679803045424
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": -3.405112311962098,
182
+ "x": -0.5045523370339312,
183
+ "y": -0.7392362013752262
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": -4.4523256789373375,
188
+ "x": 0.05290225120243364,
189
+ "y": -0.8896242027686555
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": -4.452325381419462,
194
+ "x": -1.1623046393912881,
195
+ "y": -0.8971504454229753
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": -3.6617966512489075,
200
+ "x": 1.3156054596097972,
201
+ "y": -1.1667223762186034
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": -3.40510250106995,
206
+ "x": 0.20139122069203166,
207
+ "y": -1.4476243475787387
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": -3.405145089386845,
212
+ "x": -1.0138122969237318,
213
+ "y": -1.455147756115727
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": -4.452294358477789,
218
+ "x": 0.7598688679977237,
219
+ "y": -1.5942111589371057
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": -4.452349467566822,
224
+ "x": -0.45636221370125063,
225
+ "y": -1.6055697730710883
226
+ }
227
+ ],
228
+ "problem": "28 equal items for Triangles in Hexagons",
229
+ "setup": "triinhex",
230
+ "source_image": "https://erich-friedman.github.io/packing/triinhex/28.gif",
231
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/"
232
+ }
data/solutions/generated/triinhex_29_4339d1ebd3160f94.json ADDED
@@ -0,0 +1,238 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinhex@29",
3
+ "container": {
4
+ "circumradius": 2.3335122751747748,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.3335122751747743,
7
+ "sides": 6,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triinhex@29",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "7/3 = 2.333+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.333,
19
+ "reference_text": "s = 7/3 = 2.333+ | Found by Ignacio Vallejo | in April 2026.",
20
+ "source_image": "29.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/29.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
23
+ "title": "Triangles in Hexagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000500010000102,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triinhex@29",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "7/3 = 2.333+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.333,
42
+ "reference_text": "s = 7/3 = 2.333+ | Found by Ignacio Vallejo | in April 2026.",
43
+ "source_image": "29.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/29.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
46
+ "title": "Triangles in Hexagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinhex_029.gif",
51
+ "image_seed_transform_error": 0.07906520028491007,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinhex_029_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinhex/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 3.665197390618569,
62
+ "x": 0.6667249012775238,
63
+ "y": -1.732195770703404
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 3.667253655144894,
68
+ "x": -0.7778413840254516,
69
+ "y": -1.5397734147449378
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 4.712394252117648,
74
+ "x": 1.1667445825097287,
75
+ "y": -1.4435043302803225
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 4.71239660655649,
80
+ "x": -1.2834841553824605,
81
+ "y": -1.2411938831450506
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 3.66524021720474,
86
+ "x": 5.2070430562864646e-05,
87
+ "y": -1.1547926807376838
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 4.712433625868684,
92
+ "x": -0.4999647899868076,
93
+ "y": -0.8660926249860716
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 4.712395870925038,
98
+ "x": 0.5000777324822264,
99
+ "y": -0.8660584957130968
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 3.665188565990848,
104
+ "x": 1.166757564143377,
105
+ "y": -0.8661165982162944
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 3.6652963909537633,
110
+ "x": -1.3076382929401682,
111
+ "y": -0.6220849731523806
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 4.712375349127926,
116
+ "x": 1.666782775623458,
117
+ "y": -0.5774315636171167
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 4.712388980915592,
122
+ "x": -1.8255988053370125,
123
+ "y": -0.30234798258472473
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 3.6652098765732455,
128
+ "x": -0.49998079870690504,
129
+ "y": -0.28869403410392175
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 3.6652240215166203,
134
+ "x": 0.5000772807492608,
135
+ "y": -0.28864725817795533
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 4.712419088019297,
140
+ "x": -1.0000581445965129,
141
+ "y": -7.910913243667383e-05
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 4.712414500665395,
146
+ "x": 2.8896876938680054e-05,
147
+ "y": 8.96161310326612e-06
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 4.712386426172176,
152
+ "x": 1.00011752061116,
153
+ "y": 5.082322500671238e-05
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 3.6651723113291372,
158
+ "x": 1.6667697515755708,
159
+ "y": -3.959474883877832e-05
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 3.6652655140328543,
164
+ "x": -1.6668195046342869,
165
+ "y": 0.5772735043866412
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 3.665296128469854,
170
+ "x": -0.6667722126036969,
171
+ "y": 0.5773603181229404
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 3.6652455138511524,
176
+ "x": 0.3334542480229951,
177
+ "y": 0.5774699929488396
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 4.712480642587485,
182
+ "x": -1.1668169733019502,
183
+ "y": 0.8660220966027544
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 4.712522005690144,
188
+ "x": -0.16673222622996173,
189
+ "y": 0.8660663355699691
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 4.712461385914044,
194
+ "x": 0.833551442514068,
195
+ "y": 0.8661214849178591
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 3.6652125417846095,
200
+ "x": 1.5001766196670236,
201
+ "y": 0.8660035707696212
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 3.6652288868500733,
206
+ "x": -1.1667632033624966,
207
+ "y": 1.4434299215727096
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 3.665248055109822,
212
+ "x": -0.16662914512863417,
213
+ "y": 1.443496258880088
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 3.6652824118089042,
218
+ "x": 0.8335424285369767,
219
+ "y": 1.4435081846685904
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 4.712452281039132,
224
+ "x": -0.6667418635307635,
225
+ "y": 1.732154827469734
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 4.7124722953216365,
230
+ "x": 0.33343836294055573,
231
+ "y": 1.732151839816985
232
+ }
233
+ ],
234
+ "problem": "29 equal items for Triangles in Hexagons",
235
+ "setup": "triinhex",
236
+ "source_image": "https://erich-friedman.github.io/packing/triinhex/29.gif",
237
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/"
238
+ }
data/solutions/generated/triinhex_30_7274d354e73d8050.json ADDED
@@ -0,0 +1,244 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinhex@30",
3
+ "container": {
4
+ "circumradius": 2.3752375092626914,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.375237509262691,
7
+ "sides": 6,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triinhex@30",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "19/8 = 2.375",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.375,
19
+ "reference_text": "s = 19/8 = 2.375 | Found by Ignacio Vallejo | in April 2026.",
20
+ "source_image": "30.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/30.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
23
+ "title": "Triangles in Hexagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triinhex@30",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "19/8 = 2.375",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.375,
42
+ "reference_text": "s = 19/8 = 2.375 | Found by Ignacio Vallejo | in April 2026.",
43
+ "source_image": "30.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/30.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
46
+ "title": "Triangles in Hexagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinhex_030.gif",
51
+ "image_seed_transform_error": 0.08866036628188438,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinhex_030_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinhex/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 0.5236024615256353,
62
+ "x": -0.16531613879444262,
63
+ "y": 1.7683251677172405
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 0.5235684875505077,
68
+ "x": 0.761172030870743,
69
+ "y": 1.640881451347363
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 0.5235940531679227,
74
+ "x": -0.926466706087235,
75
+ "y": 1.3545260299772537
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 1.5708414368291557,
80
+ "x": 0.2611283021742516,
81
+ "y": 1.352137772464477
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 1.570787415932771,
86
+ "x": 1.2612115433605073,
87
+ "y": 1.3521606311897654
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.5708043869131756,
92
+ "x": -1.4265117651186978,
93
+ "y": 1.0658451505826367
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 1.5706537394911293,
98
+ "x": -0.4486767889027817,
99
+ "y": 0.8492715348020606
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 0.5237231532437681,
104
+ "x": 0.2612273194406181,
105
+ "y": 0.7747133904728231
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 0.523679758690107,
110
+ "x": 1.2612161191097533,
111
+ "y": 0.774715832549322
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 0.523616916062185,
116
+ "x": -1.3237969030624401,
117
+ "y": 0.4884275386811713
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 1.5709160108946358,
122
+ "x": 0.7611977044229656,
123
+ "y": 0.4859208495548361
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 1.570803053123229,
128
+ "x": 1.7612834244906543,
129
+ "y": 0.48601675336692857
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 0.5231509765327622,
134
+ "x": -0.4485298011769693,
135
+ "y": 0.2717279358470374
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 1.5708436013591571,
140
+ "x": -1.8238649560693914,
141
+ "y": 0.19976408744997057
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 1.5704250363679098,
146
+ "x": -0.9486034936045054,
147
+ "y": -0.01696520664656906
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 1.5702851760683243,
152
+ "x": 0.05142655683157915,
153
+ "y": -0.017145324836339588
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 0.5236179292474522,
158
+ "x": 0.7611759746454659,
159
+ "y": -0.09151442661599754
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 0.523612727497477,
164
+ "x": 1.7612948249895672,
165
+ "y": -0.09136822019550746
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 0.5236110464757462,
170
+ "x": -1.8238329986972994,
171
+ "y": -0.37766389843713005
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 1.5708034106574793,
176
+ "x": 1.2612819120677976,
177
+ "y": -0.380066218963497
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 0.5229549832792453,
182
+ "x": -0.9489674047233988,
183
+ "y": -0.594495474973263
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 0.5229560055506248,
188
+ "x": 0.05140150000192632,
189
+ "y": -0.5945936031662065
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 1.5701573240426598,
194
+ "x": -0.44880868192130824,
195
+ "y": -0.882971076661984
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 1.5701528176809048,
200
+ "x": 0.5513326137292761,
201
+ "y": -0.8834565128926243
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 0.5236098915152967,
206
+ "x": 1.489116512133941,
207
+ "y": -0.9574432142332557
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 0.5235758899579016,
212
+ "x": -1.1986030025687893,
213
+ "y": -1.4605717317299676
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 0.5235862933529335,
218
+ "x": -0.19854295042499104,
219
+ "y": -1.460669174757606
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 0.5235893153677342,
224
+ "x": 0.7905656599761707,
225
+ "y": -1.479638461488862
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 1.570800610384266,
230
+ "x": -0.6985787757554408,
231
+ "y": -1.7493392744669953
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 1.5707888915419406,
236
+ "x": 0.2905412295045868,
237
+ "y": -1.7683281893269018
238
+ }
239
+ ],
240
+ "problem": "30 equal items for Triangles in Hexagons",
241
+ "setup": "triinhex",
242
+ "source_image": "https://erich-friedman.github.io/packing/triinhex/30.gif",
243
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/"
244
+ }
data/solutions/generated/triinhex_31_cae7087451040120.json ADDED
@@ -0,0 +1,250 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinhex@31",
3
+ "container": {
4
+ "circumradius": 2.401165894947143,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.4011658949471424,
7
+ "sides": 6,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triinhex@31",
13
+ "credit": "Emerson Connelly",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "12/5 = 2.400",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.4,
19
+ "reference_text": "s = 12/5 = 2.400 | Found by Emerson Connelly | in April 2026.",
20
+ "source_image": "31.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/31.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
23
+ "title": "Triangles in Hexagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.000040000600004,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triinhex@31",
36
+ "credit": "Emerson Connelly",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "12/5 = 2.400",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.4,
42
+ "reference_text": "s = 12/5 = 2.400 | Found by Emerson Connelly | in April 2026.",
43
+ "source_image": "31.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/31.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
46
+ "title": "Triangles in Hexagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinhex_031.gif",
51
+ "image_seed_transform_error": 0.11402163884943653,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinhex_031_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinhex/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 3.665073467012074,
62
+ "x": -0.30004449878073086,
63
+ "y": -1.7907334858069508
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 3.665373851814226,
68
+ "x": 0.6993545425031253,
69
+ "y": -1.7897413484793818
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 4.712276860770374,
74
+ "x": -0.8000865963271804,
75
+ "y": -1.5020959022118887
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 4.7122480752095655,
80
+ "x": 0.19927452071929397,
81
+ "y": -1.5008198521114393
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 4.712596663971039,
86
+ "x": 1.1995241773850511,
87
+ "y": -1.5012913736283808
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 4.712391432628697,
92
+ "x": -1.5003507422671452,
93
+ "y": -0.9828965423402516
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 3.662899486169442,
98
+ "x": -0.6003512492736938,
99
+ "y": -0.9220435216969336
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 3.662891216010302,
104
+ "x": 0.39881808923614837,
105
+ "y": -0.9228278644636817
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 3.6627762464310094,
110
+ "x": 1.2998716016457441,
111
+ "y": -0.752781664713497
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 4.71009058647355,
116
+ "x": -0.10049882286020893,
117
+ "y": -0.6329445877498705
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 4.709972788923857,
122
+ "x": 0.8005556831472604,
123
+ "y": -0.4628866175389765
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 3.6651974829876295,
128
+ "x": -1.3019331454266294,
129
+ "y": -0.405527934014136
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 4.699327406750283,
134
+ "x": 1.8919557842248376,
135
+ "y": -0.29160436767544695
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 4.712403078880604,
140
+ "x": -1.801952721163738,
141
+ "y": -0.1168441035890238
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 4.712397748582401,
146
+ "x": -0.8022327462831418,
147
+ "y": -0.11629460276788173
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 3.6628615076657987,
152
+ "x": -0.09912753924379109,
153
+ "y": -0.05555172881017699
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 3.6627409778939803,
158
+ "x": 0.9969629832768776,
159
+ "y": 0.11401794642922308
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 3.6628177550804053,
164
+ "x": 1.8969727019506635,
165
+ "y": 0.2912979582421767
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 4.7099355019298805,
170
+ "x": 0.49764048662443017,
171
+ "y": 0.4039045940403234
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 3.6652716573980775,
176
+ "x": -0.8015563591985803,
177
+ "y": 0.4611124125134382
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 3.6652872571911157,
182
+ "x": -1.801598290154982,
183
+ "y": 0.4610271835031015
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 4.709940006505709,
188
+ "x": 1.395900661067264,
189
+ "y": 0.5787756539869928
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 4.712479110358074,
194
+ "x": -1.3016048582640436,
195
+ "y": 0.7497639743258298
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 4.712469603013688,
200
+ "x": -0.3021067327537345,
201
+ "y": 0.7507825970030675
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 3.66275837238857,
206
+ "x": 0.4990626032933963,
207
+ "y": 0.9812854464508096
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 3.6651822670926397,
212
+ "x": 1.399618434815763,
213
+ "y": 1.1573602883340692
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 3.665267429428551,
218
+ "x": -0.3009875526470956,
219
+ "y": 1.3281553931971646
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 3.665250032098291,
224
+ "x": -1.3010197402073567,
225
+ "y": 1.3280831068494812
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 4.712378377618232,
230
+ "x": 0.8996011299695978,
231
+ "y": 1.4460477428416376
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 4.71245779234519,
236
+ "x": -0.8010186864764285,
237
+ "y": 1.6168143474560532
238
+ },
239
+ {
240
+ "id": 31,
241
+ "rotation_radians": 4.712433758172602,
242
+ "x": 0.09860280474357018,
243
+ "y": 1.7907729464282665
244
+ }
245
+ ],
246
+ "problem": "31 equal items for Triangles in Hexagons",
247
+ "setup": "triinhex",
248
+ "source_image": "https://erich-friedman.github.io/packing/triinhex/31.gif",
249
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/"
250
+ }
data/solutions/generated/triinhex_35_ec49778cf450c37b.json ADDED
@@ -0,0 +1,274 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinhex@35",
3
+ "container": {
4
+ "circumradius": 2.500225007500126,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.5002250075001258,
7
+ "sides": 6,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triinhex@35",
13
+ "credit": "Emerson Connelly",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "5/2 = 2.500",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.5,
19
+ "reference_text": "s = 5/2 = 2.500 | Found by Emerson Connelly | in April 2026.",
20
+ "source_image": "35.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/35.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
23
+ "title": "Triangles in Hexagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000500010000102,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triinhex@35",
36
+ "credit": "Emerson Connelly",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "5/2 = 2.500",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.5,
42
+ "reference_text": "s = 5/2 = 2.500 | Found by Emerson Connelly | in April 2026.",
43
+ "source_image": "35.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/35.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
46
+ "title": "Triangles in Hexagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinhex_035.gif",
51
+ "image_seed_transform_error": 0.1187725404681634,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinhex_035_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinhex/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 0.5237899899351183,
62
+ "x": 0.24974688743585216,
63
+ "y": 1.8764751654709337
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 0.5237892613640218,
68
+ "x": -0.7501693993983293,
69
+ "y": 1.8764731504976668
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 1.5709887688142363,
74
+ "x": -0.25020706462325976,
75
+ "y": 1.5876915228725905
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 1.5709193012339506,
80
+ "x": -1.2501700190454315,
81
+ "y": 1.587680271582359
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 0.5237924610532934,
86
+ "x": 0.9999744181672026,
87
+ "y": 1.4437734019447968
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.5709666622646101,
92
+ "x": 1.4999536277475127,
93
+ "y": 1.1549797872959293
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 1.570990107060941,
98
+ "x": 0.5000124564427876,
99
+ "y": 1.1549859655017476
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 0.5237087546576058,
104
+ "x": -1.2502239654726013,
105
+ "y": 1.010302594546181
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 0.5237748067313901,
110
+ "x": -0.25018647019209656,
111
+ "y": 1.010314622941824
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 1.5709231379672712,
116
+ "x": -0.7502119509255958,
117
+ "y": 0.7215931929609399
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 1.5709068997170295,
122
+ "x": -1.750225904708101,
123
+ "y": 0.7215605643093267
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 0.5238014091451908,
128
+ "x": 0.500081257120321,
129
+ "y": 0.5776142336029993
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 0.5237991320531485,
134
+ "x": 1.5000441257218105,
135
+ "y": 0.5775924566023826
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 1.5709985581723371,
140
+ "x": 9.483964724918748e-05,
141
+ "y": 0.2888653604518411
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 1.5709941958040614,
146
+ "x": 2.0000119073221625,
147
+ "y": 0.2888094884454761
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 1.5710059394350158,
152
+ "x": 1.0000634768969159,
153
+ "y": 0.28881978686765614
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 0.5237264960270037,
158
+ "x": -0.7501477826577212,
159
+ "y": 0.1442172957994374
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 0.5236992907574637,
164
+ "x": -1.7502858312482121,
165
+ "y": 0.14418290333257985
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 1.5708624325201246,
170
+ "x": -1.2502147796303953,
171
+ "y": -0.144455651317609
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 0.5238273570284746,
176
+ "x": 1.0001785691969778,
177
+ "y": -0.28857797679178765
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 0.5237951565909154,
182
+ "x": 2.0001343418268576,
183
+ "y": -0.2885766680385771
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 0.5238187309187297,
188
+ "x": 6.110880238823266e-05,
189
+ "y": -0.2885228452069664
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 1.5709970682287189,
194
+ "x": 1.5001671131734085,
195
+ "y": -0.5773627206498123
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 1.571030580238898,
200
+ "x": 0.5001079356060586,
201
+ "y": -0.5771956919803592
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 0.523591485296123,
206
+ "x": -0.7500290790403908,
207
+ "y": -0.7218416753506864
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 0.5235943012851411,
212
+ "x": -1.7501012857641178,
213
+ "y": -0.7218758402021996
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 1.5707904442929175,
218
+ "x": -0.2498931902664811,
219
+ "y": -1.0103370826949163
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 1.5707847867928177,
224
+ "x": -1.2500534373891257,
225
+ "y": -1.0105217231357495
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 0.5238227555548219,
230
+ "x": 0.5002220869698847,
231
+ "y": -1.1545786076338467
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 0.5237977914001424,
236
+ "x": 1.5000709564238341,
237
+ "y": -1.154741995721168
238
+ },
239
+ {
240
+ "id": 31,
241
+ "rotation_radians": 1.5710121849450969,
242
+ "x": 1.0000990408569537,
243
+ "y": -1.4435349191207671
244
+ },
245
+ {
246
+ "id": 32,
247
+ "rotation_radians": 0.5235856693654414,
248
+ "x": -1.2500486635188623,
249
+ "y": -1.587893693916775
250
+ },
251
+ {
252
+ "id": 33,
253
+ "rotation_radians": 0.5235953654727424,
254
+ "x": -0.2498709888461184,
255
+ "y": -1.58771544407228
256
+ },
257
+ {
258
+ "id": 34,
259
+ "rotation_radians": 1.5708001184331795,
260
+ "x": 0.2500653698736513,
261
+ "y": -1.8765651486296575
262
+ },
263
+ {
264
+ "id": 35,
265
+ "rotation_radians": 1.5707772586558373,
266
+ "x": -0.7499234632022712,
267
+ "y": -1.876434369514981
268
+ }
269
+ ],
270
+ "problem": "35 equal items for Triangles in Hexagons",
271
+ "setup": "triinhex",
272
+ "source_image": "https://erich-friedman.github.io/packing/triinhex/35.gif",
273
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/"
274
+ }
data/solutions/generated/triinhex_39_a314b4bb8467e5e8.json ADDED
@@ -0,0 +1,298 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinhex@39",
3
+ "container": {
4
+ "circumradius": 2.667295114970451,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.6672951149704507,
7
+ "sides": 6,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triinhex@39",
13
+ "credit": "Emerson Connelly",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "8/3 = 2.666+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.666,
19
+ "reference_text": "s = 8/3 = 2.666+ | Found by Emerson Connelly | in April 2026.",
20
+ "source_image": "39.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/39.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
23
+ "title": "Triangles in Hexagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.000040000600004,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triinhex@39",
36
+ "credit": "Emerson Connelly",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "8/3 = 2.666+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.666,
42
+ "reference_text": "s = 8/3 = 2.666+ | Found by Emerson Connelly | in April 2026.",
43
+ "source_image": "39.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinhex/39.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/",
46
+ "title": "Triangles in Hexagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinhex_039.gif",
51
+ "image_seed_transform_error": 0.1266590371552492,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinhex_039_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinhex/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 3.664511640374251,
62
+ "x": -0.833864436427958,
63
+ "y": -2.020855857024538
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 3.6646673644917835,
68
+ "x": 0.16609629717330604,
69
+ "y": -2.0209968075653464
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 3.6669885861215645,
74
+ "x": 0.9817447554553592,
75
+ "y": -1.7017684743729118
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 4.711712244079814,
80
+ "x": -0.33388589854573364,
81
+ "y": -1.7320972881567804
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 4.711789178737689,
86
+ "x": -1.3337537162834212,
87
+ "y": -1.7317732391112373
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 4.714079747666601,
92
+ "x": 1.499515428289383,
93
+ "y": -1.4435951566605387
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 4.711672091126754,
98
+ "x": 0.4743027792478274,
99
+ "y": -1.3993308924888892
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 3.6645209195400654,
104
+ "x": -0.33430018978887754,
105
+ "y": -1.1547200541869282
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 3.6645058857452804,
110
+ "x": -1.3341765294061891,
111
+ "y": -1.1543146378855096
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 3.6668800149202023,
116
+ "x": 1.4986440358426878,
117
+ "y": -0.8662248160151016
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 4.712017213190575,
122
+ "x": -1.8342113201958112,
123
+ "y": -0.8652077776409737
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 4.711712409877791,
128
+ "x": -0.8341165502397512,
129
+ "y": -0.8656956258358461
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 3.6667756291608975,
134
+ "x": 0.468766513338324,
135
+ "y": -0.8137163473495883
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 4.714082207053984,
140
+ "x": 1.9985091851330252,
141
+ "y": -0.5772710336523516
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 4.713967419178762,
146
+ "x": 0.998888446671211,
147
+ "y": -0.576975825760772
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 4.711635884794676,
152
+ "x": -0.03637608861852676,
153
+ "y": -0.5152888462321301
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 3.664521879436704,
158
+ "x": -0.8344858727410974,
159
+ "y": -0.28832354871992877
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 3.664521883120447,
164
+ "x": -1.834522515177353,
165
+ "y": -0.2876874410390911
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 3.6666648604320056,
170
+ "x": 0.999880665146207,
171
+ "y": 0.0004456888766169809
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 4.711735375929072,
176
+ "x": -1.3343214970296862,
177
+ "y": 0.0006782139698448224
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 3.6666639524701576,
182
+ "x": 2.000755082774419,
183
+ "y": 0.00025270685850176745
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 3.6656383763278355,
188
+ "x": -0.1208428412219816,
189
+ "y": 0.20780895709771183
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 4.712837456597239,
194
+ "x": 0.4991519153840916,
195
+ "y": 0.2889052613666475
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 4.7138528234323,
200
+ "x": 1.500372015571175,
201
+ "y": 0.28831817565052614
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 3.6651570251906556,
206
+ "x": -1.000035769890774,
207
+ "y": 0.5781669810551321
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 3.6652088291808176,
212
+ "x": -2.0000305616360827,
213
+ "y": 0.5783670610890126
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 4.712343384777504,
218
+ "x": -0.47359280062136244,
219
+ "y": 0.8210965140042394
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 3.665189254745855,
224
+ "x": 1.8337251935036638,
225
+ "y": 0.8664166687677447
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 3.6651735245756725,
230
+ "x": 0.8336398847983983,
231
+ "y": 0.8665002621651702
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 4.712402374876271,
236
+ "x": -1.4999982441605022,
237
+ "y": 0.867018355385317
238
+ },
239
+ {
240
+ "id": 31,
241
+ "rotation_radians": 4.71237551746371,
242
+ "x": 1.3337025179673534,
243
+ "y": 1.155108057309894
244
+ },
245
+ {
246
+ "id": 32,
247
+ "rotation_radians": 4.712376392050636,
248
+ "x": 0.33358056060244684,
249
+ "y": 1.1551492932306233
250
+ },
251
+ {
252
+ "id": 33,
253
+ "rotation_radians": 3.665105860421336,
254
+ "x": -0.49095165718055755,
255
+ "y": 1.4285764731105488
256
+ },
257
+ {
258
+ "id": 34,
259
+ "rotation_radians": 3.6652180067801066,
260
+ "x": -1.5000130220853067,
261
+ "y": 1.4443970381479825
262
+ },
263
+ {
264
+ "id": 35,
265
+ "rotation_radians": 3.665191716023893,
266
+ "x": 1.3336945698508613,
267
+ "y": 1.732498758176082
268
+ },
269
+ {
270
+ "id": 36,
271
+ "rotation_radians": 4.712411683388445,
272
+ "x": -0.9985165182437191,
273
+ "y": 1.7305116010105714
274
+ },
275
+ {
276
+ "id": 37,
277
+ "rotation_radians": 3.6652041310599133,
278
+ "x": 0.3336294641282857,
279
+ "y": 1.732533294162868
280
+ },
281
+ {
282
+ "id": 38,
283
+ "rotation_radians": 4.712384169842458,
284
+ "x": -0.16635720672978108,
285
+ "y": 2.0212655399585295
286
+ },
287
+ {
288
+ "id": 39,
289
+ "rotation_radians": 4.712416741295126,
290
+ "x": 0.8336586778694013,
291
+ "y": 2.0212157583244967
292
+ }
293
+ ],
294
+ "problem": "39 equal items for Triangles in Hexagons",
295
+ "setup": "triinhex",
296
+ "source_image": "https://erich-friedman.github.io/packing/triinhex/39.gif",
297
+ "source_page": "https://erich-friedman.github.io/packing/triinhex/"
298
+ }
data/solutions/generated/triinoct_16_640352ab60961c58.json ADDED
@@ -0,0 +1,160 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinoct@16",
3
+ "container": {
4
+ "circumradius": 1.7585829641476434,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 1.3459611296375875,
7
+ "sides": 8,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinoct@16",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "March 2026",
15
+ "family_updated": "3/22/26",
16
+ "metric_expression": "1.34584+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 1.34584,
19
+ "reference_text": "s = 1.34584+ | Found by Ignacio Vallejo | in March 2026.",
20
+ "source_image": "16.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinoct/16.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/",
23
+ "title": "Triangles in Octagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000500010000102,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinoct@16",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "March 2026",
38
+ "family_updated": "3/22/26",
39
+ "metric_expression": "1.34584+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 1.34584,
42
+ "reference_text": "s = 1.34584+ | Found by Ignacio Vallejo | in March 2026.",
43
+ "source_image": "16.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinoct/16.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/",
46
+ "title": "Triangles in Octagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinoct_016.gif",
51
+ "image_seed_transform_error": 0.03902795442976851,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinoct_016_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinoct/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 1.1794624492443122,
62
+ "x": -0.1981829687130229,
63
+ "y": 1.2157405526630691
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 0.13297841898532367,
68
+ "x": 0.6518601044162577,
69
+ "y": 1.174981054857614
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 1.1800942242314165,
74
+ "x": 1.02361679526494,
75
+ "y": 0.709639487448712
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 0.1322613782691863,
80
+ "x": -0.3981373669412035,
81
+ "y": 0.6736486687789796
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 1.17949539194785,
86
+ "x": -0.9704349503470724,
87
+ "y": 0.5971948577381786
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.1792956303128366,
92
+ "x": 0.1503370644464469,
93
+ "y": 0.3670729175441285
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 0.1327759405693344,
98
+ "x": 0.7559232739696269,
99
+ "y": 0.1954183158247715
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 0.13196998490280498,
104
+ "x": -1.1907887629303848,
105
+ "y": 0.06333496474889484
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 0.1319885472692823,
110
+ "x": -0.06938966795672329,
111
+ "y": -0.16720962818731153
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 1.1791932136050796,
116
+ "x": -0.6418105240705142,
117
+ "y": -0.24287361740892538
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 1.1799843726482089,
122
+ "x": 1.1082829179164195,
123
+ "y": -0.2619673418946719
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 1.1803881463899528,
128
+ "x": 0.2829438700281439,
129
+ "y": -0.6256811933550266
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 0.13197901418058997,
134
+ "x": -0.8621865405721008,
135
+ "y": -0.7765281954634727
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 0.1331523312968782,
140
+ "x": 0.8883477885911127,
141
+ "y": -0.7960211022222723
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 0.13329179105381422,
146
+ "x": 0.06327215294568518,
147
+ "y": -1.1597604917071158
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 1.178748156863931,
152
+ "x": -0.5101481156863787,
153
+ "y": -1.2344454824245656
154
+ }
155
+ ],
156
+ "problem": "16 equal items for Triangles in Octagons",
157
+ "setup": "triinoct",
158
+ "source_image": "https://erich-friedman.github.io/packing/triinoct/16.gif",
159
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/"
160
+ }
data/solutions/generated/triinoct_27_c7748eb19b34ff2e.json ADDED
@@ -0,0 +1,226 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinoct@27",
3
+ "container": {
4
+ "circumradius": 2.2319154469777747,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 1.7082341279962368,
7
+ "sides": 8,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinoct@27",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "March 2026",
15
+ "family_updated": "3/22/26",
16
+ "metric_expression": "1.70882+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 1.70882,
19
+ "reference_text": "s = 1.70882+ | Found by Ignacio Vallejo | in March 2026.",
20
+ "source_image": "27.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinoct/27.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/",
23
+ "title": "Triangles in Octagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.000040000600004,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinoct@27",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "March 2026",
38
+ "family_updated": "3/22/26",
39
+ "metric_expression": "1.70882+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 1.70882,
42
+ "reference_text": "s = 1.70882+ | Found by Ignacio Vallejo | in March 2026.",
43
+ "source_image": "27.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinoct/27.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/",
46
+ "title": "Triangles in Octagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinoct_027.gif",
51
+ "image_seed_transform_error": 0.06039550865866634,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinoct_027_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinoct/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 4.0607856285713835,
62
+ "x": 0.44716801513446996,
63
+ "y": -1.7326553920196706
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 5.118069981785129,
68
+ "x": -0.13084674005548763,
69
+ "y": -1.6612199736358646
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 3.2694188897479695,
74
+ "x": -1.0072006008932297,
75
+ "y": -1.5005879171787104
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 3.7984279113882518,
80
+ "x": 1.1066368790198116,
81
+ "y": -1.1712723828750877
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 4.275249351081998,
86
+ "x": -0.45979530953470615,
87
+ "y": -1.0702080500190034
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 4.581492960944977,
92
+ "x": -1.5044991096057079,
93
+ "y": -1.0017578142099994
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 4.87485443156388,
98
+ "x": 0.5560089283643946,
99
+ "y": -0.9540598821032927
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 4.845635472466917,
104
+ "x": 1.5704541065243587,
105
+ "y": -0.8272315979348313
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 3.8523031735387927,
110
+ "x": 0.10658367033075429,
111
+ "y": -0.4350607687134116
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 3.7960678551296057,
116
+ "x": -1.1208484860160786,
117
+ "y": -0.3492484243709624
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 3.8520404438019455,
122
+ "x": 1.1043538718790797,
123
+ "y": -0.26684123184686737
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 4.899496547409917,
128
+ "x": -0.43844262541288875,
129
+ "y": -0.24444417529483423
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 4.8432753016746,
134
+ "x": -1.654305452243611,
135
+ "y": -0.1283351902761216
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 4.899547061383846,
140
+ "x": 0.5592939573677983,
141
+ "y": -0.07595192799968861
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 4.897233659181981,
146
+ "x": 1.6159200366302144,
147
+ "y": 0.05190995640497883
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 3.8523231674177585,
152
+ "x": -0.5458571073087904,
153
+ "y": 0.3228706705275736
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 3.7960967387024653,
158
+ "x": -1.7358141593903893,
159
+ "y": 0.4432905110976474
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 3.8523506644494243,
164
+ "x": 0.4518883285527034,
165
+ "y": 0.4913455253441227
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 4.876699139837066,
170
+ "x": -1.082714854472306,
171
+ "y": 0.5677767399945995
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 3.852160690401946,
176
+ "x": 1.508989751753749,
177
+ "y": 0.6203593012372066
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 4.8995254674197986,
182
+ "x": -0.09311066325702037,
183
+ "y": 0.6819733539266214
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 4.899527919442167,
188
+ "x": 0.9565682743244176,
189
+ "y": 0.7900818922539303
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 3.8295255302862983,
194
+ "x": -1.1700060354712678,
195
+ "y": 1.1385600846857915
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 3.852334087844847,
200
+ "x": -0.20047474048338773,
201
+ "y": 1.2492630562890026
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 3.8523239354835868,
206
+ "x": 0.8491793119148335,
207
+ "y": 1.3573789564641405
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 4.901685215395909,
212
+ "x": -0.719058325206496,
213
+ "y": 1.5187185093740454
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 4.89950107346516,
218
+ "x": 0.3041676315196334,
219
+ "y": 1.5480161079211934
220
+ }
221
+ ],
222
+ "problem": "27 equal items for Triangles in Octagons",
223
+ "setup": "triinoct",
224
+ "source_image": "https://erich-friedman.github.io/packing/triinoct/27.gif",
225
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/"
226
+ }
data/solutions/generated/triinoct_29_0575780ea85d68dd.json ADDED
@@ -0,0 +1,238 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinoct@29",
3
+ "container": {
4
+ "circumradius": 2.2936294293283517,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 1.7554679651779115,
7
+ "sides": 8,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinoct@29",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "March 2026",
15
+ "family_updated": "3/22/26",
16
+ "metric_expression": "1.75576+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 1.75576,
19
+ "reference_text": "s = 1.75576+ | Found by Ignacio Vallejo | in March 2026.",
20
+ "source_image": "29.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinoct/29.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/",
23
+ "title": "Triangles in Octagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000500010000102,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinoct@29",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "March 2026",
38
+ "family_updated": "3/22/26",
39
+ "metric_expression": "1.75576+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 1.75576,
42
+ "reference_text": "s = 1.75576+ | Found by Ignacio Vallejo | in March 2026.",
43
+ "source_image": "29.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinoct/29.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/",
46
+ "title": "Triangles in Octagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinoct_029.gif",
51
+ "image_seed_transform_error": 0.0764865704215557,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinoct_029_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinoct/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 2.365574208732059,
62
+ "x": -1.7633682527924637,
63
+ "y": -0.12109981362609205
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 2.3660341119988586,
68
+ "x": -1.4751257174843138,
69
+ "y": -1.0638556337564267
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 2.3631298599631747,
74
+ "x": -1.429082498257904,
75
+ "y": 0.6888041765144421
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 3.413237650802507,
80
+ "x": -1.3306765385746375,
81
+ "y": -0.5048473741884818
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 3.411253987699534,
86
+ "x": -1.2829666429836475,
87
+ "y": 1.2480422166916088
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 3.413224755800874,
92
+ "x": -1.062859794598633,
93
+ "y": -1.4680914086352634
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 3.410307275341443,
98
+ "x": -0.9981562712531972,
99
+ "y": 0.30347361571925274
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 2.365979949684211,
104
+ "x": -0.7730379163267715,
105
+ "y": -0.3549609124133491
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 2.3620405312940456,
110
+ "x": -0.7286401553158723,
111
+ "y": 1.4141313854473663
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 2.3660432798247775,
116
+ "x": -0.5050274905269256,
117
+ "y": -1.3188802147286496
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 2.363112638605458,
122
+ "x": -0.441129174345465,
123
+ "y": 0.4554083649189051
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 3.4132355097436156,
128
+ "x": -0.3611539757451813,
129
+ "y": -0.759620688473185
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 3.409210079441337,
134
+ "x": -0.30821224376286543,
135
+ "y": 1.0181352620874793
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 3.4132234672770454,
140
+ "x": -0.148772526080854,
141
+ "y": -1.7802498887872629
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 3.4131799602299875,
146
+ "x": -0.028447916872285484,
147
+ "y": 0.049529102295184875
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 2.3828630840586285,
152
+ "x": 0.09635400907288606,
153
+ "y": 1.7260173675750519
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 2.3660334451554106,
158
+ "x": 0.19504689850095816,
159
+ "y": -0.6047100023593637
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 2.3795625334729484,
164
+ "x": 0.3730158128459748,
165
+ "y": 0.7565298525117294
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 2.3651097750212497,
170
+ "x": 0.40794867737240276,
171
+ "y": -1.6254656701370032
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 3.4300936508281783,
176
+ "x": 0.5069451998246819,
177
+ "y": 1.3198789484772149
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 3.411342144196534,
182
+ "x": 0.5528086353980384,
183
+ "y": -1.0660540584413205
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 3.4265751332132695,
188
+ "x": 0.7867155930699732,
189
+ "y": 0.35359281074178406
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 2.288443057486158,
194
+ "x": 1.0246657923124547,
195
+ "y": -0.34400157317348223
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 2.382897119951848,
200
+ "x": 1.0683487228374007,
201
+ "y": 1.4575561910130364
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 2.2884007959893804,
206
+ "x": 1.2280634933012697,
207
+ "y": -1.316057930740197
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 2.379371270560128,
212
+ "x": 1.3458418823062286,
213
+ "y": 0.4987186061692642
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 3.3356355726767526,
218
+ "x": 1.4149360688357833,
219
+ "y": -0.769735656063574
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 3.430059618656843,
224
+ "x": 1.4873582016161981,
225
+ "y": 1.0602902232905362
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 3.365301381182778,
230
+ "x": 1.7410051950147203,
231
+ "y": 0.03674153955398882
232
+ }
233
+ ],
234
+ "problem": "29 equal items for Triangles in Octagons",
235
+ "setup": "triinoct",
236
+ "source_image": "https://erich-friedman.github.io/packing/triinoct/29.gif",
237
+ "source_page": "https://erich-friedman.github.io/packing/triinoct/"
238
+ }
data/solutions/generated/triinpen_19_eaa1430599d74148.json ADDED
@@ -0,0 +1,178 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinpen@19",
3
+ "container": {
4
+ "circumradius": 1.9965891518615606,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.3471313167027246,
7
+ "sides": 5,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinpen@19",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "March 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.344+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.344,
19
+ "reference_text": "s = 2.344+ | Found by Ignacio Vallejo | in March 2026.",
20
+ "source_image": "19.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/19.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
23
+ "title": "Triangles in Pentagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinpen@19",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "March 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.344+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.344,
42
+ "reference_text": "s = 2.344+ | Found by Ignacio Vallejo | in March 2026.",
43
+ "source_image": "19.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/19.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
46
+ "title": "Triangles in Pentagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinpen_019.gif",
51
+ "image_seed_transform_error": 0.19191760684266418,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinpen_019_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinpen/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -0.8234793182253294,
62
+ "x": 0.05193324028631625,
63
+ "y": -1.4041134957506725
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -1.8659030736407047,
68
+ "x": 0.6139178715157928,
69
+ "y": -1.2598284102090767
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -0.8362408010750045,
74
+ "x": -0.9098400282619911,
75
+ "y": -1.0984335935865666
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": -1.8752826906475113,
80
+ "x": -0.34121251223673377,
81
+ "y": -0.9769553904863927
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -0.8187693938167857,
86
+ "x": 0.7818758480883315,
87
+ "y": -0.7073755399766882
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -1.8732859495044414,
92
+ "x": -1.2239486102320254,
93
+ "y": -0.5968581451446181
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": -0.8284613511778325,
98
+ "x": -0.17895833801282918,
99
+ "y": -0.42049291477388573
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -1.693302831118469,
104
+ "x": 1.356599217407604,
105
+ "y": -0.37468801373585664
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -1.8659573038359094,
110
+ "x": 0.3874556349318665,
111
+ "y": -0.2857237978315825
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -0.8241582506432384,
116
+ "x": -1.052200671186023,
117
+ "y": -0.04460739654600229
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -1.8713740380914508,
122
+ "x": -0.48912877085835527,
123
+ "y": 0.0831105356515631
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": -0.6461075032218176,
128
+ "x": 1.359506179161483,
129
+ "y": 0.206705069928836
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": -0.894880041370937,
134
+ "x": 0.24346166415445583,
135
+ "y": 0.4546061595976151
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": -2.094408374148849,
140
+ "x": -1.326581778774887,
141
+ "y": 0.5831588805999424
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": -1.7853152857017165,
146
+ "x": 0.880041259499522,
147
+ "y": 0.6041288759034376
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": -0.14915149562665858,
152
+ "x": -0.33838373181431225,
153
+ "y": 0.9017623121215282
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": -1.192279479863792,
158
+ "x": -0.8991172890512648,
159
+ "y": 1.069508796528192
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": -0.41887752597761524,
164
+ "x": 0.6895777046074597,
165
+ "y": 1.3077984648144148
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": -1.2668941355882783,
170
+ "x": 0.022316811434672738,
171
+ "y": 1.3967408828433188
172
+ }
173
+ ],
174
+ "problem": "19 equal items for Triangles in Pentagons",
175
+ "setup": "triinpen",
176
+ "source_image": "https://erich-friedman.github.io/packing/triinpen/19.gif",
177
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/"
178
+ }
data/solutions/generated/triinpen_24_7bc3466b163ec849.json ADDED
@@ -0,0 +1,208 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinpen@24",
3
+ "container": {
4
+ "circumradius": 2.2691968428228604,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.667600877519837,
7
+ "sides": 5,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinpen@24",
13
+ "credit": "Ian Watson",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.66641+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.66641,
19
+ "reference_text": "s = 2.66641+ | Found by Ian Watson | in April 2026.",
20
+ "source_image": "24.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/24.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
23
+ "title": "Triangles in Pentagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000800028000563,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinpen@24",
36
+ "credit": "Ian Watson",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.66641+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.66641,
42
+ "reference_text": "s = 2.66641+ | Found by Ian Watson | in April 2026.",
43
+ "source_image": "24.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/24.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
46
+ "title": "Triangles in Pentagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinpen_024.gif",
51
+ "image_seed_transform_error": 0.018608034921599067,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinpen_024_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinpen/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -1.3485999595384843,
62
+ "x": 0.5726425650344327,
63
+ "y": -1.5945156883075178
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -0.837774324027092,
68
+ "x": -0.2477773746687845,
69
+ "y": -1.546225213664531
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -0.8406342660765864,
74
+ "x": -1.20034300355604,
75
+ "y": -1.235209438103791
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": -1.8869408239159895,
80
+ "x": -0.6348367348665234,
81
+ "y": -1.116439837230664
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -0.3087681839938111,
86
+ "x": 0.44668190646999084,
87
+ "y": -1.0272519566720002
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -1.4723032408965526,
92
+ "x": 1.137978417855316,
93
+ "y": -0.9042453823637545
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": -2.0745334258419055,
98
+ "x": -1.5372463964812901,
99
+ "y": -0.6615778988564247
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -1.0735350019441532,
104
+ "x": -0.1585440950664832,
105
+ "y": -0.603760681786978
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -0.425059900662785,
110
+ "x": 1.0721116860100741,
111
+ "y": -0.33053305563007873
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -0.026348429992235422,
116
+ "x": -0.6354339375333459,
117
+ "y": -0.20561291520080166
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -1.4689772871640454,
122
+ "x": 1.6728743111619067,
123
+ "y": -0.16557198582571367
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": -1.0735317280052716,
128
+ "x": -1.2117558991973967,
129
+ "y": -0.15713398747691906
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": -1.4726046307481053,
134
+ "x": 0.5226012558426076,
135
+ "y": -0.14393110829955585
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": -1.2220337491348852,
140
+ "x": -0.2562570642944029,
141
+ "y": 0.3222511459630122
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": -0.02628695204468136,
146
+ "x": -1.534076048663414,
147
+ "y": 0.3249131162357333
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": -0.4216032562882053,
152
+ "x": 1.6136255468048581,
153
+ "y": 0.4088733380314143
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": -0.42541425558889695,
158
+ "x": 0.4660130643311063,
159
+ "y": 0.4307309643812987
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": -1.4670805939934077,
164
+ "x": 1.0840250751818414,
165
+ "y": 0.6411301024084238
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": -0.2908095392173122,
170
+ "x": -0.7294776053696012,
171
+ "y": 0.8240474271474436
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": -1.3381319182903597,
176
+ "x": -1.2826917717239108,
177
+ "y": 0.9896739768487287
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": -0.016592262228920664,
182
+ "x": 0.10729956988575423,
183
+ "y": 1.1677722568238782
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": -0.4167133036208107,
188
+ "x": 1.0265026155460162,
189
+ "y": 1.217265502118518
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": -1.2566368830567596,
194
+ "x": -0.5134545404638028,
195
+ "y": 1.4599051093583018
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": -1.063806056776173,
200
+ "x": 0.40425501378290485,
201
+ "y": 1.6629736817292402
202
+ }
203
+ ],
204
+ "problem": "24 equal items for Triangles in Pentagons",
205
+ "setup": "triinpen",
206
+ "source_image": "https://erich-friedman.github.io/packing/triinpen/24.gif",
207
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/"
208
+ }
data/solutions/generated/triinpen_25_d7a41b31b48a9cd4.json ADDED
@@ -0,0 +1,214 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinpen@25",
3
+ "container": {
4
+ "circumradius": 2.3164776953163666,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.7231828531428346,
7
+ "sides": 5,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinpen@25",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "March 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.720+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.72,
19
+ "reference_text": "s = 2.720+ | Found by Ignacio Vallejo | in March 2026.",
20
+ "source_image": "25.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/25.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
23
+ "title": "Triangles in Pentagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000500010000102,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinpen@25",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "March 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.720+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.72,
42
+ "reference_text": "s = 2.720+ | Found by Ignacio Vallejo | in March 2026.",
43
+ "source_image": "25.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/25.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
46
+ "title": "Triangles in Pentagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinpen_025.gif",
51
+ "image_seed_transform_error": 0.26774753136110585,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinpen_025_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinpen/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -0.8331431627979132,
62
+ "x": 0.35088197240747043,
63
+ "y": -1.7436500324539959
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -0.8395840171857828,
68
+ "x": -0.6567166577464769,
69
+ "y": -1.4521836109647233
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -1.6740174864835475,
74
+ "x": 0.9400937088582887,
75
+ "y": -1.4003513684181887
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": -1.906619877911736,
80
+ "x": -0.08013080264860134,
81
+ "y": -1.3375429625511637
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -0.3708586429169767,
86
+ "x": -1.412517682513755,
87
+ "y": -1.0038510340739184
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -0.6361531672128419,
92
+ "x": 1.0055993008653819,
93
+ "y": -0.8220169727526124
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": -1.4180496932393822,
98
+ "x": -0.9511246302449679,
99
+ "y": -0.6562948631032841
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -0.6041189321612249,
104
+ "x": -0.20611184884593445,
105
+ "y": -0.6308293293502127
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -1.6534106366360488,
110
+ "x": 0.4268262053849809,
111
+ "y": -0.6166919494691445
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -1.677922678713034,
116
+ "x": 1.5343251731016714,
117
+ "y": -0.5833519507850943
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -2.09439365973328,
122
+ "x": -1.5853834900317758,
123
+ "y": -0.14797135452410737
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": -0.6062150108651989,
128
+ "x": 0.47422462977707225,
129
+ "y": -0.04127179297062728
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": -0.6307319645033382,
134
+ "x": 1.59605627299372,
135
+ "y": -0.009292176854869454
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": -0.16973812882123201,
140
+ "x": -0.6786123526034543,
141
+ "y": 0.0650065520488466
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": -1.6533724519551978,
146
+ "x": 1.0088378733290932,
147
+ "y": 0.17919931599144756
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": -1.0516418436893853,
152
+ "x": -1.2948234352212922,
153
+ "y": 0.35353550986982374
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": -1.2169343723001482,
158
+ "x": -0.4325581093031977,
159
+ "y": 0.6112384967857353
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": -0.39576198766256304,
164
+ "x": 0.2910555514430116,
165
+ "y": 0.7955272616010468
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": -2.1015895992012643,
170
+ "x": -1.5805018959564905,
171
+ "y": 0.8576812797196661
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": -0.41107341019573074,
176
+ "x": 1.358041382675313,
177
+ "y": 0.8214198627870348
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": -1.458264018562611,
182
+ "x": 0.8287721822380882,
183
+ "y": 1.0521362134432943
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": -0.1697387297724123,
188
+ "x": -0.5085410012062068,
189
+ "y": 1.1986757937294785
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": -1.2201550949384805,
194
+ "x": -1.0817775531298819,
195
+ "y": 1.2957525628098012
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": -1.2788764620044561,
200
+ "x": -0.0736726058886811,
201
+ "y": 1.6294515726892476
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": -0.4110622141706642,
206
+ "x": 0.7728429546560185,
207
+ "y": 1.6268576870231717
208
+ }
209
+ ],
210
+ "problem": "25 equal items for Triangles in Pentagons",
211
+ "setup": "triinpen",
212
+ "source_image": "https://erich-friedman.github.io/packing/triinpen/25.gif",
213
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/"
214
+ }
data/solutions/generated/triinpen_30_29e4e0e684891d8a.json ADDED
@@ -0,0 +1,244 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinpen@30",
3
+ "container": {
4
+ "circumradius": 2.5114225358647224,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.9523542577124973,
7
+ "sides": 5,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinpen@30",
13
+ "credit": "Ignacio Vallejo",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.952+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.952,
19
+ "reference_text": "s = 2.952+ | Found by Ignacio Vallejo | in April 2026.",
20
+ "source_image": "30.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/30.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
23
+ "title": "Triangles in Pentagons"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000800028000563,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinpen@30",
36
+ "credit": "Ignacio Vallejo",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.952+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.952,
42
+ "reference_text": "s = 2.952+ | Found by Ignacio Vallejo | in April 2026.",
43
+ "source_image": "30.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinpen/30.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/",
46
+ "title": "Triangles in Pentagons"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinpen_030.gif",
51
+ "image_seed_transform_error": 0.02712819042244896,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinpen_030_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinpen/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 1.257791018520027,
62
+ "x": 0.5982822415639047,
63
+ "y": 1.8391629067344863
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 0.8419654445488478,
68
+ "x": -0.25516146063113654,
69
+ "y": 1.7476752872056927
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 0.861402581881756,
74
+ "x": -1.1956430685796726,
75
+ "y": 1.4319778653845623
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 1.9041670625105545,
80
+ "x": -0.6309162438150439,
81
+ "y": 1.299386107003686
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 0.2097516435986189,
86
+ "x": 0.4201157592822993,
87
+ "y": 1.2895037778099498
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.6683826585410848,
92
+ "x": 1.2342386803932806,
93
+ "y": 1.2606829934258466
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 0.022472725088869928,
98
+ "x": -1.714526216303487,
99
+ "y": 0.9884101423815562
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 1.080458163638164,
104
+ "x": -0.15045403570112909,
105
+ "y": 0.7962662877193506
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 0.6210992151303648,
110
+ "x": 1.2703822362780652,
111
+ "y": 0.6840218318093749
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 1.5426010457019435,
116
+ "x": 0.6300070607282666,
117
+ "y": 0.5274819398943387
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 1.0696798797423397,
122
+ "x": -1.4146465572724576,
123
+ "y": 0.4949835040502392
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 1.6507204764760577,
128
+ "x": 1.8096127518083112,
129
+ "y": 0.45387625959397465
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 0.0992117892680318,
134
+ "x": -0.7986303124470505,
135
+ "y": 0.451115385927003
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 0.022486506288052852,
140
+ "x": -1.7319294346219425,
141
+ "y": 0.010434936071944286
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 0.19261202686932605,
146
+ "x": -0.013621319058615144,
147
+ "y": -0.0483241414230993
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 0.3701568951568256,
152
+ "x": 0.9342862810567322,
153
+ "y": -0.12208745860001835
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 1.2398776328812477,
158
+ "x": -0.5789320284227876,
159
+ "y": -0.1662530684250952
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 0.39082631224979947,
164
+ "x": 1.9716051575010156,
165
+ "y": -0.2117631513542402
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 1.4380295095031497,
170
+ "x": 1.4376380517854703,
171
+ "y": -0.431719758028035
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 1.069681751498171,
176
+ "x": -1.4320573474992884,
177
+ "y": -0.48298410843703804
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 1.2398093034810067,
182
+ "x": 0.36546022839421216,
183
+ "y": -0.4838554001589591
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 0.1947803559922712,
188
+ "x": -0.7672573478142417,
189
+ "y": -0.7270698915723204
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 0.022511536063277684,
194
+ "x": -1.7318192157472778,
195
+ "y": -0.9771252517354484
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 0.3908318998301994,
200
+ "x": 1.4037824743388232,
201
+ "y": -1.009716505039311
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 0.19863052404414241,
206
+ "x": 0.17815851967962548,
207
+ "y": -1.033748797134234
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 1.2416758320231436,
212
+ "x": -0.3854204963617531,
213
+ "y": -1.1704185115580843
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 1.4380219666710516,
218
+ "x": 0.8699312399549503,
219
+ "y": -1.2296820961646315
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 1.256628585870818,
224
+ "x": -1.213831750257139,
225
+ "y": -1.438396809381844
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 0.39083287296455327,
230
+ "x": 0.8194463687985978,
231
+ "y": -1.8054596186481664
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 1.2556953686955536,
236
+ "x": 0.1298266788098009,
237
+ "y": -1.8717458383539574
238
+ }
239
+ ],
240
+ "problem": "30 equal items for Triangles in Pentagons",
241
+ "setup": "triinpen",
242
+ "source_image": "https://erich-friedman.github.io/packing/triinpen/30.gif",
243
+ "source_page": "https://erich-friedman.github.io/packing/triinpen/"
244
+ }
data/solutions/generated/triinsqu_10_5b0eaf84f54fe48c.json ADDED
@@ -0,0 +1,124 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinsqu@10",
3
+ "container": {
4
+ "circumradius": 1.6809609047175382,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.3772377092704904,
7
+ "sides": 4,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinsqu@10",
13
+ "credit": "David W",
14
+ "date": "July 2002",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.377+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.377,
19
+ "reference_text": "s = 2.377+ | Found by David W. Cantrell | in July 2002.",
20
+ "source_image": "t10.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t10.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
23
+ "title": "Triangles in Squares"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinsqu@10",
36
+ "credit": "David W",
37
+ "date": "July 2002",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.377+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.377,
42
+ "reference_text": "s = 2.377+ | Found by David W. Cantrell | in July 2002.",
43
+ "source_image": "t10.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t10.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
46
+ "title": "Triangles in Squares"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinsqu_010.gif",
51
+ "image_seed_transform_error": 2.707242505775539e-16,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinsqu_010_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinsqu/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 1.308985064767752,
62
+ "x": -0.27794719030982695,
63
+ "y": 0.9947539230027213
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 1.955178788048696,
68
+ "x": 0.4440646321481831,
69
+ "y": 0.7452481397177833
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 0.26180221150823135,
74
+ "x": -0.42740742300669543,
75
+ "y": 0.43700741893265777
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 1.3090244797838342,
80
+ "x": -0.9851214242224371,
81
+ "y": 0.2875516602455915
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 0.9080792876924499,
86
+ "x": 0.5373081909346326,
87
+ "y": 0.16010090682141648
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.955270520505862,
92
+ "x": 1.1091226237932865,
93
+ "y": 0.08001888675945196
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 0.677434884494812,
98
+ "x": -0.7579375678905592,
99
+ "y": -0.44093798695167374
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 1.7245709590750349,
104
+ "x": -0.1769968692759869,
105
+ "y": -0.5397764869409933
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 0.2618001659706557,
110
+ "x": 0.6314820977789997,
111
+ "y": -0.6412179375842701
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 0.6774638052346492,
116
+ "x": -0.0885312744105007,
117
+ "y": -1.110366621682777
118
+ }
119
+ ],
120
+ "problem": "10 equal items for Triangles in Squares",
121
+ "setup": "triinsqu",
122
+ "source_image": "https://erich-friedman.github.io/packing/triinsqu/t10.gif",
123
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/"
124
+ }
data/solutions/generated/triinsqu_13_7628e283de25ee68.json ADDED
@@ -0,0 +1,142 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinsqu@13",
3
+ "container": {
4
+ "circumradius": 1.8353309359550882,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 2.595549901070592,
7
+ "sides": 4,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinsqu@13",
13
+ "credit": "David W",
14
+ "date": "July 2002",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "2.595+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 2.595,
19
+ "reference_text": "s = 2.595+ | Found by David W. Cantrell | in July 2002.",
20
+ "source_image": "t13.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t13.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
23
+ "title": "Triangles in Squares"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinsqu@13",
36
+ "credit": "David W",
37
+ "date": "July 2002",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "2.595+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 2.595,
42
+ "reference_text": "s = 2.595+ | Found by David W. Cantrell | in July 2002.",
43
+ "source_image": "t13.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t13.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
46
+ "title": "Triangles in Squares"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinsqu_013.gif",
51
+ "image_seed_transform_error": 2.327997847980024e-16,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinsqu_013_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinsqu/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 4.468528422254128,
62
+ "x": 0.13942942224715082,
63
+ "y": -1.2750079192475021
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 4.974187330836345,
68
+ "x": -0.5703272166278136,
69
+ "y": -0.8567308093432104
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 3.43377089748683,
74
+ "x": 0.3045021582492138,
75
+ "y": -0.7147063468804329
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 4.477445157233715,
80
+ "x": 0.8593936654699389,
81
+ "y": -0.5487919577641657
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 3.927000215311017,
86
+ "x": -0.7198190580220029,
87
+ "y": -0.29897064587529637
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 4.974205460919863,
92
+ "x": -1.2775728946526788,
93
+ "y": -0.14941107645864005
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 4.974191604185533,
98
+ "x": -0.14627248823585123,
99
+ "y": -0.05597003703164697
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 3.926468471931825,
104
+ "x": 1.2714089286429957,
105
+ "y": 0.15527837619255375
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 4.966658737067106,
110
+ "x": 0.710920367706504,
111
+ "y": 0.3079094268283681
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 3.403822139316798,
116
+ "x": -0.856487685793465,
117
+ "y": 0.5702431409437627
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 4.4510799653102175,
122
+ "x": -0.2987803085526115,
123
+ "y": 0.719874925468614
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 3.9238717729532597,
128
+ "x": 0.5578745042273364,
129
+ "y": 0.8669705100795495
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 3.4038845577375336,
134
+ "x": -0.14914994230393525,
135
+ "y": 1.2775613124288179
136
+ }
137
+ ],
138
+ "problem": "13 equal items for Triangles in Squares",
139
+ "setup": "triinsqu",
140
+ "source_image": "https://erich-friedman.github.io/packing/triinsqu/t13.gif",
141
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/"
142
+ }
data/solutions/generated/triinsqu_32_f42801b713b9238d.json ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinsqu@32",
3
+ "container": {
4
+ "circumradius": 2.8258720673212823,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 3.996386603137053,
7
+ "sides": 4,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinsqu@32",
13
+ "credit": "Emerson Connelly",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "3.997+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 3.997,
19
+ "reference_text": "32. | | s = 3.997+ | Found by Emerson Connelly | in April 2026.",
20
+ "source_image": "t32.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t32.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
23
+ "title": "Triangles in Squares"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000800028000563,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinsqu@32",
36
+ "credit": "Emerson Connelly",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "3.997+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 3.997,
42
+ "reference_text": "32. | | s = 3.997+ | Found by Emerson Connelly | in April 2026.",
43
+ "source_image": "t32.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t32.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
46
+ "title": "Triangles in Squares"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinsqu_032.gif",
51
+ "image_seed_transform_error": 4.34913614441221e-16,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinsqu_032_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinsqu/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 1.829223614183747,
62
+ "x": 0.14756134425074285,
63
+ "y": 2.267654742679744
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 1.3090514691262451,
68
+ "x": -0.5600957003524738,
69
+ "y": 1.8574603650654955
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 0.781506588931676,
74
+ "x": 0.29506613871729775,
75
+ "y": 1.7091549030793636
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 1.8286993696880607,
80
+ "x": 0.8506931897679837,
81
+ "y": 1.5520108194927336
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 0.2632758159904948,
86
+ "x": -0.5493609086491373,
87
+ "y": 1.2563411020325932
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.31047811605255,
92
+ "x": -1.1071952015962634,
93
+ "y": 1.1073243784789673
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 1.8180698849906627,
98
+ "x": 0.1895644103060203,
99
+ "y": 0.9882085182054203
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 0.7831836150077403,
104
+ "x": 0.9985828420624281,
105
+ "y": 0.9928315493262397
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 1.8325848005612433,
110
+ "x": 1.560988359612297,
111
+ "y": 0.8566078836780445
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 1.3090436629317241,
116
+ "x": -1.857248245852845,
117
+ "y": 0.5603245840210946
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 0.2621463226828343,
122
+ "x": -1.255503056124935,
123
+ "y": 0.5465967722170842
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 1.3138167664434004,
128
+ "x": -0.49729027069798015,
129
+ "y": 0.48841821336511926
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 0.7708683596443606,
134
+ "x": 0.330864030088868,
135
+ "y": 0.42837748597384245
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 0.7853935142530197,
140
+ "x": 1.710429610853887,
141
+ "y": 0.2988945006586906
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 1.8129397402939864,
146
+ "x": 0.8884694497478871,
147
+ "y": 0.2688454171697346
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 1.8325820606589867,
152
+ "x": 2.268150049039302,
153
+ "y": 0.14944825474503814
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 0.7896383652428284,
158
+ "x": -2.2668504625694528,
159
+ "y": -0.1477477615865916
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 0.7685176563879951,
164
+ "x": -0.9625389597179431,
165
+ "y": -0.2004256869781994
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 1.8374549631137176,
170
+ "x": -1.7081504438735666,
171
+ "y": -0.29471839345833256
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 1.815466421445666,
176
+ "x": -0.40673223510921136,
177
+ "y": -0.35732383630411085
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 0.725123098692067,
182
+ "x": 0.48569900002327177,
183
+ "y": -0.4233513464961976
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 1.3213173291905973,
188
+ "x": 1.2527161568171445,
189
+ "y": -0.5462244982574493
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 0.26182249110807226,
194
+ "x": 1.8598969478853957,
195
+ "y": -0.5577073691467687
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 0.7902580055089944,
200
+ "x": -1.5538711804781817,
201
+ "y": -0.8511266950967369
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 0.7572980959342634,
206
+ "x": -0.25329755196994097,
207
+ "y": -0.9197706120142942
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 1.8327444099525059,
212
+ "x": -0.9922024164203549,
213
+ "y": -0.9992502645719826
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 1.772316353260676,
218
+ "x": 0.31254021706534013,
219
+ "y": -1.098531141637878
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 0.2800356496283007,
224
+ "x": 1.1110953906090326,
225
+ "y": -1.1090247795888948
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 0.7854344413002491,
230
+ "x": -0.8566443824653673,
231
+ "y": -1.5609230764097903
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 1.832632828270701,
236
+ "x": -0.2989333933048271,
237
+ "y": -1.7103976782280275
238
+ },
239
+ {
240
+ "id": 31,
241
+ "rotation_radians": 0.2554893693205459,
242
+ "x": 0.5580508207287599,
243
+ "y": -1.8550916406970819
244
+ },
245
+ {
246
+ "id": 32,
247
+ "rotation_radians": 0.785349401416876,
248
+ "x": -0.1494128596873135,
249
+ "y": -2.2681431497148266
250
+ }
251
+ ],
252
+ "problem": "32 equal items for Triangles in Squares",
253
+ "setup": "triinsqu",
254
+ "source_image": "https://erich-friedman.github.io/packing/triinsqu/t32.gif",
255
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/"
256
+ }
data/solutions/generated/triinsqu_33_a6f49f2f24228d1b.json ADDED
@@ -0,0 +1,262 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinsqu@33",
3
+ "container": {
4
+ "circumradius": 2.8696820121015176,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 4.058343221212078,
7
+ "sides": 4,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinsqu@33",
13
+ "credit": "Emerson Connelly",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "4.058+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 4.058,
19
+ "reference_text": "33. | | s = 4.058+ | Found by Emerson Connelly | in April 2026.",
20
+ "source_image": "t33.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t33.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
23
+ "title": "Triangles in Squares"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000700021000353,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinsqu@33",
36
+ "credit": "Emerson Connelly",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "4.058+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 4.058,
42
+ "reference_text": "33. | | s = 4.058+ | Found by Emerson Connelly | in April 2026.",
43
+ "source_image": "t33.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t33.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
46
+ "title": "Triangles in Squares"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinsqu_033.gif",
51
+ "image_seed_transform_error": 4.776843691548918e-16,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinsqu_033_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinsqu/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 4.9741864577723955,
62
+ "x": -0.1497887601653326,
63
+ "y": -2.3116210510448347
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 4.450591442125476,
68
+ "x": 0.5575119795463754,
69
+ "y": -1.9039001357396519
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 3.9264885942792356,
74
+ "x": -0.29915035243069404,
75
+ "y": -1.7536288393089965
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 4.973686316048105,
80
+ "x": -0.8517312261967772,
81
+ "y": -1.5850881696367338
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 3.4033911359940543,
86
+ "x": 0.6177228984089648,
87
+ "y": -1.3222827463994118
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 4.451314670840918,
92
+ "x": 1.1758380772985653,
93
+ "y": -1.1729426695144536
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 4.450656827186217,
98
+ "x": 0.09251386642639349,
99
+ "y": -1.029928376711197
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 3.81701887785157,
104
+ "x": -0.7206791990645144,
105
+ "y": -0.9209919946093398
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 4.974181294786698,
110
+ "x": -1.5640739536416726,
111
+ "y": -0.8973405851710046
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 3.4041295485640104,
116
+ "x": 1.3247876112410324,
117
+ "y": -0.6148126087400422
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 4.451326462636815,
122
+ "x": 1.9064398268108942,
123
+ "y": -0.5544522422022417
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 3.4031674413967985,
128
+ "x": 0.24287209712213223,
129
+ "y": -0.47230850297292815
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 3.9269879340396665,
134
+ "x": -1.7135115687250342,
135
+ "y": -0.3396299013331984
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 4.451336507864716,
140
+ "x": 0.8008716307040025,
141
+ "y": -0.32205415125566117
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 4.9741827426729115,
146
+ "x": -2.2712250753548644,
147
+ "y": -0.1901872646657436
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 4.413727079024094,
152
+ "x": -0.3010632627521668,
153
+ "y": -0.17401353088824908
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 4.97418641070255,
158
+ "x": -1.0970164905546107,
159
+ "y": -0.13957531117508185
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 3.928344656285631,
164
+ "x": 2.3031287981432786,
165
+ "y": 0.1563067738833769
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 4.977239885146695,
170
+ "x": 1.744222166255792,
171
+ "y": 0.3045789655155695
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 3.8174120921057395,
176
+ "x": 0.7279053164807823,
177
+ "y": 0.4294714706834222
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 4.865497128884639,
182
+ "x": 0.14831663437630305,
183
+ "y": 0.533225987724991
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 3.406050208158948,
188
+ "x": -1.926074070350323,
189
+ "y": 0.5334799681809635
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 3.4064391598423853,
194
+ "x": -0.6379180336457195,
195
+ "y": 0.5538759238559805
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 4.45325008912819,
200
+ "x": -1.358862771550588,
201
+ "y": 0.6478423656800386
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 3.930041913581658,
206
+ "x": 1.5964947464520576,
207
+ "y": 0.8627581689700429
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 4.974191711695805,
212
+ "x": 1.0370786422862466,
213
+ "y": 1.0117331568347614
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 3.821470562424443,
218
+ "x": 0.059112339236436044,
219
+ "y": 1.105281452559165
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 3.403391588769339,
224
+ "x": -1.2113161636157814,
225
+ "y": 1.2074313777663386
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 4.450590074590773,
230
+ "x": -0.6536144876256518,
231
+ "y": 1.3568806159752995
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 3.9269957247131737,
236
+ "x": 0.891048624554129,
237
+ "y": 1.5703625366793876
238
+ },
239
+ {
240
+ "id": 31,
241
+ "rotation_radians": 4.9741883237048485,
242
+ "x": 0.3333389999080389,
243
+ "y": 1.7198045168761917
244
+ },
245
+ {
246
+ "id": 32,
247
+ "rotation_radians": 3.4033889633396406,
248
+ "x": -0.5378151711913107,
249
+ "y": 1.9236005846568212
250
+ },
251
+ {
252
+ "id": 33,
253
+ "rotation_radians": 3.9269960655908944,
254
+ "x": 0.18389671418885586,
255
+ "y": 2.2775159606916255
256
+ }
257
+ ],
258
+ "problem": "33 equal items for Triangles in Squares",
259
+ "setup": "triinsqu",
260
+ "source_image": "https://erich-friedman.github.io/packing/triinsqu/t33.gif",
261
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/"
262
+ }
data/solutions/generated/triinsqu_34_61b4d5d6bf22a206.json ADDED
@@ -0,0 +1,268 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triinsqu@34",
3
+ "container": {
4
+ "circumradius": 2.897617160196922,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 4.0978494865155,
7
+ "sides": 4,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": false,
12
+ "case": "triinsqu@34",
13
+ "credit": "Emerson Connelly",
14
+ "date": "April 2026",
15
+ "family_updated": "4/29/26",
16
+ "metric_expression": "4.098+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 4.098,
19
+ "reference_text": "34. | | s = 4.098+ | Found by Emerson Connelly | in April 2026.",
20
+ "source_image": "t34.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t34.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
23
+ "title": "Triangles in Squares"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": false,
35
+ "case": "triinsqu@34",
36
+ "credit": "Emerson Connelly",
37
+ "date": "April 2026",
38
+ "family_updated": "4/29/26",
39
+ "metric_expression": "4.098+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 4.098,
42
+ "reference_text": "34. | | s = 4.098+ | Found by Emerson Connelly | in April 2026.",
43
+ "source_image": "t34.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triinsqu/t34.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/",
46
+ "title": "Triangles in Squares"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triinsqu_034.gif",
51
+ "image_seed_transform_error": 9.292012346988251e-16,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triinsqu_034_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triinsqu/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": 1.3087644609823337,
62
+ "x": -0.16267737691669593,
63
+ "y": 2.3265078651045514
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": 1.833551891386007,
68
+ "x": 0.5498256848041935,
69
+ "y": 1.938851541793054
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": 0.2615665769100184,
74
+ "x": -0.3122497321320908,
75
+ "y": 1.7688326725083483
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 1.3087624483227753,
80
+ "x": -0.8699230907644575,
81
+ "y": 1.6192606367754574
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": 0.7863563320528679,
86
+ "x": 0.6997965889258606,
87
+ "y": 1.3812875483234217
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": 1.8326024959596992,
92
+ "x": 1.2578910457871413,
93
+ "y": 1.2314564906452468
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 0.26156410103497846,
98
+ "x": -1.019322374075346,
99
+ "y": 1.0615444875099815
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": 2.015822476785499,
104
+ "x": 0.11989433021616389,
105
+ "y": 1.0230217654771896
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": 1.3089896835610246,
110
+ "x": -1.5771706916884396,
111
+ "y": 0.9121756863618845
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": 0.7853976256720958,
116
+ "x": 1.4073242426722596,
117
+ "y": 0.673748365500874
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": 1.8325907435477384,
122
+ "x": 1.965036276587514,
123
+ "y": 0.5243146638635762
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 0.9686276721526039,
128
+ "x": 0.3684468115993866,
129
+ "y": 0.5018820102175287
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": 0.9833085838562708,
134
+ "x": -0.5626094436998942,
135
+ "y": 0.4970752827291188
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": 0.2617872033121359,
140
+ "x": -1.726612284794705,
141
+ "y": 0.3544637992008419
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": 1.8326003561077782,
146
+ "x": 0.9936255138025383,
147
+ "y": 0.2709108754080757
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": 1.3089942308050575,
152
+ "x": -2.284324934795764,
153
+ "y": 0.20502780565732276
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": 2.0305027997198355,
158
+ "x": -0.012380900758052272,
159
+ "y": 0.054166261119614756
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 2.0305051478222533,
164
+ "x": -0.882635453428442,
165
+ "y": 0.016499739565305642
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": 0.2618010584374117,
170
+ "x": 2.282067686781009,
171
+ "y": -0.20727902132213408
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": 1.308994916301323,
176
+ "x": 1.7243555291868728,
177
+ "y": -0.3567148212184763
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 0.2618197235552993,
182
+ "x": 0.7769657316151111,
183
+ "y": -0.4875688440014726
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": 0.983301966370188,
188
+ "x": -0.6264578171306486,
189
+ "y": -0.5009439533317139
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 0.7792562626325792,
194
+ "x": -1.9611554618988025,
195
+ "y": -0.5238744414797591
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": 1.3089975337503232,
200
+ "x": 0.21925338599268013,
201
+ "y": -0.6370110827197066
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": 1.8264280458490463,
206
+ "x": -1.4030615324776183,
207
+ "y": -0.6719982257426677
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 0.2617962790969745,
212
+ "x": 1.5749200541056512,
213
+ "y": -0.9144233911351112
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 1.3089989815198766,
218
+ "x": 1.0172138824619563,
219
+ "y": -1.0638679223907523
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": 0.26180938677317467,
224
+ "x": 0.06982082653599565,
225
+ "y": -1.1947155719013896
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 0.779224855783424,
230
+ "x": -1.2549487441604261,
231
+ "y": -1.2300539162538058
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": 1.8264156725915919,
236
+ "x": -0.6962753122501448,
237
+ "y": -1.3760360879941762
238
+ },
239
+ {
240
+ "id": 31,
241
+ "rotation_radians": 0.26179950629905,
242
+ "x": 0.8677688852640288,
243
+ "y": -1.6215762738504182
244
+ },
245
+ {
246
+ "id": 32,
247
+ "rotation_radians": 1.3090003254008102,
248
+ "x": 0.31006115646073773,
249
+ "y": -1.7710189747089915
250
+ },
251
+ {
252
+ "id": 33,
253
+ "rotation_radians": 0.7854019047998873,
254
+ "x": -0.5512450530732595,
255
+ "y": -1.9380962600165788
256
+ },
257
+ {
258
+ "id": 34,
259
+ "rotation_radians": 0.2618007803705869,
260
+ "x": 0.16062443592885217,
261
+ "y": -2.328729704596238
262
+ }
263
+ ],
264
+ "problem": "34 equal items for Triangles in Squares",
265
+ "setup": "triinsqu",
266
+ "source_image": "https://erich-friedman.github.io/packing/triinsqu/t34.gif",
267
+ "source_page": "https://erich-friedman.github.io/packing/triinsqu/"
268
+ }
data/solutions/generated/triintri_11_8c37202a929dc807.json ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triintri@11",
3
+ "container": {
4
+ "circumradius": 2.1508854608168297,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 3.7254428993959463,
7
+ "sides": 3,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triintri@11",
13
+ "credit": "Erich Friedman",
14
+ "date": "1997",
15
+ "family_updated": "2/29/26",
16
+ "metric_expression": "9/4 + 9\u221a21/28 = 3.722+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 3.722,
19
+ "reference_text": "s = 9/4 + 9\u221a21/28 = 3.722+ | Found by Erich Friedman | in 1997.",
20
+ "source_image": "tt11.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triintri/tt11.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triintri/",
23
+ "title": "Triangles in Triangles"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triintri@11",
36
+ "credit": "Erich Friedman",
37
+ "date": "1997",
38
+ "family_updated": "2/29/26",
39
+ "metric_expression": "9/4 + 9\u221a21/28 = 3.722+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 3.722,
42
+ "reference_text": "s = 9/4 + 9\u221a21/28 = 3.722+ | Found by Erich Friedman | in 1997.",
43
+ "source_image": "tt11.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triintri/tt11.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triintri/",
46
+ "title": "Triangles in Triangles"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triintri_011.gif",
51
+ "image_seed_transform_error": 0.0610756975609028,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triintri_011_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triintri/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -2.0952054896957093,
62
+ "x": -0.7851878845998924,
63
+ "y": -1.36044265321131
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -1.030272155279483,
68
+ "x": -0.48215000753099363,
69
+ "y": -0.8535961158569639
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -2.0781614091906313,
74
+ "x": 0.09598544473738836,
75
+ "y": -0.8437081668448714
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": 0.016859328051234537,
80
+ "x": -0.778342599877299,
81
+ "y": -0.3578841152271753
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -1.030195181977734,
86
+ "x": 0.02785253793099527,
87
+ "y": -0.1449324357269806
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -1.1637553378514782,
92
+ "x": 0.8877379016623033,
93
+ "y": -0.06709108662673466
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": -2.0999739394482555,
98
+ "x": 1.563593152093974,
99
+ "y": -0.0020230460179092814
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -0.5293131736203467,
104
+ "x": -0.5737959891224905,
105
+ "y": 0.4230681179351657
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -0.1164770683454607,
110
+ "x": 0.659042979797774,
111
+ "y": 0.46313768307480435
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -1.5766567673106662,
116
+ "x": -0.07130969002061259,
117
+ "y": 0.7075949364519881
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -2.12144277789012,
122
+ "x": -0.7532310670777047,
123
+ "y": 1.3169808414173318
124
+ }
125
+ ],
126
+ "problem": "11 equal items for Triangles in Triangles",
127
+ "setup": "triintri",
128
+ "source_image": "https://erich-friedman.github.io/packing/triintri/tt11.gif",
129
+ "source_page": "https://erich-friedman.github.io/packing/triintri/"
130
+ }
data/solutions/generated/triintri_29_f2204c752005e940.json ADDED
@@ -0,0 +1,238 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triintri@29",
3
+ "container": {
4
+ "circumradius": 3.276051928592963,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 5.674288388557019,
7
+ "sides": 3,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triintri@29",
13
+ "credit": "David W",
14
+ "date": "July 2007",
15
+ "family_updated": "2/29/26",
16
+ "metric_expression": "17/3 = 5.666+",
17
+ "metric_symbol": "s",
18
+ "metric_value": 5.666,
19
+ "reference_text": "s = 17/3 = 5.666+ | Found by David W. Cantrell | in July 2007.",
20
+ "source_image": "tt29.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triintri/tt29.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triintri/",
23
+ "title": "Triangles in Triangles"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000500010000102,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triintri@29",
36
+ "credit": "David W",
37
+ "date": "July 2007",
38
+ "family_updated": "2/29/26",
39
+ "metric_expression": "17/3 = 5.666+",
40
+ "metric_symbol": "s",
41
+ "metric_value": 5.666,
42
+ "reference_text": "s = 17/3 = 5.666+ | Found by David W. Cantrell | in July 2007.",
43
+ "source_image": "tt29.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triintri/tt29.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triintri/",
46
+ "title": "Triangles in Triangles"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triintri_029.gif",
51
+ "image_seed_transform_error": 0.08567121199249543,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triintri_029_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triintri/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -2.093178412444689,
62
+ "x": -1.348723904570005,
63
+ "y": -2.3336123664586466
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -1.047472089247197,
68
+ "x": -1.0514140079420389,
69
+ "y": -1.8317697216846818
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -2.094374634146663,
74
+ "x": -0.4710988561956915,
75
+ "y": -1.8300526471732552
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": -2.0946761535834244,
80
+ "x": -1.3465843302574392,
81
+ "y": -1.3354971069138364
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -1.0472356987064382,
86
+ "x": -0.18231807514755818,
87
+ "y": -1.3300018114768037
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -2.09885756058805,
92
+ "x": 0.9577993726195742,
93
+ "y": -1.0024923037380333
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": -1.0472511252211334,
98
+ "x": -1.057750256286141,
99
+ "y": -0.835416404971834
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -2.0944572382702424,
104
+ "x": -0.48036009488883674,
105
+ "y": -0.8353216754735708
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -1.0565529486451815,
110
+ "x": 0.3811732367821968,
111
+ "y": -0.6568256268947535
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -1.0470363135145342,
116
+ "x": 1.250333959104817,
117
+ "y": -0.5019844482382899
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -2.095596657106145,
122
+ "x": 1.829917151337762,
123
+ "y": -0.5008761711186038
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": -2.094399226133641,
128
+ "x": -1.349339495168061,
129
+ "y": -0.33704117101620085
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": -1.0564367709697935,
134
+ "x": -0.4923726534882169,
135
+ "y": -0.1563855370288989
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": -2.1036703025198626,
140
+ "x": 0.08500454068206358,
141
+ "y": -0.160946918482186
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": -2.0922842138586004,
146
+ "x": 0.9628809815462543,
147
+ "y": -7.3347181170527e-05
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": -1.0450713553182795,
152
+ "x": 2.117266218510708,
153
+ "y": 0.0019802750820107377
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": -2.094406831186405,
158
+ "x": 2.6975473776301913,
159
+ "y": 0.00034601955369239584
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": -1.0496940974480935,
164
+ "x": 0.3815511860232089,
165
+ "y": 0.33842110894055527
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": -2.1014948652298093,
170
+ "x": -1.067050178897804,
171
+ "y": 0.4999847330562908
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": -1.0462395727448408,
176
+ "x": 1.2481615224155664,
177
+ "y": 0.5028990726953021
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": -2.0937358335425555,
182
+ "x": 1.825739578689715,
183
+ "y": 0.5035667162302343
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": -2.1017272435550955,
188
+ "x": -0.19963951554950654,
189
+ "y": 0.673323412211167
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": -1.0542941808067419,
194
+ "x": -0.7747847262800192,
195
+ "y": 0.9979507230829732
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": -2.0934457342522546,
200
+ "x": 0.9600284156642889,
201
+ "y": 1.0032558560008207
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": -1.0544765806860037,
206
+ "x": 0.09259161140624579,
207
+ "y": 1.1713102828364188
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": -2.0944202243738435,
212
+ "x": -1.3493379009817736,
213
+ "y": 1.3370367805661765
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": -1.047234402902572,
218
+ "x": -1.0598056943984624,
219
+ "y": 1.8365984000572482
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": -2.1019268104042665,
224
+ "x": -0.47873086239402113,
225
+ "y": 1.8301190070663127
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": -2.0943472032926884,
230
+ "x": -1.3493083169194713,
231
+ "y": 2.3370798624357567
232
+ }
233
+ ],
234
+ "problem": "29 equal items for Triangles in Triangles",
235
+ "setup": "triintri",
236
+ "source_image": "https://erich-friedman.github.io/packing/triintri/tt29.gif",
237
+ "source_page": "https://erich-friedman.github.io/packing/triintri/"
238
+ }
data/solutions/generated/triintri_30_149a91e0248df04e.json ADDED
@@ -0,0 +1,244 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "case": "triintri@30",
3
+ "container": {
4
+ "circumradius": 3.3220967081077366,
5
+ "orientation_radians": 0.0,
6
+ "side_length": 5.754040286099913,
7
+ "sides": 3,
8
+ "type": "regular_polygon"
9
+ },
10
+ "friedman_reference": {
11
+ "analytical_or_proved": true,
12
+ "case": "triintri@30",
13
+ "credit": "Maurizio Morandi",
14
+ "date": "May 2008",
15
+ "family_updated": "2/29/26",
16
+ "metric_expression": "23/4 = 5.75",
17
+ "metric_symbol": "s",
18
+ "metric_value": 5.75,
19
+ "reference_text": "s = 23/4 = 5.75 | Found by Maurizio Morandi | in May 2008.",
20
+ "source_image": "tt30.gif",
21
+ "source_image_url": "https://erich-friedman.github.io/packing/triintri/tt30.gif",
22
+ "source_page": "https://erich-friedman.github.io/packing/triintri/",
23
+ "title": "Triangles in Triangles"
24
+ },
25
+ "item": {
26
+ "circumradius": 0.5773502691896258,
27
+ "side_length": 1.0,
28
+ "sides": 3,
29
+ "type": "regular_polygon"
30
+ },
31
+ "metadata": {
32
+ "certification_slack": 1.0000600015000203,
33
+ "friedman_reference": {
34
+ "analytical_or_proved": true,
35
+ "case": "triintri@30",
36
+ "credit": "Maurizio Morandi",
37
+ "date": "May 2008",
38
+ "family_updated": "2/29/26",
39
+ "metric_expression": "23/4 = 5.75",
40
+ "metric_symbol": "s",
41
+ "metric_value": 5.75,
42
+ "reference_text": "s = 23/4 = 5.75 | Found by Maurizio Morandi | in May 2008.",
43
+ "source_image": "tt30.gif",
44
+ "source_image_url": "https://erich-friedman.github.io/packing/triintri/tt30.gif",
45
+ "source_page": "https://erich-friedman.github.io/packing/triintri/",
46
+ "title": "Triangles in Triangles"
47
+ },
48
+ "generator": "friedman_image_seed",
49
+ "generator_profile": "best of cg/steepest/sa seed profiles",
50
+ "image_seed": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/site_images/triintri_030.gif",
51
+ "image_seed_transform_error": 0.014633043011461478,
52
+ "notes": "Image-seeded from the Friedman source image and refined with polygon-packer-c.",
53
+ "refined_state": "/Users/nathanroll/Documents/polygon-packer-c/bench_outputs/friedman_image_seeds/states/triintri_030_image_refined.state",
54
+ "source_url": "https://erich-friedman.github.io/packing/triintri/",
55
+ "submitted_at": "2026-05-01T02:08:58+00:00",
56
+ "submitted_by": "polygon-packer-c image seed"
57
+ },
58
+ "placements": [
59
+ {
60
+ "id": 1,
61
+ "rotation_radians": -2.0944942280944345,
62
+ "x": -1.3721906229309708,
63
+ "y": -2.376384156220785
64
+ },
65
+ {
66
+ "id": 2,
67
+ "rotation_radians": -1.0472967295461004,
68
+ "x": -1.0834744976402186,
69
+ "y": -1.8763692364468343
70
+ },
71
+ {
72
+ "id": 3,
73
+ "rotation_radians": -2.0944634339696853,
74
+ "x": -0.5060781005626989,
75
+ "y": -1.8768092774172764
76
+ },
77
+ {
78
+ "id": 4,
79
+ "rotation_radians": -2.0949453663147426,
80
+ "x": -1.3720857899598418,
81
+ "y": -1.376037678293134
82
+ },
83
+ {
84
+ "id": 5,
85
+ "rotation_radians": -1.0477499112454696,
86
+ "x": -0.43090329088523804,
87
+ "y": -1.253203773039837
88
+ },
89
+ {
90
+ "id": 6,
91
+ "rotation_radians": -0.0005566328077813184,
92
+ "x": 0.14648044523048034,
93
+ "y": -1.2535284988681412
94
+ },
95
+ {
96
+ "id": 7,
97
+ "rotation_radians": 0.001150626209285253,
98
+ "x": 1.012250082321503,
99
+ "y": -0.9995916567680034
100
+ },
101
+ {
102
+ "id": 8,
103
+ "rotation_radians": -1.0477471828333556,
104
+ "x": -1.0836729135602798,
105
+ "y": -0.6298667706856316
106
+ },
107
+ {
108
+ "id": 9,
109
+ "rotation_radians": -0.0005522478159718535,
110
+ "x": -0.5062951743334728,
111
+ "y": -0.6301920118957345
112
+ },
113
+ {
114
+ "id": 10,
115
+ "rotation_radians": -1.0478203886641435,
116
+ "x": 0.4315179285381104,
117
+ "y": -0.5054258822449669
118
+ },
119
+ {
120
+ "id": 11,
121
+ "rotation_radians": -1.0459291254249392,
122
+ "x": 1.2990669906720635,
123
+ "y": -0.4984237753377176
124
+ },
125
+ {
126
+ "id": 12,
127
+ "rotation_radians": 0.00014454660754612984,
128
+ "x": 1.8783250585814188,
129
+ "y": -0.5001242130520877
130
+ },
131
+ {
132
+ "id": 13,
133
+ "rotation_radians": -2.0949450215879755,
134
+ "x": -1.3720832837208894,
135
+ "y": -0.12967312932907385
136
+ },
137
+ {
138
+ "id": 14,
139
+ "rotation_radians": -1.0477642052603884,
140
+ "x": -0.4343070016905585,
141
+ "y": -0.004875885707629475
142
+ },
143
+ {
144
+ "id": 15,
145
+ "rotation_radians": -0.0005720236758181288,
146
+ "x": 0.14308209013623674,
147
+ "y": -0.005208926692516849
148
+ },
149
+ {
150
+ "id": 16,
151
+ "rotation_radians": -2.0936290459517615,
152
+ "x": 1.0092152256112217,
153
+ "y": 0.0018081983544619925
154
+ },
155
+ {
156
+ "id": 17,
157
+ "rotation_radians": -1.0470019927117151,
158
+ "x": 2.1671611130559345,
159
+ "y": -0.00010667859269457142
160
+ },
161
+ {
162
+ "id": 18,
163
+ "rotation_radians": 1.3045847489194158e-05,
164
+ "x": 2.7446877281576434,
165
+ "y": 2.243662523506347e-06
166
+ },
167
+ {
168
+ "id": 19,
169
+ "rotation_radians": -1.0466446219812569,
170
+ "x": 1.3010230226629964,
171
+ "y": 0.50016670962424
172
+ },
173
+ {
174
+ "id": 20,
175
+ "rotation_radians": -1.0336997863411828,
176
+ "x": 0.4237483129409973,
177
+ "y": 0.5073976749238625
178
+ },
179
+ {
180
+ "id": 21,
181
+ "rotation_radians": 0.00017312229833094073,
182
+ "x": 1.8785863129913905,
183
+ "y": 0.49997165158070084
184
+ },
185
+ {
186
+ "id": 22,
187
+ "rotation_radians": -1.0359647683191566,
188
+ "x": -1.0837112110632177,
189
+ "y": 0.6203621136219986
190
+ },
191
+ {
192
+ "id": 23,
193
+ "rotation_radians": 0.011229506877385746,
194
+ "x": -0.5063676876005859,
195
+ "y": 0.6268441401217586
196
+ },
197
+ {
198
+ "id": 24,
199
+ "rotation_radians": -2.094386867730462,
200
+ "x": 1.012058887069024,
201
+ "y": 1.000353866752822
202
+ },
203
+ {
204
+ "id": 25,
205
+ "rotation_radians": -1.0359702106544606,
206
+ "x": -0.43131826324253614,
207
+ "y": 1.2470833883517154
208
+ },
209
+ {
210
+ "id": 26,
211
+ "rotation_radians": 0.011219603040545575,
212
+ "x": 0.1460288442547579,
213
+ "y": 1.2535647013866784
214
+ },
215
+ {
216
+ "id": 27,
217
+ "rotation_radians": 0.007082006076513057,
218
+ "x": -1.3688225431283096,
219
+ "y": 1.3651880275548411
220
+ },
221
+ {
222
+ "id": 28,
223
+ "rotation_radians": -1.047193135191952,
224
+ "x": -1.0836646176691893,
225
+ "y": 1.8713003072662948
226
+ },
227
+ {
228
+ "id": 29,
229
+ "rotation_radians": 1.0394386348793222e-06,
230
+ "x": -0.5062801203344892,
231
+ "y": 1.876964839006305
232
+ },
233
+ {
234
+ "id": 30,
235
+ "rotation_radians": -2.0943962467321042,
236
+ "x": -1.3723560652387634,
237
+ "y": 2.371338437168812
238
+ }
239
+ ],
240
+ "problem": "30 equal items for Triangles in Triangles",
241
+ "setup": "triintri",
242
+ "source_image": "https://erich-friedman.github.io/packing/triintri/tt30.gif",
243
+ "source_page": "https://erich-friedman.github.io/packing/triintri/"
244
+ }
data/svg/0575780ea85d68dd.svg ADDED
data/svg/149a91e0248df04e.svg ADDED
data/svg/29e4e0e684891d8a.svg ADDED
data/svg/3435500023858121.svg ADDED
data/svg/4339d1ebd3160f94.svg ADDED
data/svg/522948d614943781.svg ADDED
data/svg/5b0eaf84f54fe48c.svg ADDED
data/svg/61b4d5d6bf22a206.svg ADDED
data/svg/640352ab60961c58.svg ADDED
data/svg/7274d354e73d8050.svg ADDED
data/svg/7628e283de25ee68.svg ADDED
data/svg/7bc3466b163ec849.svg ADDED
data/svg/8245fa6b2a472124.svg ADDED
data/svg/8bb5531a7df45934.svg ADDED
data/svg/8c37202a929dc807.svg ADDED
data/svg/a314b4bb8467e5e8.svg ADDED
data/svg/a6f49f2f24228d1b.svg ADDED
data/svg/be14c55679a54b28.svg ADDED
data/svg/c7748eb19b34ff2e.svg ADDED
data/svg/cae7087451040120.svg ADDED
data/svg/d7a41b31b48a9cd4.svg ADDED
data/svg/e1de703df3a339d6.svg ADDED