diff --git a/media/attribution.js b/media/attribution.js
index dfee862f..c331a256 100644
--- a/media/attribution.js
+++ b/media/attribution.js
@@ -1360,6 +1360,23 @@ const attributionData = {
"chemicalcrux"
]
},
+ {
+ prefix: "./media/buildings/Midrise Buildings/",
+ all: null,
+ authors: [
+ "chemicalcrux"
+ ]
+ },
+ {
+ prefix: "./media/buildings/Metal Buildings/",
+ all: null,
+ authors: [
+ "chemicalcrux"
+ ],
+ citations: [
+ "https://www.carportcentral.com/"
+ ]
+ },
{
prefix: "./media/clothing/Boots/",
files: [
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Angled.svg b/media/buildings/Metal Buildings/28x70 Shed-Angled.svg
new file mode 100644
index 00000000..d7c81dc3
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Angled.svg
@@ -0,0 +1,89 @@
+
+
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Back Corner.svg b/media/buildings/Metal Buildings/28x70 Shed-Back Corner.svg
new file mode 100644
index 00000000..b49d611a
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Back Corner.svg
@@ -0,0 +1,89 @@
+
+
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Back.svg b/media/buildings/Metal Buildings/28x70 Shed-Back.svg
new file mode 100644
index 00000000..089fbc8a
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Back.svg
@@ -0,0 +1,65 @@
+
+
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Corner.svg b/media/buildings/Metal Buildings/28x70 Shed-Corner.svg
new file mode 100644
index 00000000..3feb137d
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Corner.svg
@@ -0,0 +1,95 @@
+
+
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Front.svg b/media/buildings/Metal Buildings/28x70 Shed-Front.svg
new file mode 100644
index 00000000..24dd5686
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Front.svg
@@ -0,0 +1,65 @@
+
+
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Side.svg b/media/buildings/Metal Buildings/28x70 Shed-Side.svg
new file mode 100644
index 00000000..e0fa6d18
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Side.svg
@@ -0,0 +1,59 @@
+
+
diff --git a/media/buildings/Metal Buildings/28x70 Shed-Top.svg b/media/buildings/Metal Buildings/28x70 Shed-Top.svg
new file mode 100644
index 00000000..33b0c01d
--- /dev/null
+++ b/media/buildings/Metal Buildings/28x70 Shed-Top.svg
@@ -0,0 +1,45 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Angled.svg b/media/buildings/Metal Buildings/30x46 Garage-Angled.svg
new file mode 100644
index 00000000..bfcacc02
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Angled.svg
@@ -0,0 +1,269 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Back Corner.svg b/media/buildings/Metal Buildings/30x46 Garage-Back Corner.svg
new file mode 100644
index 00000000..5a6f95ec
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Back Corner.svg
@@ -0,0 +1,200 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Back.svg b/media/buildings/Metal Buildings/30x46 Garage-Back.svg
new file mode 100644
index 00000000..baa1cb7c
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Back.svg
@@ -0,0 +1,128 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Corner.svg b/media/buildings/Metal Buildings/30x46 Garage-Corner.svg
new file mode 100644
index 00000000..ff5984b8
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Corner.svg
@@ -0,0 +1,269 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Front.svg b/media/buildings/Metal Buildings/30x46 Garage-Front.svg
new file mode 100644
index 00000000..f13e485c
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Front.svg
@@ -0,0 +1,197 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Side.svg b/media/buildings/Metal Buildings/30x46 Garage-Side.svg
new file mode 100644
index 00000000..3b10d251
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Side.svg
@@ -0,0 +1,101 @@
+
+
diff --git a/media/buildings/Metal Buildings/30x46 Garage-Top.svg b/media/buildings/Metal Buildings/30x46 Garage-Top.svg
new file mode 100644
index 00000000..7f04e134
--- /dev/null
+++ b/media/buildings/Metal Buildings/30x46 Garage-Top.svg
@@ -0,0 +1,45 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Angled.svg b/media/buildings/Metal Buildings/40x80 Storage-Angled.svg
new file mode 100644
index 00000000..9f62de73
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Angled.svg
@@ -0,0 +1,197 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Back Corner.svg b/media/buildings/Metal Buildings/40x80 Storage-Back Corner.svg
new file mode 100644
index 00000000..927dc0bf
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Back Corner.svg
@@ -0,0 +1,77 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Back.svg b/media/buildings/Metal Buildings/40x80 Storage-Back.svg
new file mode 100644
index 00000000..f1a4237c
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Back.svg
@@ -0,0 +1,59 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Corner.svg b/media/buildings/Metal Buildings/40x80 Storage-Corner.svg
new file mode 100644
index 00000000..903f2311
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Corner.svg
@@ -0,0 +1,197 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Front.svg b/media/buildings/Metal Buildings/40x80 Storage-Front.svg
new file mode 100644
index 00000000..296dd311
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Front.svg
@@ -0,0 +1,182 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Side.svg b/media/buildings/Metal Buildings/40x80 Storage-Side.svg
new file mode 100644
index 00000000..eea461d6
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Side.svg
@@ -0,0 +1,56 @@
+
+
diff --git a/media/buildings/Metal Buildings/40x80 Storage-Top.svg b/media/buildings/Metal Buildings/40x80 Storage-Top.svg
new file mode 100644
index 00000000..9c54695f
--- /dev/null
+++ b/media/buildings/Metal Buildings/40x80 Storage-Top.svg
@@ -0,0 +1,45 @@
+
+
diff --git a/media/buildings/Midrise Buildings/Medium-Angled.svg b/media/buildings/Midrise Buildings/Medium-Angled.svg
new file mode 100644
index 00000000..cb2e4a63
--- /dev/null
+++ b/media/buildings/Midrise Buildings/Medium-Angled.svg
@@ -0,0 +1,1556 @@
+
+
diff --git a/media/buildings/Midrise Buildings/Medium-Back.svg b/media/buildings/Midrise Buildings/Medium-Back.svg
new file mode 100644
index 00000000..19eb62b0
--- /dev/null
+++ b/media/buildings/Midrise Buildings/Medium-Back.svg
@@ -0,0 +1,470 @@
+
+
diff --git a/media/buildings/Midrise Buildings/Medium-Corner.svg b/media/buildings/Midrise Buildings/Medium-Corner.svg
new file mode 100644
index 00000000..98554ab5
--- /dev/null
+++ b/media/buildings/Midrise Buildings/Medium-Corner.svg
@@ -0,0 +1,1400 @@
+
+
diff --git a/media/buildings/Midrise Buildings/Medium-Front.svg b/media/buildings/Midrise Buildings/Medium-Front.svg
new file mode 100644
index 00000000..f60e8ee0
--- /dev/null
+++ b/media/buildings/Midrise Buildings/Medium-Front.svg
@@ -0,0 +1,752 @@
+
+
diff --git a/media/buildings/Midrise Buildings/Medium-Side.svg b/media/buildings/Midrise Buildings/Medium-Side.svg
new file mode 100644
index 00000000..812632f1
--- /dev/null
+++ b/media/buildings/Midrise Buildings/Medium-Side.svg
@@ -0,0 +1,692 @@
+
+
diff --git a/media/buildings/Midrise Buildings/Medium-Top.svg b/media/buildings/Midrise Buildings/Medium-Top.svg
new file mode 100644
index 00000000..fcf8b025
--- /dev/null
+++ b/media/buildings/Midrise Buildings/Medium-Top.svg
@@ -0,0 +1,48 @@
+
+
diff --git a/presets/buildings.js b/presets/buildings.js
index c6eedce5..743fcdca 100644
--- a/presets/buildings.js
+++ b/presets/buildings.js
@@ -348,6 +348,8 @@ function makeBuildings() {
/* ***Times Square NYE*** */ results.push(makeModel({"name": "Times Square NYE", "kind": "buildings", "forms": [{"name": "Ball", "views": [{"name": "Front", "height": 3.4989547729492188, "mass": 5397.72705078125, "extra": 1.0016937456872217, "bottom": 0.0016880275085964648}, {"name": "Angled", "height": 3.4989547729492188, "mass": 5397.72705078125, "extra": 1.0025409836065575, "bottom": 0.00252813570380047}, {"name": "Corner", "height": 3.4989547729492188, "mass": 5397.72705078125, "extra": 1.0018165582086815, "bottom": 0.00180998233215548}, {"name": "Side", "height": 3.4989547729492188, "mass": 5397.72705078125, "extra": 1.001850383633639, "bottom": 0.001843561043274757}, {"name": "Back", "height": 3.4989547729492188, "mass": 5397.72705078125, "extra": 1.0016623910180016, "bottom": 0.0016568822456753673}, {"name": "Top", "height": 3.657600164413452, "mass": 5397.72705078125, "extra": 1.001771054685155, "bottom": 0.001764803557935817}]}, {"name": "Tower", "views": [{"name": "Front", "height": 23.458213806152344, "extra": 1.0016112545018008, "bottom": 0.0016060788980911244}, {"name": "Angled", "height": 23.458213806152344, "extra": 1.0016112545018008, "bottom": 0.0016060788980911244}, {"name": "Corner", "height": 23.458213806152344, "extra": 1.0016112545018008, "bottom": 0.0016060788980911244}, {"name": "Side", "height": 23.458213806152344, "extra": 1.0016112545018008, "bottom": 0.0016060788980911244}, {"name": "Back", "height": 23.458213806152344, "extra": 1.0016112545018008, "bottom": 0.0016060788980911244}, {"name": "Top", "height": 1.5605759620666504, "extra": 1.0015567074184117, "bottom": 0.0015518757853168342}]}, {"name": "2022", "views": [{"name": "Front", "height": 2.1339330673217773, "extra": 1.003530708012506, "bottom": 0.0035059510336938327}, {"name": "Angled", "height": 2.1339330673217773, "extra": 1.0047998012242747, "bottom": 0.004754163148077668}, {"name": "Corner", "height": 2.1339330673217773, "extra": 1.0028325, "bottom": 0.002816544276672584}, {"name": "Side", "height": 2.1339330673217773, "extra": 1.001694837935174, "bottom": 0.0016891123916577266}, {"name": "Back", "height": 2.1339330673217773, "extra": 1.003530708012506, "bottom": 0.0035059510336938327}, {"name": "Top", "height": 0.4862631559371948, "extra": 1.0157526272448099, "bottom": 0.01527149491119562}]}]}));
/* ***Sheds*** */ results.push(makeModel({"name": "Sheds", "kind": "buildings", "forms": [{"name": "Small Shed", "views": [{"name": "Front", "height": 3.479300022125244, "extra": 1.005440565201383, "bottom": 0.0053820029257200174}, {"name": "Angled", "height": 3.479300022125244, "extra": 1.0054253856774116, "bottom": 0.0053671479818332875}, {"name": "Corner", "height": 3.479300022125244, "extra": 1.0053985294117647, "bottom": 0.005340863791242229}, {"name": "Side", "height": 3.479300022125244, "extra": 1.0054021608643458, "bottom": 0.005344418052256532}, {"name": "Back", "height": 3.479300022125244, "extra": 1.005440565201383, "bottom": 0.0053820029257200174}, {"name": "Top", "height": 2.638400077819824, "extra": 1.0066026410564226, "bottom": 0.006516587677725118}]}, {"name": "Medium Shed", "views": [{"name": "Front", "height": 3.9618988037109375, "extra": 1.0048322228224984, "bottom": 0.004785969084423278}, {"name": "Angled", "height": 3.9618988037109375, "extra": 1.0047982893157263, "bottom": 0.004752679849837231}, {"name": "Corner", "height": 3.9618988037109375, "extra": 1.004316382460414, "bottom": 0.004279439068938889}, {"name": "Side", "height": 3.9618988037109375, "extra": 1.0048019207683074, "bottom": 0.0047562425683709865}, {"name": "Back", "height": 3.9618988037109375, "extra": 1.0048322228224984, "bottom": 0.004785969084423278}, {"name": "Top", "height": 3.0480000972747803, "extra": 1.006093637454982, "bottom": 0.006020266808357238}]}, {"name": "Large Shed", "views": [{"name": "Front", "height": 4.26669979095459, "extra": 1.0041839246053184, "bottom": 0.004149204686160603}, {"name": "Angled", "height": 4.26669979095459, "extra": 1.0043687027707808, "bottom": 0.004330862270776434}, {"name": "Corner", "height": 4.26669979095459, "extra": 1.0035310734463276, "bottom": 0.0035063113604488078}, {"name": "Side", "height": 4.26669979095459, "extra": 1.004201680672269, "bottom": 0.004166666666666667}, {"name": "Back", "height": 4.26669979095459, "extra": 1.0041839246053184, "bottom": 0.004149204686160603}, {"name": "Top", "height": 3.857600212097168, "extra": 1.0048019207683074, "bottom": 0.0047562425683709865}]}]}));
/* ***Townhouses*** */ results.push(makeModel({"name": "Townhouses", "kind": "buildings", "trace_alpha": 0.0, "forms": [{"name": "Three Story Townhouse", "views": [{"name": "Front", "height": 7.595012664794922, "volume": 697.7749681878887, "extra": 1.0033003300330032, "bottom": 0.003278688524590164}, {"name": "Angled", "height": 7.595012664794922, "volume": 697.7749681878887, "extra": 1.0035971223021583, "bottom": 0.0035714285714285713}, {"name": "Corner", "height": 7.595012664794922, "volume": 697.7749681878887, "extra": 1.0035046728971964, "bottom": 0.0034802784222737818}, {"name": "Side", "height": 7.595012664794922, "volume": 697.7749681878887, "extra": 1.0034802784222738, "bottom": 0.0034562211981566822}, {"name": "Back Corner", "height": 7.595012664794922, "volume": 697.7749681878887, "extra": 1.0035046728971964, "bottom": 0.0034802784222737818}, {"name": "Back", "height": 7.595012664794922, "volume": 697.7749681878887, "extra": 1.0033003300330032, "bottom": 0.003278688524590164}, {"name": "Top", "height": 16.01599884033203, "volume": 697.7749681878887, "extra": 1.0015126512651265, "bottom": 0.001508088840142583}]}]}));
+ /* ***Midrise Buildings*** */ results.push(makeModel({"name": "Midrise Buildings", "kind": "buildings", "trace_alpha": 0.0, "forms": [{"name": "Medium", "views": [{"name": "Front", "height": 42.69080352783203, "volume": 26752.172098824078, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}, {"name": "Angled", "height": 42.69080352783203, "volume": 26752.172098824078, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}, {"name": "Corner", "height": 42.69080352783203, "volume": 26752.172098824078, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}, {"name": "Side", "height": 42.69080352783203, "volume": 26752.172098824078, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}, {"name": "Top", "height": 27.632001876831055, "volume": 26752.172098824078, "extra": 1.0004578754578755, "bottom": 0.0004574565416285453}, {"name": "Back", "height": 42.69080352783203, "volume": 26752.172098824078, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}, {"name": "Front", "height": 42.69080352783203, "volume": 26752.172098824078, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}]}]}));
+ /* ***Metal Buildings*** */ results.push(makeModel({"name": "Metal Buildings", "kind": "buildings", "trace_alpha": 0.0, "forms": [{"name": "40x80 Storage", "views": [{"name": "Front", "height": 5.368299961090088, "volume": 1440.3480344680756, "extra": 1.0025252525252526, "bottom": 0.002512562814070352}, {"name": "Angled", "height": 5.368299961090088, "volume": 1440.3480344680756, "extra": 1.0036785654691163, "bottom": 0.0036516994382022436}, {"name": "Corner", "height": 5.368299961090088, "volume": 1440.3480344680756, "extra": 1.0001344581913003, "bottom": 0.00013442204301074932}, {"name": "Side", "height": 5.368299961090088, "volume": 1440.3480344680756, "extra": 1.001920614596671, "bottom": 0.001913265306122449}, {"name": "Back Corner", "height": 5.368299961090088, "volume": 1440.3480344680756, "extra": 1.0001344581913003, "bottom": 0.00013442204301074932}, {"name": "Back", "height": 5.368299961090088, "volume": 1440.3480344680756, "extra": 1.0025252525252526, "bottom": 0.002512562814070352}, {"name": "Top", "height": 12.496800422668457, "volume": 1440.3480344680756, "extra": 1.001086956521739, "bottom": 0.0010845986984815619}]}, {"name": "30x46 Garage", "views": [{"name": "Front", "height": 4.758699893951416, "volume": 543.0568615865818, "extra": 1.002183406113537, "bottom": 0.002173913043478261}, {"name": "Angled", "height": 4.758699893951416, "volume": 543.0568615865818, "extra": 1.0028782894736843, "bottom": 0.0028618152085036794}, {"name": "Corner", "height": 4.758699893951416, "volume": 543.0568615865818, "extra": 1.003793793774319, "bottom": 0.0037652248014974398}, {"name": "Side", "height": 4.758699893951416, "volume": 543.0568615865818, "extra": 1.0028973509933774, "bottom": 0.002880658436213992}, {"name": "Back Corner", "height": 4.758699893951416, "volume": 543.0568615865818, "extra": 1.003793793774319, "bottom": 0.0037652248014974398}, {"name": "Back", "height": 4.758699893951416, "volume": 543.0568615865818, "extra": 1.002183406113537, "bottom": 0.002173913043478261}, {"name": "Top", "height": 14.325603485107422, "volume": 543.0568615865818, "extra": 1.000962596259626, "bottom": 0.0009607466373867692}]}, {"name": "28x70 Shed", "views": [{"name": "Front", "height": 4.758699893951416, "volume": 684.8870681407852, "extra": 1.0028118609406953, "bottom": 0.0027961362480935434}, {"name": "Angled", "height": 4.758699893951416, "volume": 684.8870681407852, "extra": 1.0023786869647955, "bottom": 0.0023674242424242425}, {"name": "Corner", "height": 4.758699893951416, "volume": 684.8870681407852, "extra": 1.0024875621890548, "bottom": 0.0024752475247524753}, {"name": "Side", "height": 4.758699893951416, "volume": 684.8870681407852, "extra": 1.0025, "bottom": 0.0024875621890547263}, {"name": "Back Corner", "height": 4.758699893951416, "volume": 684.8870681407852, "extra": 1.0024875621890548, "bottom": 0.0024752475247524753}, {"name": "Back", "height": 4.758699893951416, "volume": 684.8870681407852, "extra": 1.0028118609406953, "bottom": 0.0027961362480935434}, {"name": "Top", "height": 21.64080047607422, "volume": 684.8870681407852, "extra": 1.0005500550055006, "bottom": 0.0005494505494505495}]}]}));
/* ***INSERT HERE*** */
results.sort((b1, b2) => {