Skip to content

Instantly share code, notes, and snippets.

@candera
Last active January 21, 2016 21:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save candera/40f6fc590d4019278939 to your computer and use it in GitHub Desktop.
Save candera/40f6fc590d4019278939 to your computer and use it in GitHub Desktop.
(require '[scad-clj.scad :refer :all]
'[scad-clj.model :refer :all])
(defn degrees [d]
(-> d (/ 180.0) (* Math/PI)))
(def x-axis [1 0 0])
(def y-axis [0 1 0])
(def z-axis [0 0 1])
(defn handle
[{:keys [well-interior-wall-thickness
well-width
height-above
handle-width
cells-x
cells-y]}]
(let [cell-length (+ well-interior-wall-thickness well-width)
length (* cell-length cells-x)]
(->> (cube length
handle-width
height-above)
(translate [(* cell-length (dec cells-x) 0.5)
(- (/ cell-length -2) (/ handle-width 2))
(/ height-above 2)])
(color [1 0 0 1]))))
(defn top
[{:keys [cells-x cells-y
well-interior-wall-thickness
well-exterior-wall-thickness
well-width
height-above
height-below
guard-wall-thickness
hole-size
hole-descent]}]
(->> (cube (+ well-width well-interior-wall-thickness)
(+ well-width well-interior-wall-thickness)
height-above)
(translate [0 0 (/ height-above 2.0)])))
(defn insert
[{:keys [height-below well-width] :as params}]
(->> (cube well-width well-width height-below)
(translate [0 0 (/ height-below -2.0)])))
(defn taper
[{:keys [hole-descent well-width height-below hole-radius]}]
(let [d1 (/ well-width 2.0)
z1 (- height-below)
c0 [d1 d1 z1]
c1 [d1 (- d1) z1]
c2 [(- d1) (- d1) z1]
c3 [(- d1) d1 z1]
c4 [0 0 (- 0 height-below hole-descent)]]
(difference (polyhedron [c0 c1 c2 c3 c4]
[[1 0 4]
[2 1 4]
[3 2 4]
[0 3 4]
[0 1 2 3]]
:convexity 2)
(->> (cube well-width well-width hole-descent)
(translate [0 0 (/ hole-descent -2.0)])
(translate [0 0 (- height-below)])
(translate [0 0 (- hole-descent)])
(translate [0 0 (* hole-descent
(/ hole-radius (/ well-width 2.0)))])
(color [1 0 0 1])))))
(defn hole
[{:keys [hole-descent height-below height-above hole-radius]}]
(let [h (+ hole-descent height-below height-above)]
(->> (with-fn 24
(cylinder hole-radius (+ h 4.0)))
(translate [0 0 (- height-above (/ h 2.0) 1.0)]))))
(defn well
[params]
(-> (union (top params)
(insert params)
(taper params))
(difference (hole params))))
(defn guard
[{:keys [cells-x cells-y
well-interior-wall-thickness
well-exterior-wall-thickness
well-width
height-above
height-below
guard-wall-thickness
hole-radius
hole-descent]
:as params}]
(->> (apply union
(handle params)
(for [x (range cells-x)
y (range cells-y)]
(let [cell-width (+ well-width well-interior-wall-thickness)]
(->> (well params)
(translate [(* x cell-width)
(* y cell-width)
0])))))
(rotate (degrees 180) x-axis)))
(let [padding 0.1]
(->> (guard
{:cells-x 12
:cells-y 8
:well-interior-wall-thickness (+ padding 0.85)
:well-width (- 8.13 padding)
:height-above 3
:height-below 3
:handle-width 7
:hole-descent 3
:hole-radius (/ 3.2 2)})
write-scad
(spit "solvent-guard.scad")))
rotate (a=180.0, v=[1, 0, 0]) {
union () {
color ([1, 0, 0, 1]) {
translate ([49.39, -7.99, 3/2]) {
cube ([107.76, 7, 3], center=true);
}
}
translate ([0.0, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([0.0, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([8.98, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([17.96, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([26.94, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([35.92, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([44.900000000000006, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([53.88, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([62.86, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([71.84, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([80.82000000000001, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([89.80000000000001, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 0.0, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 8.98, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 17.96, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 26.94, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 35.92, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 44.900000000000006, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 53.88, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
translate ([98.78, 62.86, 0]) {
difference () {
union () {
translate ([0, 0, 1.5]) {
cube ([8.98, 8.98, 3], center=true);
}
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
difference () {
polyhedron (points=[[4.015000000000001, 4.015000000000001, -3], [4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, -4.015000000000001, -3], [-4.015000000000001, 4.015000000000001, -3], [0, 0, -6]], faces=[[1, 0, 4], [2, 1, 4], [3, 2, 4], [0, 3, 4], [0, 1, 2, 3]], convexity=2);
color ([1, 0, 0, 1]) {
translate ([0, 0, 1.195516811955168]) {
translate ([0, 0, -3]) {
translate ([0, 0, -3]) {
translate ([0, 0, -1.5]) {
cube ([8.030000000000001, 8.030000000000001, 3], center=true);
}
}
}
}
}
}
}
translate ([0, 0, -2.5]) {
cylinder ($fn=24, h=13.0, r=1.6, center=true);
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment