/* MACHINE-GENERATED ! */ frame pad_r { ll: vec @(0mm, -b/2) x: vec .(a, 0mm) y: vec ll(0mm, b) pad "2" . x } frame pad_l { ll: vec @(-a, -b/2) w: vec .(a, 0mm) h: vec ll(0mm, b) pad "1" . w } frame pads { left: vec @(-e/2, 0mm) frame pad_l . right: vec @(e/2, 0mm) frame pad_r . } frame outline { ll: vec @(-Ox/2, -Oy/2) ur: vec @(Ox/2, Oy/2) rect ll . silk } package "$name" unit mm table { name, L, W, a, b, e } { "0201", 0.6mm, 0.3mm, 0.28mm, 0.43mm, 0.23mm } { "0402", 1mm, 0.5mm, 0.4mm, 0.6mm, 0.5mm } { "0603", 1.55mm, 0.85mm, 0.5mm, 0.9mm, 1mm } { "0805", 2mm, 1.25mm, 0.7mm, 1.3mm, 1.2mm } { "1206", 3.2mm, 1.6mm, 0.9mm, 1.7mm, 2mm } { "1210", 3.2mm, 2.5mm, 0.9mm, 2.5mm, 2mm } set silk = 5mil set clear = 5mil set Ox = e+2*a+2*clear set Oy = b+2*clear frame pads @ frame outline @ measx pad_l.w >> pad_r.ll -0.3mm measx pad_l.ll -> pad_l.w -0.3mm measy pad_l.ll >> pad_l.h 0.3mm measx outline.ll >> outline.ur Oy+0.3mm measy outline.ur >> outline.ll 0.3mm measx pad_l.ll >> pad_r.x -0.5mm