2 # Copyright 2017 by Bdale Garbee <bdale@gag.com>. GPLv2+
4 # Program to emit PCB footprint for
5 # TE Connectivity (AMP) through-hole BNC connectors 5227673 & 5227677
7 # This footprint is meant to allow the right-angle connector to be installed
8 # on the "top" surface of the board, and the straight connector to be
9 # installed on the top or bottom of the board.
11 # dimensions in mm from ENG_CD_5227673_A.pdf & ENG_CD_5227677_A1.pdf
29 # we're going to use the 1/100 of a mil fundamental unit form
31 return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 )
33 print '# author: Bdale Garbee'
34 print '# email: bdale@gag.com'
35 print '# dist-license: GPL 2+'
36 print '# use-license: unlimited'
38 print 'Element[0x0 "AMP BNC" "" "" 0 0 0 0 0 100 0x0]'
44 mm2mils100(PinDiam+ThicknessDelta), \
45 mm2mils100(Clearance), \
46 mm2mils100(PinDiam+ThicknessDelta+MaskDelta), \
47 mm2mils100(PinDiam), \
54 mm2mils100(-PinSpacing), \
55 mm2mils100(PinDiam+ThicknessDelta), \
56 mm2mils100(Clearance), \
57 mm2mils100(PinDiam+ThicknessDelta+MaskDelta), \
58 mm2mils100(PinDiam), \
64 mm2mils100(MntSpacing/2), \
65 mm2mils100(MntSpacing/2), \
66 mm2mils100(MntDiam+ThicknessDelta), \
67 mm2mils100(Clearance), \
68 mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \
69 mm2mils100(MntDiam), \
75 mm2mils100(-MntSpacing/2), \
76 mm2mils100(MntSpacing/2), \
77 mm2mils100(MntDiam+ThicknessDelta), \
78 mm2mils100(Clearance), \
79 mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \
80 mm2mils100(MntDiam), \
86 mm2mils100(MntSpacing/2), \
87 mm2mils100(-MntSpacing/2), \
88 mm2mils100(MntDiam+ThicknessDelta), \
89 mm2mils100(Clearance), \
90 mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \
91 mm2mils100(MntDiam), \
97 mm2mils100(-MntSpacing/2), \
98 mm2mils100(-MntSpacing/2), \
99 mm2mils100(MntDiam+ThicknessDelta), \
100 mm2mils100(Clearance), \
101 mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \
102 mm2mils100(MntDiam), \
108 print ' ElementLine[', \
109 mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \
110 mm2mils100(SilkBox/2), \
111 mm2mils100(MntSpacing/2+Mnt2Edge), \
112 mm2mils100(SilkBox/2), \
115 print ' ElementLine[', \
116 mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \
117 mm2mils100(-SilkBox/2), \
118 mm2mils100(MntSpacing/2+Mnt2Edge), \
119 mm2mils100(-SilkBox/2), \
122 print ' ElementLine[', \
123 mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \
124 mm2mils100(SilkBox/2), \
125 mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \
126 mm2mils100(-SilkBox/2), \
129 print ' ElementLine[', \
130 mm2mils100(MntSpacing/2+Mnt2Edge), \
131 mm2mils100(SilkBox/2), \
132 mm2mils100(MntSpacing/2+Mnt2Edge), \
133 mm2mils100(-SilkBox/2), \