def testChips(self): for k in lib._chip_metric_dimensions.keys(): for p, n in self.PROFILES.items(): for polarized in (True, False): name = 'chip_m_%s_%s' % (k, n) name += 'P' if polarized else '' fp = lib.chip(p, lib.metric(k), polarized) self._check_svg(name, fp) for k in lib._chip_imperial_dimensions.keys(): for p, n in self.PROFILES.items(): for polarized in (True, False): name = 'chip_i_%s_%s' % (k, n) name += 'P' if polarized else '' fp = lib.chip(p, lib.imperial(k), polarized) self._check_svg(name, fp)
from kidraw import footprint as fp from kidraw import ipc from kidraw.ipc import library as lib metric = lambda s: ('metric', s, lib.metric(s)) imperial = lambda s: ('imperial', s, lib.imperial(s)) def test_point(size): f = fp.Footprint(name='Test Point {0}mm'.format(size)) f.features = [fp.TestPad(name=1, size=(size, size))] return f def chip(size, polarized=False, profile=ipc.LandPatternSize.Nominal): t, n, s = size desc = '{0} ({1}) {2}chip device'.format(n, t, 'polarized ' if polarized else '') f = fp.Footprint(name=n, description=desc) c = lib.chip(profile, s, polarized) f.from_ipc(c) return f def SOIC(A, B, L, T, W, num_pins, pitch=1.27, profile=ipc.LandPatternSize.Nominal): f = fp.Footprint(name='{0}-SOIC'.format(num_pins), description='{0}-pin SOIC'.format(num_pins)) f.from_ipc(lib.SOIC(profile, A, B, L, T, W, num_pins, pitch)) return f def SOP(A, B, L, T, W, num_pins, pitch, profile=ipc.LandPatternSize.Nominal): f = fp.Footprint(name='{0}-SOP'.format(num_pins), description='{0}-pin SOP'.format(num_pins)) f.from_ipc(lib.SOP(profile, A, B, L, T, W, num_pins, pitch)) return f