From 081c4e0f3d273006707b70cccf2eaa52f5120d57 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Mon, 9 Mar 2020 16:18:27 -0400 Subject: [PATCH] Add some animals and dinosaurs --- media/attribution.js | 27 ++++++- media/objects/animals/african-elephant.svg | 79 +++++++++++++++++++ media/objects/animals/blue-whale.svg | 26 +++++++ media/objects/animals/dairy-cow.svg | 78 +++++++++++++++++++ media/objects/animals/horse.svg | 90 ++++++++++++++++++++++ media/objects/animals/sperm-whale.svg | 27 +++++++ media/objects/dinosaurs/brachiosaurus.svg | 47 +++++++++++ media/objects/dinosaurs/pterodactyl.svg | 82 ++++++++++++++++++++ media/objects/dinosaurs/stegosaurus.svg | 52 +++++++++++++ media/objects/dinosaurs/tyrannosaurus.svg | 55 +++++++++++++ media/objects/dinosaurs/velociraptor.svg | 86 +++++++++++++++++++++ presets/objects.js | 44 +++++++++++ 12 files changed, 692 insertions(+), 1 deletion(-) create mode 100644 media/objects/animals/african-elephant.svg create mode 100644 media/objects/animals/blue-whale.svg create mode 100644 media/objects/animals/dairy-cow.svg create mode 100644 media/objects/animals/horse.svg create mode 100644 media/objects/animals/sperm-whale.svg create mode 100644 media/objects/dinosaurs/brachiosaurus.svg create mode 100644 media/objects/dinosaurs/pterodactyl.svg create mode 100644 media/objects/dinosaurs/stegosaurus.svg create mode 100644 media/objects/dinosaurs/tyrannosaurus.svg create mode 100644 media/objects/dinosaurs/velociraptor.svg diff --git a/media/attribution.js b/media/attribution.js index 1214e099..fe3b0a86 100644 --- a/media/attribution.js +++ b/media/attribution.js @@ -4891,7 +4891,32 @@ const attributionData = { "public-domain" ] }, - + { + prefix: "./media/objects/animals/", + files: [ + { name: "blue-whale.svg", source: "https://www.dimensions.guide/element/blue-whale" }, + { name: "sperm-whale.svg", source: "https://www.dimensions.guide/element/sperm-whale" }, + { name: "dairy-cow.svg", source: "https://www.dimensions.guide/element/dairy-cows" }, + { name: "horse.svg", source: "https://www.dimensions.guide/element/horse" }, + { name: "african-elephant.svg", source: "https://www.dimensions.guide/element/african-elephant" }, + ], + authors: [ + "dimensions-guide" + ] + }, + { + prefix: "./media/objects/dinosaurs/", + files: [ + { name: "brachiosaurus.svg", source: "https://www.dimensions.guide/element/brachiosaurus" }, + { name: "pterodactyl.svg", source: "https://www.dimensions.guide/element/pterodactyl" }, + { name: "stegosaurus.svg", source: "https://www.dimensions.guide/element/stegosaurus" }, + { name: "tyrannosaurus.svg", source: "https://www.dimensions.guide/element/t-rex-tyrannosaurus" }, + { name: "velociraptor.svg", source: "https://www.dimensions.guide/element/velociraptor" }, + ], + authors: [ + "dimensions-guide" + ] + }, { prefix: "./media/objects/fruits/", files: [ diff --git a/media/objects/animals/african-elephant.svg b/media/objects/animals/african-elephant.svg new file mode 100644 index 00000000..4e934171 --- /dev/null +++ b/media/objects/animals/african-elephant.svg @@ -0,0 +1,79 @@ + + + + + + + + + + + diff --git a/media/objects/animals/blue-whale.svg b/media/objects/animals/blue-whale.svg new file mode 100644 index 00000000..4c72303f --- /dev/null +++ b/media/objects/animals/blue-whale.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + diff --git a/media/objects/animals/dairy-cow.svg b/media/objects/animals/dairy-cow.svg new file mode 100644 index 00000000..ea99585b --- /dev/null +++ b/media/objects/animals/dairy-cow.svg @@ -0,0 +1,78 @@ + + + + + + + + + + + diff --git a/media/objects/animals/horse.svg b/media/objects/animals/horse.svg new file mode 100644 index 00000000..ddf27a5e --- /dev/null +++ b/media/objects/animals/horse.svg @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/objects/animals/sperm-whale.svg b/media/objects/animals/sperm-whale.svg new file mode 100644 index 00000000..888c27d4 --- /dev/null +++ b/media/objects/animals/sperm-whale.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + diff --git a/media/objects/dinosaurs/brachiosaurus.svg b/media/objects/dinosaurs/brachiosaurus.svg new file mode 100644 index 00000000..4b44f423 --- /dev/null +++ b/media/objects/dinosaurs/brachiosaurus.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + diff --git a/media/objects/dinosaurs/pterodactyl.svg b/media/objects/dinosaurs/pterodactyl.svg new file mode 100644 index 00000000..cd690066 --- /dev/null +++ b/media/objects/dinosaurs/pterodactyl.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + + diff --git a/media/objects/dinosaurs/stegosaurus.svg b/media/objects/dinosaurs/stegosaurus.svg new file mode 100644 index 00000000..a64911db --- /dev/null +++ b/media/objects/dinosaurs/stegosaurus.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + diff --git a/media/objects/dinosaurs/tyrannosaurus.svg b/media/objects/dinosaurs/tyrannosaurus.svg new file mode 100644 index 00000000..013fadd3 --- /dev/null +++ b/media/objects/dinosaurs/tyrannosaurus.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + diff --git a/media/objects/dinosaurs/velociraptor.svg b/media/objects/dinosaurs/velociraptor.svg new file mode 100644 index 00000000..4a1365db --- /dev/null +++ b/media/objects/dinosaurs/velociraptor.svg @@ -0,0 +1,86 @@ + + + + + + + + + + + diff --git a/presets/objects.js b/presets/objects.js index 8d9d1444..6a687348 100644 --- a/presets/objects.js +++ b/presets/objects.js @@ -48,6 +48,28 @@ function addShoeView(object, name, points) { } } +function makeHeightWeight(info, category, prefix="") { + const views = {}; + + info.forEach(object => { + views[object[0]] = { + height: math.unit(object[1], "meters"), + mass: math.unit(object[2], "kilograms"), + image: { source: "./media/objects/" + category.replace(/ /g, "-").toLowerCase() + "/" + prefix + object[0] + ".svg" }, + name: object[0].replace(/-/g, " ").replace(/\b\w/g, x => x.toUpperCase()), + rename: true + } + }); + + return { + name: category, + constructor: () => makeObject( + category, + views + ) + } +} + function makeShoes() { const views = {}; @@ -485,6 +507,28 @@ function makeObjects() { ) }) + results.push( + makeHeightWeight([ + ["blue-whale", 4.5, 125e3], + ["sperm-whale", 3, 42e3], + ["dairy-cow", 1.7, 800], + ["horse", 2.08, 550], + ["african-elephant", 3.2, 4000] + ], + "Animals" + )); + + results.push( + makeHeightWeight([ + ["brachiosaurus", 13, 56e3], + ["pterodactyl", 2.3, 200], + ["stegosaurus", 4.5, 7e3], + ["tyrannosaurus", 5.2, 14e3], + ["velociraptor", 1.6, 15] + ], + "Dinosaurs" + )); + results.sort((b1, b2) => { e1 = b1.constructor();