mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-10 16:54:23 +02:00
refactor
This commit is contained in:
@@ -128,48 +128,53 @@ module chrome_dino(w, merged = false) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module blocks(points) {
|
||||||
|
for(pt = points) {
|
||||||
|
translate(pt) square(1);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
module cactus(w) {
|
module cactus(w) {
|
||||||
linear_extrude(w * 3) {
|
linear_extrude(w * 3) {
|
||||||
translate([2 * w, w * 7]) scale(w)
|
translate([2 * w, w * 7]) scale(w) blocks(
|
||||||
for(pt = px_polygon([
|
px_polygon([
|
||||||
[0, 2],
|
[0, 2],
|
||||||
[3, 2],
|
[3, 2],
|
||||||
[5, 4],
|
[5, 4],
|
||||||
[5, 10],
|
[5, 10],
|
||||||
[5, 10],
|
[5, 10],
|
||||||
[3, 10],
|
[3, 10],
|
||||||
[3, 6],
|
[3, 6],
|
||||||
[0, 4],
|
[0, 4],
|
||||||
|
|
||||||
], filled = true)) {
|
], filled = true)
|
||||||
translate(pt) square(1);
|
);
|
||||||
}
|
|
||||||
translate([-2 * w, w * 5]) scale(w)
|
translate([-2 * w, w * 5]) scale(w) blocks(
|
||||||
for(pt = px_polygon([
|
px_polygon([
|
||||||
[-1, 0],
|
[-1, 0],
|
||||||
[-3, 0],
|
[-3, 0],
|
||||||
[-6, 2],
|
[-6, 2],
|
||||||
[-6, 6],
|
[-6, 6],
|
||||||
[-6, 6],
|
[-6, 6],
|
||||||
[-4, 6],
|
[-4, 6],
|
||||||
[-4, 4],
|
[-4, 4],
|
||||||
[-1, 2],
|
[-1, 2],
|
||||||
|
|
||||||
], filled = true)) {
|
], filled = true)
|
||||||
translate(pt) square(1);
|
);
|
||||||
}
|
|
||||||
scale(w)
|
scale(w) blocks(
|
||||||
for(pt = px_polygon([
|
px_polygon([
|
||||||
[-2, 0],
|
[-2, 0],
|
||||||
[2, 0],
|
[2, 0],
|
||||||
[2, 20],
|
[2, 20],
|
||||||
[1, 22],
|
[1, 22],
|
||||||
[0, 22],
|
[0, 22],
|
||||||
[-1, 22],
|
[-1, 22],
|
||||||
[-2, 20]
|
[-2, 20]
|
||||||
], filled = true)) {
|
], filled = true)
|
||||||
translate(pt) square(1);
|
);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,16 +182,14 @@ module base(w, base_x_blocks, base_y_blocks) {
|
|||||||
linear_extrude(w) {
|
linear_extrude(w) {
|
||||||
translate([0, -w])
|
translate([0, -w])
|
||||||
square([base_x_blocks * w, base_y_blocks * w + 2 * w]);
|
square([base_x_blocks * w, base_y_blocks * w + 2 * w]);
|
||||||
translate([0, base_y_blocks * w / 2]) scale(w)
|
translate([0, base_y_blocks * w / 2]) scale(w) blocks(
|
||||||
for(p = px_circle(base_y_blocks / 2, filled = true)) {
|
px_circle(base_y_blocks / 2, filled = true)
|
||||||
translate(p)
|
);
|
||||||
square(1, center = true);
|
|
||||||
}
|
translate([base_x_blocks * w, base_y_blocks * w / 2])
|
||||||
translate([base_x_blocks * w, base_y_blocks * w / 2]) scale(w)
|
scale(w) blocks(
|
||||||
for(p = px_circle(base_y_blocks / 2, filled = true)) {
|
px_circle(base_y_blocks / 2, filled = true)
|
||||||
translate(p)
|
);
|
||||||
square(1, center = true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user