from cad_shapes import * # Render boundaries cad.xmin = -1 cad.xmax = 10 cad.ymin = -1 cad.ymax = 10 cad.mm_per_unit = 25.4 # inch units tablen = float(.125) tabwid = float(.5) midwid = tabwid-tablen/2 corner = float(.03) rx = tabwid*6 ry = 2*midwid+2*tablen r = rectangle(0, rx, 0, ry) h = rectangle(0,tablen,-tabwid/2,tabwid/2) h1 = h h = add(h,triangle(0, tabwid/2, 0, tabwid/2+corner, corner, tabwid/2)) h = add(h, triangle(0, -tabwid/2-corner, 0, tabwid/2, corner, -tabwid/2)) r = subtract(r,move(h,0,ry/2)) tab = rectangle(0,tablen,-tabwid/2,tabwid/2) tab = subtract(tab, triangle(tablen-corner, tabwid/2, tablen, tabwid/2, tablen, tabwid/2-corner)) tab = subtract(tab, triangle( tablen, -tabwid/2, tablen-corner, -tabwid/2,tablen, -tabwid/2+corner)) r = add(r,move(tab,rx, ry/2)) rothu = move(rotate(h,-90), tabwid/2,0) r = subtract(r, move(rothu, tabwid, ry)) r = subtract(r, move(rothu, 3*tabwid, ry)) r = subtract(r, move(rothu, 5*tabwid, ry)) rothd = move(rotate(h,90), tabwid/2,0) r = subtract(r, move(rothd, 0, 0)) r = subtract(r, move(rothd, 2*tabwid, 0)) r = subtract(r, move(rothd, 4*tabwid, 0)) rothc = move(rotate(h1,90), tabwid/2,0) r = subtract(r, move(rothc, tabwid, midwid+tablen/2)) r = subtract(r, move(rothc, 3*tabwid, midwid+tablen/2)) r = subtract(r, move(rothc, 5*tabwid, midwid+tablen/2)) unit = add(add(r,move(r, 0, ry)), move(r,0, 2*ry)) unit1 = add(add(unit,move(unit, 0, 3*ry)), move(unit,0, 6*ry)) cad.function = add(unit1, move(unit1, rx+tablen, 0))