2 # Copyright 2007 by Bdale Garbee <bdale@gag.com>. GPLv2
4 # Program to emit PCB footprint for ALPS SKQU Series 4-direction switch
7 # dimensions in mm from abm8.pdf Abracon datasheet
8 BodySquare = 10 # body outline
9 Column = 10.3 # space between pin columns
10 Row = 6.5 # space between top and bottom pin rows
11 Offset = 0.45 # offset of middle row below center line
12 BigPin = 1.2 # hole diameter for big pins
13 SmallPin = 1.0 # hole diameter for small pins
17 # we're going to use the 1/100 of a mil fundamental unit form
19 return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 )
21 print '# author: Bdale Garbee'
22 print '# email: bdale@gag.com'
23 print '# dist-license: GPL 2'
24 print '# use-license: unlimited'
26 print 'Element[0x0 "SKQU" "" "" 0 0 0 0 0 100 0x0]'
29 mm2mils100(-Column/2), \
38 mm2mils100(-Column/2), \
43 mm2mils100(SmallPin), \
47 mm2mils100(-Column/2), \
56 mm2mils100(Column/2), \
65 mm2mils100(Column/2), \
70 mm2mils100(SmallPin), \
74 mm2mils100(Column/2), \
82 print ' ElementLine[',\
83 -mm2mils100(BodySquare/2), \
84 -mm2mils100(BodySquare/2), \
85 mm2mils100(BodySquare/2), \
86 -mm2mils100(BodySquare/2), \
89 print ' ElementLine[',\
90 -mm2mils100(BodySquare/2), \
91 -mm2mils100(BodySquare/2), \
92 -mm2mils100(BodySquare/2), \
93 mm2mils100(BodySquare/2), \
96 print ' ElementLine[',\
97 -mm2mils100(BodySquare/2), \
98 mm2mils100(BodySquare/2), \
99 mm2mils100(BodySquare/2), \
100 mm2mils100(BodySquare/2), \
103 print ' ElementLine[',\
104 mm2mils100(BodySquare/2), \
105 mm2mils100(BodySquare/2), \
106 mm2mils100(BodySquare/2), \
107 -mm2mils100(BodySquare/2), \
111 print ' ElementArc[',\