2 # Copyright 2013 by Bdale Garbee <bdale@gag.com>. GPLv2
4 # Program to emit PCB footprint for Linear Technologies S8 footprint,
5 # which is used on parts like the LT1963A series.
8 # dimensions in inches from 1963aff.pdf
18 # we're going to use the 1/100 of a mil fundamental unit form
20 return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 )
21 def inch2mils100( inch ):
22 return int( inch * 1000.0 * 100.0 + 0.5 )
24 print '# author: Bdale Garbee'
25 print '# email: bdale@gag.com'
26 print '# dist-license: GPL 2'
27 print '# use-license: unlimited'
29 print 'Element[0x0 "MOT1317" "" "" 0 0 -10161 -12011 0 100 0x0]'
31 for pin in range (0,4):
33 inch2mils100((pin-1.5) * PinSpacing), \
34 inch2mils100(-(RowSpacing/2 + PinWidth/2)), \
35 inch2mils100((pin-1.5) * PinSpacing), \
36 inch2mils100(-(RowSpacing/2 + PinHeight - PinWidth/2)), \
37 inch2mils100(PinWidth), \
38 inch2mils100(PinSpacing - PinWidth), \
39 inch2mils100(PinWidth)+600, \
40 '"pin%i"' % (8 - pin), '"%i"' % (8 - pin), '0x0100]'
43 inch2mils100((pin-1.5) * PinSpacing), \
44 inch2mils100(RowSpacing/2 + PinWidth/2), \
45 inch2mils100((pin-1.5) * PinSpacing), \
46 inch2mils100(RowSpacing/2 + PinHeight - PinWidth/2), \
47 inch2mils100(PinWidth), \
48 inch2mils100(PinSpacing - PinWidth), \
49 inch2mils100(PinWidth)+600, \
50 '"pin%i"' % (1 + pin), '"%i"' % (1 + pin), '0x0100]'
52 #print ' ElementLine[',\
53 # inch2mils100(-BodyHeight/2), \
54 # inch2mils100(-BodyWidth/2), \
55 # inch2mils100(-BodyHeight/2), \
56 # inch2mils100( BodyWidth/2), \
59 #print ' ElementLine[',\
60 # inch2mils100(-BodyHeight/2), \
61 # inch2mils100( BodyWidth/2), \
62 # inch2mils100( BodyHeight/2), \
63 # inch2mils100( BodyWidth/2), \
66 #print ' ElementLine[',\
67 # inch2mils100( BodyHeight/2), \
68 # inch2mils100( BodyWidth/2), \
69 # inch2mils100( BodyHeight/2), \
70 # inch2mils100(-BodyWidth/2), \
73 #print ' ElementLine[',\
74 # inch2mils100( BodyHeight/2), \
75 # inch2mils100(-BodyWidth/2), \
76 # inch2mils100(-BodyHeight/2), \
77 # inch2mils100(-BodyWidth/2), \
80 print ' ElementArc[',\
81 inch2mils100(-1.5 * PinSpacing), \
82 inch2mils100(RowSpacing/3), \
83 '500 500 0 360 1000 ]'