restyle code
This commit is contained in:
148
HeroesKeepOut/Box-Figure-Monsters.scad
Normal file
148
HeroesKeepOut/Box-Figure-Monsters.scad
Normal file
@@ -0,0 +1,148 @@
|
||||
include <BOSL2/std.scad>
|
||||
|
||||
// Parameter for console overwrite
|
||||
x = 172;
|
||||
y = 84;
|
||||
z = 35.5;
|
||||
name = "Vampir";
|
||||
|
||||
figureHolder(x, y, z, name);
|
||||
|
||||
module figureHolder(x, y, z, name) {
|
||||
difference() {
|
||||
cube([ x, y, z ], false);
|
||||
translate([ 1.5, 1.5, 1.5 ]) cube([ x - 3, y - 3, z - 1 ], false);
|
||||
|
||||
// windows
|
||||
window(32 / 2, y, z, "Schleim");
|
||||
|
||||
// floor
|
||||
xInner = x - 10;
|
||||
yInner = y - 10;
|
||||
|
||||
if (xInner >= 6 && yInner >= 6) {
|
||||
xSpace = 5 + (((xInner + 2) % 8) / 2);
|
||||
xAmount = (((xInner + 2) - xSpace + 5) / 8);
|
||||
ySpace = 5 + (((yInner + 2) % 8) / 2);
|
||||
yAmount = (((yInner + 2) - ySpace + 5) / 8);
|
||||
|
||||
for (i = [0:xAmount - 1], j = [0:yAmount - 1]) translate([ xSpace + i * 8, ySpace + j * 8, -1 ]) cube([ 6, 6, 3.5 ], false);
|
||||
}
|
||||
|
||||
translate([ 94 / 2 + 32, 0.6, 4 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Rattenvolk",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
translate([ 43 / 2 + 127.5, 0.6, 4 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Unholde",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
translate([ 74 / 2 + 32, 0.6, 12 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Gnoll",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
translate([ 63 / 2 + 104.5, 0.6, 12 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Skelette",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
translate([ 54 / 2 + 32, 0.6, 20 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Echsenvolk",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
translate([ 36 / 2 + 84.5, 0.6, 20 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Hexen",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
translate([ 42 / 2 + 122, 0.6, 20 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
"Feen",
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
}
|
||||
|
||||
// deviders
|
||||
translate([ 30.5, 1.5, 0 ]) cube([ 1.5, y - 3, 6.5], false); // Schleim
|
||||
translate([ 32, 5, 0 ]) cube([ 94, 1.5, 6.5], false); // Rattenvolk
|
||||
translate([ 32, 19.5, 0 ]) cube([ 94, 1.5, 6.5], false); // Rattenvolk
|
||||
translate([ 126, 5, 0 ]) cube([ 1.5, 21, 6.5], false); // Rattenvolk
|
||||
translate([ 127.5, 6, 0 ]) cube([ 43, 1.5, 6.5], false); // Unholde
|
||||
translate([ 127.5, 24.5, 0 ]) cube([ 43, 1.5, 6.5], false); // Unholde
|
||||
translate([ 32, 24, 0 ]) cube([ 74, 1.5, 6.5], false); // Gnolle
|
||||
translate([ 32, 50.5, 0 ]) cube([ 74, 1.5, 6.5], false); // Gnolle
|
||||
translate([ 106, 24, 0 ]) cube([ 1.5, 31.5, 6.5], false); // Gnolle
|
||||
translate([ 107.5, 28, 0 ]) cube([ 63, 1.5, 6.5], false); // Skelette
|
||||
translate([ 107.5, 55.5, 0 ]) cube([ 63, 1.5, 6.5], false); // Skelette
|
||||
translate([ 32, 76, 0 ]) cube([ 54, 1.5, 6.5], false); // Echsenvolk
|
||||
translate([ 86, 52, 0 ]) cube([ 1.5, 27.5, 6.5], false); // Echsenvolk
|
||||
translate([ 87.5, 55.5, 0 ]) cube([ 28, 1.5, 6.5], false); // Hexen
|
||||
translate([ 87.5, 78, 0 ]) cube([ 28, 1.5, 6.5], false); // Hexen
|
||||
translate([ 115.5, 57, 0 ]) cube([ 1.5, 22.5, 6.5], false); // Hexen
|
||||
translate([ 123.5, 57, 0 ]) cube([ 1.5, 27, 6.5], false); // Feen
|
||||
translate([ 125, 81, 0 ]) cube([ 42, 1.5, 6.5], false); // Feen
|
||||
translate([ 167, 57, 0 ]) cube([ 1.5, 27, 6.5], false); // Feen
|
||||
|
||||
/*
|
||||
*/
|
||||
}
|
||||
|
||||
module window(x, y, z, name) {
|
||||
windowHelper(x, 0, z, name);
|
||||
windowHelper(x, y - 1, z, "");
|
||||
}
|
||||
|
||||
module windowHelper(x, y, z, name) {
|
||||
translate([ 7, y - 1, 8 ]) cuboid(
|
||||
[ 2 * (x - 7), 3.5, z - 8 ],
|
||||
anchor = [-1, -1, -1],
|
||||
rounding = 3,
|
||||
edges = [
|
||||
BOTTOM + LEFT,
|
||||
BOTTOM + RIGHT
|
||||
]
|
||||
);
|
||||
|
||||
difference() {
|
||||
translate([ 1.5, y - 1, z - 5 ]) cube([ 2 * (x - 1.5), 3.5, 6 ], false);
|
||||
translate([ 1, y - 1, z - 6 ]) cuboid(
|
||||
[ 6, 3.5 , 6 ],
|
||||
anchor = [-1, -1, -1],
|
||||
rounding = 5,
|
||||
edges = TOP + RIGHT
|
||||
);
|
||||
|
||||
translate([ 2 * x - 7, y - 1, z - 6 ]) cuboid(
|
||||
[ 6, 3.5 , 6 ],
|
||||
anchor = [-1, -1, -1],
|
||||
rounding = 5,
|
||||
edges = TOP + LEFT
|
||||
);
|
||||
}
|
||||
|
||||
translate([ x, y + 0.6, 4 ]) rotate([ 90, 0, 0 ]) linear_extrude(height = 1.6) text(
|
||||
name,
|
||||
size = 4,
|
||||
font = "Arial:style=Bold",
|
||||
halign="center",
|
||||
valign="center"
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user