X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=pandemic-quarantines.scad;h=834d128dc833e9107ccaedd61d0d64282658d82c;hp=a99cf7a4e939c54fdf0293e99d28f34f844c2161;hb=9f21563a34c99c15c3adcd2a72ab0da7cf741bbe;hpb=b5d968808a116f36d39c9b949cb54fb1eb73c8f4 diff --git a/pandemic-quarantines.scad b/pandemic-quarantines.scad index a99cf7a..834d128 100644 --- a/pandemic-quarantines.scad +++ b/pandemic-quarantines.scad @@ -3,9 +3,23 @@ prisml = 13; triedge = 13; +etchdepth = 1.0; + +figboxsize = 13; + +// calculated + +triheight = triedge / 2 * sqrt(3); +tricentre = triedge / 2 * tan(30); + +module Number(number) { + translate([-figboxsize/2, -figboxsize/2]) + import(file=str("pandemic-quarantine-l",number,".dxf"), convexity=100); +} + module FaceTriangle(){ x = triedge / 2; - y = triedge / 2 * sqrt(3); + y = triheight; polygon([[-x, 0], [ 0, y], [ x, 0]]); @@ -17,4 +31,35 @@ module Body(){ linear_extrude(height=prisml) FaceTriangle(); } -Body(); +module NumberCut(number){ + translate([0,0, -etchdepth]) + linear_extrude(height= etchdepth + 1) + Number(number); +} + +module Etchings(){ + for (rot=[0,180]) { + rotate([0,0, rot]) + translate([0, -prisml/2, triedge * 0.3]) + rotate([90, 0, 0]) + NumberCut(2); + } + for (rot=[0,120,240]) { + translate([0,0, tricentre]) + rotate([0, rot, 0]) + translate([0,0, -tricentre]) + rotate([0,180,0]) + rotate([0,0, rot==240 ? 90 : -90]) + NumberCut(1); + } +} + +module Counter(){ + difference(){ + Body(); + Etchings(); + } +} + +Counter(); +//NumberCut(1);