Index: trunk/pcblib/tru-hole/TO218.fp =================================================================== --- trunk/pcblib/tru-hole/TO218.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO218.fp (nonexistent) @@ -1,434 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO218 diode in TO220 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.489983mm - rot = 0.000000 - y = 3.302783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 8.052583mm - rot = 0.000000 - y = 3.302783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 13.615183mm - rot = 0.000000 - y = 3.302783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.13 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 15.875783mm - ha:flags { - } - y1 = 5.334783mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 15.875783mm - x2 = 15.875783mm - ha:flags { - } - y1 = 5.334783mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 15.875783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.22 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 15.875783mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.25 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 6.147583mm - x2 = 6.147583mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.28 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 9.957583mm - x2 = 9.957583mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 17.399783mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.31 { - clearance = 0.0 - y2 = 3.302783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 8.052583mm - x2 = 8.052583mm - ha:flags { - } - y1 = 3.302783mm - } - ha:line.34 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.489983mm - x2 = 2.489983mm - ha:flags { - } - y1 = 6.858783mm - } - ha:line.37 { - clearance = 0.0 - y2 = 7.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.489983mm - x2 = 2.489983mm - ha:flags { - } - y1 = 6.858783mm - } - ha:line.40 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.489983mm - x2 = 3.489983mm - ha:flags { - } - y1 = 6.858783mm - } - } - ha:combining { - } - } - } - } - uid = es25ud3aaCFW34xH0swAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO264.fp =================================================================== --- trunk/pcblib/tru-hole/TO264.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO264.fp (nonexistent) @@ -1,434 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO264 diode in TO220 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 4.852183mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 10.414783mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 15.977383mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 5.588783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.13 { - clearance = 0.0 - y2 = 5.588783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 20.574783mm - ha:flags { - } - y1 = 5.588783mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 20.574783mm - x2 = 20.574783mm - ha:flags { - } - y1 = 5.588783mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 20.574783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.22 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 20.574783mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.25 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 8.509783mm - x2 = 8.509783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.28 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 12.319783mm - x2 = 12.319783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 22.098783mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.31 { - clearance = 0.0 - y2 = 3.556783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 3.556783mm - } - ha:line.34 { - clearance = 0.0 - y2 = 7.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 4.852183mm - x2 = 4.852183mm - ha:flags { - } - y1 = 7.112783mm - } - ha:line.37 { - clearance = 0.0 - y2 = 8.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 4.852183mm - x2 = 4.852183mm - ha:flags { - } - y1 = 7.112783mm - } - ha:line.40 { - clearance = 0.0 - y2 = 7.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 4.852183mm - x2 = 5.852183mm - ha:flags { - } - y1 = 7.112783mm - } - } - ha:combining { - } - } - } - } - uid = 8OAC9HM9Aw1ZzceKxDMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO220SW.fp =================================================================== --- trunk/pcblib/tru-hole/TO220SW.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO220SW.fp (nonexistent) @@ -1,482 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO220SW Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.794783mm - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 5.334783mm - rot = 0.000000 - y = 300.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 7.874783mm - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 260.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 260.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 260.0mil - } - ha:line.19 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 260.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.25 { - clearance = 0.0 - y2 = 140.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 140.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 140.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 140.0mil - } - ha:line.34 { - clearance = 0.0 - y2 = 140.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 3.556783mm - x2 = 3.556783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.37 { - clearance = 0.0 - y2 = 140.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 7.112783mm - x2 = 7.112783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.40 { - clearance = 0.0 - y2 = 260.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 300.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.254783mm - y = 10.0mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.43 { - clearance = 0.0 - y2 = 5.926666mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 5.926666mm - } - ha:line.46 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 200.0mil - } - ha:line.49 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.794783mm - x2 = 3.794783mm - ha:flags { - } - y1 = 200.0mil - } - ha:line.52 { - clearance = 0.0 - y2 = 6.08mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 200.0mil - } - } - ha:combining { - } - } - } - } - uid = wyLdsi+eW/3szft7c1QAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/MULTIWATT8.fp =================================================================== --- trunk/pcblib/tru-hole/MULTIWATT8.fp (revision 34911) +++ trunk/pcblib/tru-hole/MULTIWATT8.fp (nonexistent) @@ -1,524 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = MULTIWATT8 Power IC - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 63.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 163.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 263.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 363.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.11 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 463.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.12 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 563.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.13 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 663.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.14 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 763.0mil - rot = 0.000000 - y = 3.175783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 13.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.18 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 813.0mil - ha:flags { - } - y1 = 5.334783mm - } - ha:line.21 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 813.0mil - x2 = 813.0mil - ha:flags { - } - y1 = 5.334783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 813.0mil - x2 = 13.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 813.0mil - ha:flags { - } - y1 = 1.524783mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 338.0mil - x2 = 338.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 488.0mil - x2 = 488.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 873.0mil - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.36 { - clearance = 0.0 - y2 = 3.175783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 413.0mil - x2 = 413.0mil - ha:flags { - } - y1 = 3.175783mm - } - ha:line.39 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 63.0mil - x2 = 63.0mil - ha:flags { - } - y1 = 6.858783mm - } - ha:line.42 { - clearance = 0.0 - y2 = 7.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 63.0mil - x2 = 63.0mil - ha:flags { - } - y1 = 6.858783mm - } - ha:line.45 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 63.0mil - x2 = 2.6002mm - ha:flags { - } - y1 = 6.858783mm - } - } - ha:combining { - } - } - } - } - uid = IQhuhU7OlwL8WndT1toAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC51U.fp =================================================================== --- trunk/pcblib/tru-hole/HC51U.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC51U.fp (nonexistent) @@ -1,384 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HC51U Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 3.71348mm - rot = 0.000000 - y = 4.72948mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 631.2mil - rot = 0.000000 - y = 4.72948mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.25908mm - thickness = 20.0mil - ha:attributes { - } - x1 = 4.72948mm - x2 = 591.2mil - ha:flags { - } - y1 = 0.25908mm - } - ha:line.13 { - clearance = 0.0 - y2 = 9.19988mm - thickness = 20.0mil - ha:attributes { - } - x1 = 591.2mil - x2 = 4.72948mm - ha:flags { - } - y1 = 9.19988mm - } - ha:arc.12 { - astart = 90 - thickness = 20.0mil - width = 176.0mil - height = 176.0mil - ha:attributes { - } - x = 591.2mil - y = 4.72948mm - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:arc.16 { - astart = 270 - thickness = 20.0mil - width = 176.0mil - height = 176.0mil - ha:attributes { - } - x = 4.72948mm - y = 4.72948mm - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.25908mm - y = -1.26492mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.17 { - clearance = 0.0 - y2 = 4.72948mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 9.87298mm - x2 = 9.87298mm - ha:flags { - } - y1 = 4.72948mm - } - ha:line.20 { - clearance = 0.0 - y2 = 4.72948mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.71348mm - x2 = 3.71348mm - ha:flags { - } - y1 = 4.72948mm - } - ha:line.23 { - clearance = 0.0 - y2 = 4.72948mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.71348mm - x2 = 4.71348mm - ha:flags { - } - y1 = 4.72948mm - } - ha:line.26 { - clearance = 0.0 - y2 = 5.72948mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.71348mm - x2 = 3.71348mm - ha:flags { - } - y1 = 4.72948mm - } - } - ha:combining { - } - } - } - } - uid = +FiihmhDvVGqTubuzyoAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC49U_3H.fp =================================================================== --- trunk/pcblib/tru-hole/HC49U_3H.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC49U_3H.fp (nonexistent) @@ -1,398 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HC49U_3H Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 3.328183mm - rot = 0.000000 - y = 15.875783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 5.766583mm - rot = 0.000000 - y = 15.875783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 8.204983mm - rot = 0.000000 - y = 15.875783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 11.303783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.13 { - clearance = 0.0 - y2 = 13.335783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 11.303783mm - x2 = 11.303783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.16 { - clearance = 0.0 - y2 = 13.335783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 11.303783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 13.335783mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 13.335783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.254783mm - y = -1.269217mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 15.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.766583mm - x2 = 5.766583mm - ha:flags { - } - y1 = 15.875783mm - } - ha:line.25 { - clearance = 0.0 - y2 = 15.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.328183mm - x2 = 3.328183mm - ha:flags { - } - y1 = 15.875783mm - } - ha:line.28 { - clearance = 0.0 - y2 = 16.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.328183mm - x2 = 3.328183mm - ha:flags { - } - y1 = 15.875783mm - } - ha:line.31 { - clearance = 0.0 - y2 = 15.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.328183mm - x2 = 4.328183mm - ha:flags { - } - y1 = 15.875783mm - } - } - ha:combining { - } - } - } - } - uid = VTNBJgXKGQ7phRTbFDUAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/LED3.fp =================================================================== --- trunk/pcblib/tru-hole/LED3.fp (revision 34911) +++ trunk/pcblib/tru-hole/LED3.fp (nonexistent) @@ -1,388 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = LED3, 3mm LED (pin 1 is +, 2 is -) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 43.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -32.5mil - -32.5mil - 32.5mil - -32.5mil - 32.5mil - 32.5mil - -32.5mil - 32.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -32.5mil - -32.5mil - 32.5mil - -32.5mil - 32.5mil - 32.5mil - -32.5mil - 32.5mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -32.5mil - -32.5mil - 32.5mil - -32.5mil - 32.5mil - 32.5mil - -32.5mil - 32.5mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.5mil - -35.5mil - 35.5mil - -35.5mil - 35.5mil - 35.5mil - -35.5mil - 35.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.5mil - -35.5mil - 35.5mil - -35.5mil - 35.5mil - 35.5mil - -35.5mil - 35.5mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 43.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 65.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 65.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 65.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 71.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 71.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 50.5mil - rot = 0.000000 - y = 2.13614mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 150.5mil - rot = 0.000000 - y = 2.13614mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:arc.9 { - astart = 45 - thickness = 10.0mil - width = 59.0mil - height = 59.0mil - ha:attributes { - } - x = 100.5mil - y = 2.13614mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.10 { - astart = 225 - thickness = 10.0mil - width = 59.0mil - height = 59.0mil - ha:attributes { - } - x = 100.5mil - y = 2.13614mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.11 { - astart = 45 - thickness = 10.0mil - width = 79.0mil - height = 79.0mil - ha:attributes { - } - x = 100.5mil - y = 2.13614mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.12 { - astart = 225 - thickness = 10.0mil - width = 79.0mil - height = 79.0mil - ha:attributes { - } - x = 100.5mil - y = 2.13614mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 200.5mil - y = 3.91414mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.13 { - clearance = 0.0 - y2 = 2.13614mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 100.5mil - x2 = 100.5mil - ha:flags { - } - y1 = 2.13614mm - } - ha:line.16 { - clearance = 0.0 - y2 = 2.13614mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 100.5mil - x2 = 100.5mil - ha:flags { - } - y1 = 2.13614mm - } - ha:line.19 { - clearance = 0.0 - y2 = 2.13614mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 100.5mil - x2 = 3.5527mm - ha:flags { - } - y1 = 2.13614mm - } - ha:line.22 { - clearance = 0.0 - y2 = 3.13614mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 100.5mil - x2 = 100.5mil - ha:flags { - } - y1 = 2.13614mm - } - } - ha:combining { - } - } - } - } - uid = AXOBLf2n2pEOmUoe7pcAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/LED5.fp =================================================================== --- trunk/pcblib/tru-hole/LED5.fp (revision 34911) +++ trunk/pcblib/tru-hole/LED5.fp (nonexistent) @@ -1,360 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = LED5, 5mm LED (pin 1 is +, 2 is -) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 43.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -32.5mil - -32.5mil - 32.5mil - -32.5mil - 32.5mil - 32.5mil - -32.5mil - 32.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -32.5mil - -32.5mil - 32.5mil - -32.5mil - 32.5mil - 32.5mil - -32.5mil - 32.5mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -32.5mil - -32.5mil - 32.5mil - -32.5mil - 32.5mil - 32.5mil - -32.5mil - 32.5mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.5mil - -35.5mil - 35.5mil - -35.5mil - 35.5mil - 35.5mil - -35.5mil - 35.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.5mil - -35.5mil - 35.5mil - -35.5mil - 35.5mil - 35.5mil - -35.5mil - 35.5mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 43.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 65.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 65.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 65.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 71.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 71.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.36474mm - rot = 0.000000 - y = 3.63474mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 4.90474mm - rot = 0.000000 - y = 3.63474mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:arc.9 { - astart = 0 - thickness = 10.0mil - width = 118.0mil - height = 118.0mil - ha:attributes { - } - x = 3.63474mm - y = 3.63474mm - adelta = 360 - ha:flags { - } - clearance = 0.0 - } - ha:arc.10 { - astart = 0 - thickness = 10.0mil - width = 138.0mil - height = 138.0mil - ha:attributes { - } - x = 3.63474mm - y = 3.63474mm - adelta = 360 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.17474mm - y = 5.41274mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 3.63474mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.63474mm - x2 = 3.63474mm - ha:flags { - } - y1 = 3.63474mm - } - ha:line.14 { - clearance = 0.0 - y2 = 3.63474mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.63474mm - x2 = 3.63474mm - ha:flags { - } - y1 = 3.63474mm - } - ha:line.17 { - clearance = 0.0 - y2 = 3.63474mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.63474mm - x2 = 4.63474mm - ha:flags { - } - y1 = 3.63474mm - } - ha:line.20 { - clearance = 0.0 - y2 = 4.63474mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.63474mm - x2 = 3.63474mm - ha:flags { - } - y1 = 3.63474mm - } - } - ha:combining { - } - } - } - } - uid = hFGipNdgRBmeMBGUNCcAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO220S.fp =================================================================== --- trunk/pcblib/tru-hole/TO220S.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO220S.fp (nonexistent) @@ -1,678 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO220S Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 130.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 150.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 150.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 150.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 156.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 156.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.794783mm - rot = 0.000000 - y = 20.320783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 5.334783mm - rot = 0.000000 - y = 22.860783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 7.874783mm - rot = 0.000000 - y = 20.320783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 2 - xmirror = 0 - x = 5.334783mm - rot = 0.000000 - y = 3.302783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 30.0mil - ha:attributes { - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.14 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 30.0mil - ha:attributes { - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 22.860783mm - } - ha:line.17 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 30.0mil - ha:attributes { - } - x1 = 7.874783mm - x2 = 7.874783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.20 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 15.748783mm - } - ha:line.23 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 15.748783mm - } - ha:line.26 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.29 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.32 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.35 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.38 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.033783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:line.41 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.033783mm - x2 = 10.033783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:line.44 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.033783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.47 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.50 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.53 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.56 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.635783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.59 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.635783mm - x2 = 0.635783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.62 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.635783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:line.65 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 1.524783mm - y = 14.478783mm - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.68 { - clearance = 0.0 - y2 = 16.701283mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 16.701283mm - } - ha:line.71 { - clearance = 0.0 - y2 = 20.320783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.74 { - clearance = 0.0 - y2 = 21.320783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.77 { - clearance = 0.0 - y2 = 20.320783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 5.334783mm - x2 = 6.334783mm - ha:flags { - } - y1 = 20.320783mm - } - } - ha:combining { - } - } - } - } - uid = kX4D5wU+XHa4jjNd2YMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/OSC14.fp =================================================================== --- trunk/pcblib/tru-hole/OSC14.fp (revision 34911) +++ trunk/pcblib/tru-hole/OSC14.fp (nonexistent) @@ -1,455 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = OSC14, Crystal oscillator - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 28.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 50.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 50.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 50.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 56.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 56.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = NC - } - proto = 0 - xmirror = 0 - x = 2.54254mm - rot = 0.000000 - y = 2.54254mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = GND - } - proto = 0 - xmirror = 0 - x = 2.54254mm - rot = 0.000000 - y = 700.1mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = CLK - } - proto = 0 - xmirror = 0 - x = 400.1mil - rot = 0.000000 - y = 700.1mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = VCC - } - proto = 0 - xmirror = 0 - x = 400.1mil - rot = 0.000000 - y = 2.54254mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 0.12954mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.12954mm - x2 = 400.1mil - ha:flags { - } - y1 = 0.12954mm - } - ha:line.15 { - clearance = 0.0 - y2 = 700.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 495.1mil - x2 = 495.1mil - ha:flags { - } - y1 = 2.54254mm - } - ha:line.19 { - clearance = 0.0 - y2 = 795.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 400.1mil - x2 = 2.54254mm - ha:flags { - } - y1 = 795.1mil - } - ha:line.23 { - clearance = 0.0 - y2 = 0.12954mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.12954mm - x2 = 0.12954mm - ha:flags { - } - y1 = 700.1mil - } - ha:line.26 { - clearance = 0.0 - y2 = 60.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 2.54254mm - x2 = 400.1mil - ha:flags { - } - y1 = 60.1mil - } - ha:line.30 { - clearance = 0.0 - y2 = 700.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 440.1mil - x2 = 440.1mil - ha:flags { - } - y1 = 2.54254mm - } - ha:line.34 { - clearance = 0.0 - y2 = 740.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 400.1mil - x2 = 2.54254mm - ha:flags { - } - y1 = 740.1mil - } - ha:line.38 { - clearance = 0.0 - y2 = 2.54254mm - thickness = 10.0mil - ha:attributes { - } - x1 = 60.1mil - x2 = 60.1mil - ha:flags { - } - y1 = 700.1mil - } - ha:arc.14 { - astart = 180 - thickness = 10.0mil - width = 95.0mil - height = 95.0mil - ha:attributes { - } - x = 400.1mil - y = 2.54254mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.18 { - astart = 90 - thickness = 10.0mil - width = 95.0mil - height = 95.0mil - ha:attributes { - } - x = 400.1mil - y = 700.1mil - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.22 { - astart = 0 - thickness = 10.0mil - width = 95.0mil - height = 95.0mil - ha:attributes { - } - x = 2.54254mm - y = 700.1mil - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.29 { - astart = 180 - thickness = 10.0mil - width = 40.0mil - height = 40.0mil - ha:attributes { - } - x = 400.1mil - y = 2.54254mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.33 { - astart = 90 - thickness = 10.0mil - width = 40.0mil - height = 40.0mil - ha:attributes { - } - x = 400.1mil - y = 700.1mil - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.37 { - astart = 0 - thickness = 10.0mil - width = 40.0mil - height = 40.0mil - ha:attributes { - } - x = 2.54254mm - y = 700.1mil - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.41 { - astart = 270 - thickness = 10.0mil - width = 40.0mil - height = 40.0mil - ha:attributes { - } - x = 2.54254mm - y = 2.54254mm - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 270.1mil - y = 300.1mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.42 { - clearance = 0.0 - y2 = 400.1mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 6.35254mm - x2 = 6.35254mm - ha:flags { - } - y1 = 400.1mil - } - ha:line.45 { - clearance = 0.0 - y2 = 2.54254mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.54254mm - x2 = 2.54254mm - ha:flags { - } - y1 = 2.54254mm - } - ha:line.48 { - clearance = 0.0 - y2 = 2.54254mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.54254mm - x2 = 3.54254mm - ha:flags { - } - y1 = 2.54254mm - } - ha:line.51 { - clearance = 0.0 - y2 = 3.54254mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.54254mm - x2 = 2.54254mm - ha:flags { - } - y1 = 2.54254mm - } - } - ha:combining { - } - } - } - } - uid = xzk533cq9lHncC5p9N4AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO220W.fp =================================================================== --- trunk/pcblib/tru-hole/TO220W.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO220W.fp (nonexistent) @@ -1,470 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO220W Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.794783mm - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 5.334783mm - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 7.874783mm - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 260.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 260.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 260.0mil - } - ha:line.19 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 260.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.25 { - clearance = 0.0 - y2 = 140.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 140.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 140.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 80.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 140.0mil - } - ha:line.34 { - clearance = 0.0 - y2 = 140.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 3.556783mm - x2 = 3.556783mm - ha:flags { - } - y1 = 80.0mil - } - ha:line.37 { - clearance = 0.0 - y2 = 140.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 7.112783mm - x2 = 7.112783mm - ha:flags { - } - y1 = 80.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.254783mm - y = 10.0mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.40 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 200.0mil - } - ha:line.43 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 200.0mil - } - ha:line.46 { - clearance = 0.0 - y2 = 6.08mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 200.0mil - } - ha:line.49 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.794783mm - x2 = 3.794783mm - ha:flags { - } - y1 = 200.0mil - } - } - ha:combining { - } - } - } - } - uid = ayqDUR+Z6aT2RssOtxMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TACT_6x6_4p =================================================================== --- trunk/pcblib/tru-hole/TACT_6x6_4p (revision 34911) +++ trunk/pcblib/tru-hole/TACT_6x6_4p (nonexistent) @@ -1,589 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint=tactile button - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.999998mm - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 4 - intconn = 2 - } - proto = 0 - xmirror = 0 - x = 1.88591in - rot = 0.000000 - y = 31.623mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 25.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 3 - intconn = 2 - } - proto = 0 - xmirror = 0 - x = 1.63in - rot = 0.000000 - y = 31.623mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 25.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 2 - intconn = 1 - } - proto = 0 - xmirror = 0 - x = 1.88591in - rot = 0.000000 - y = 27.051mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 25.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 1 - intconn = 1 - } - proto = 0 - xmirror = 0 - x = 1.63in - rot = 0.000000 - y = 27.051mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 25.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 1.03614in - thickness = 7.87mil - ha:attributes { - } - x1 = 1.87681in - x2 = 1.87681in - ha:flags { - } - y1 = 32.317944mm - } - ha:line.14 { - clearance = 0.0 - y2 = 32.317944mm - thickness = 7.87mil - ha:attributes { - } - x1 = 1.64059in - x2 = 1.87681in - ha:flags { - } - y1 = 32.317944mm - } - ha:line.17 { - clearance = 0.0 - y2 = 32.317944mm - thickness = 7.87mil - ha:attributes { - } - x1 = 1.64059in - x2 = 1.64059in - ha:flags { - } - y1 = 1.03614in - } - ha:line.20 { - clearance = 0.0 - y2 = 1.03614in - thickness = 7.87mil - ha:attributes { - } - x1 = 1.64059in - x2 = 1.87681in - ha:flags { - } - y1 = 1.03614in - } - ha:arc.23 { - astart = 90 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.24 { - astart = 0 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.25 { - astart = 270 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.26 { - astart = 180 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.27 { - astart = 0 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.28 { - astart = 270 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.29 { - astart = 180 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.30 { - astart = 90 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 46.56201mm - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.31 { - astart = 270 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.32 { - astart = 180 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.33 { - astart = 90 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.34 { - astart = 0 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.23217in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.35 { - astart = 180 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.36 { - astart = 90 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.37 { - astart = 0 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.38 { - astart = 270 - thickness = 7.87mil - width = 0.700024mm - height = 0.700024mm - ha:attributes { - } - x = 1.67567in - y = 1.07469in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.39 { - astart = 270 - thickness = 7.87mil - width = 66.93mil - height = 66.93mil - ha:attributes { - } - x = 1.75441in - y = 1.15343in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.40 { - astart = 180 - thickness = 7.87mil - width = 66.93mil - height = 66.93mil - ha:attributes { - } - x = 1.75441in - y = 1.15343in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.41 { - astart = 90 - thickness = 7.87mil - width = 66.93mil - height = 66.93mil - ha:attributes { - } - x = 1.75441in - y = 1.15343in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:arc.42 { - astart = 0 - thickness = 7.87mil - width = 66.93mil - height = 66.93mil - ha:attributes { - } - x = 1.75441in - y = 1.15343in - adelta = 90 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 1.755in - y = 1.155in - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.43 { - clearance = 0.0 - y2 = 1.155in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.757955in - x2 = 1.757955in - ha:flags { - } - y1 = 1.155in - } - ha:line.46 { - clearance = 0.0 - y2 = 1.155in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.755in - x2 = 1.755in - ha:flags { - } - y1 = 1.155in - } - ha:line.49 { - clearance = 0.0 - y2 = 1.155in - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.755in - x2 = 45.577mm - ha:flags { - } - y1 = 1.155in - } - ha:line.52 { - clearance = 0.0 - y2 = 30.337mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.755in - x2 = 1.755in - ha:flags { - } - y1 = 1.155in - } - } - ha:combining { - } - } - } - } - uid = 2piHZ3u6tsVyFj4ZzGwAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC51UH.fp =================================================================== --- trunk/pcblib/tru-hole/HC51UH.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC51UH.fp (nonexistent) @@ -1,380 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HC51UH Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 3.709183mm - rot = 0.000000 - y = 25.019783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 16.028183mm - rot = 0.000000 - y = 25.019783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 19.482583mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.12 { - clearance = 0.0 - y2 = 19.939783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 19.482583mm - x2 = 19.482583mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.15 { - clearance = 0.0 - y2 = 19.939783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 19.482583mm - x2 = 0.254783mm - ha:flags { - } - y1 = 19.939783mm - } - ha:line.18 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 19.939783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.254783mm - y = -1.269217mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.21 { - clearance = 0.0 - y2 = 25.019783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 9.868683mm - x2 = 9.868683mm - ha:flags { - } - y1 = 25.019783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 25.019783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.709183mm - x2 = 3.709183mm - ha:flags { - } - y1 = 25.019783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 25.019783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.709183mm - x2 = 4.709183mm - ha:flags { - } - y1 = 25.019783mm - } - ha:line.30 { - clearance = 0.0 - y2 = 26.019783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.709183mm - x2 = 3.709183mm - ha:flags { - } - y1 = 25.019783mm - } - } - ha:combining { - } - } - } - } - uid = sAYDhniTNYN3q3leLhwAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO126S.fp =================================================================== --- trunk/pcblib/tru-hole/TO126S.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO126S.fp (nonexistent) @@ -1,534 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO126S Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 110.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 130.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 130.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 130.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 136.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 136.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 110.0mil - rot = 0.000000 - y = 600.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 200.0mil - rot = 0.000000 - y = 700.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 290.0mil - rot = 0.000000 - y = 600.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 2 - xmirror = 0 - x = 200.0mil - rot = 0.000000 - y = 170.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 500.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.14 { - clearance = 0.0 - y2 = 500.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 700.0mil - } - ha:line.17 { - clearance = 0.0 - y2 = 500.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 300.0mil - x2 = 300.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.20 { - clearance = 0.0 - y2 = 500.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 500.0mil - } - ha:line.23 { - clearance = 0.0 - y2 = 70.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 500.0mil - } - ha:line.26 { - clearance = 0.0 - y2 = 70.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 70.0mil - } - ha:line.29 { - clearance = 0.0 - y2 = 500.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 70.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 80.0mil - y = 480.0mil - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.32 { - clearance = 0.0 - y2 = 517.5mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 517.5mil - } - ha:line.35 { - clearance = 0.0 - y2 = 600.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.38 { - clearance = 0.0 - y2 = 16.24mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.41 { - clearance = 0.0 - y2 = 600.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 100.0mil - x2 = 3.54mm - ha:flags { - } - y1 = 600.0mil - } - } - ha:combining { - } - } - } - } - uid = Iqh6vyX2eHbtviil6fUAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO39.fp =================================================================== --- trunk/pcblib/tru-hole/TO39.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO39.fp (nonexistent) @@ -1,412 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO39 Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -27.5mil - -27.5mil - 27.5mil - -27.5mil - 27.5mil - 27.5mil - -27.5mil - 27.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -27.5mil - -27.5mil - 27.5mil - -27.5mil - 27.5mil - 27.5mil - -27.5mil - 27.5mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -27.5mil - -27.5mil - 27.5mil - -27.5mil - 27.5mil - 27.5mil - -27.5mil - 27.5mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.5mil - -30.5mil - 30.5mil - -30.5mil - 30.5mil - 30.5mil - -30.5mil - 30.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.5mil - -30.5mil - 30.5mil - -30.5mil - 30.5mil - 30.5mil - -30.5mil - 30.5mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 55.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 55.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 55.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 61.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 61.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 4.77774mm - rot = 0.000000 - y = 2.23774mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 2.23774mm - rot = 0.000000 - y = 4.77774mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 4.77774mm - rot = 0.000000 - y = 288.1mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 28.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 315.1mil - x2 = 336.1mil - ha:flags { - } - y1 = 49.1mil - } - ha:line.13 { - clearance = 0.0 - y2 = 34.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 321.1mil - x2 = 342.1mil - ha:flags { - } - y1 = 55.1mil - } - ha:line.16 { - clearance = 0.0 - y2 = 40.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 327.1mil - x2 = 348.1mil - ha:flags { - } - y1 = 61.1mil - } - ha:line.19 { - clearance = 0.0 - y2 = 28.1mil - thickness = 10.0mil - ha:attributes { - } - x1 = 348.1mil - x2 = 336.1mil - ha:flags { - } - y1 = 40.1mil - } - ha:arc.22 { - astart = 0 - thickness = 10.0mil - width = 183.0mil - height = 183.0mil - ha:attributes { - } - x = 4.77774mm - y = 4.77774mm - adelta = 360 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.30174mm - y = 258.1mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 4.77774mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.931073mm - x2 = 3.931073mm - ha:flags { - } - y1 = 4.77774mm - } - ha:line.26 { - clearance = 0.0 - y2 = 4.77774mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 4.77774mm - x2 = 4.77774mm - ha:flags { - } - y1 = 4.77774mm - } - ha:line.29 { - clearance = 0.0 - y2 = 3.77774mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 4.77774mm - x2 = 4.77774mm - ha:flags { - } - y1 = 4.77774mm - } - ha:line.32 { - clearance = 0.0 - y2 = 4.77774mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 4.77774mm - x2 = 3.77774mm - ha:flags { - } - y1 = 4.77774mm - } - } - ha:combining { - } - } - } - } - uid = F67S28P4pxCGLl/9emkAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO126W.fp =================================================================== --- trunk/pcblib/tru-hole/TO126W.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO126W.fp (nonexistent) @@ -1,398 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO126W Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 110.0mil - rot = 0.000000 - y = 100.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 200.0mil - rot = 0.000000 - y = 100.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 290.0mil - rot = 0.000000 - y = 100.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 50.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 50.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 150.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 50.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 150.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 150.0mil - } - ha:line.19 { - clearance = 0.0 - y2 = 50.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 150.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 60.0mil - y = 170.0mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 100.0mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 100.0mil - } - ha:line.25 { - clearance = 0.0 - y2 = 100.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 100.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 3.54mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 100.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 100.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 100.0mil - x2 = 3.54mm - ha:flags { - } - y1 = 100.0mil - } - } - ha:combining { - } - } - } - } - uid = M7n7GB058pNjVDcWttAAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC49UH.fp =================================================================== --- trunk/pcblib/tru-hole/HC49UH.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC49UH.fp (nonexistent) @@ -1,380 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HC49UH Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 3.328183mm - rot = 0.000000 - y = 15.875783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 8.204983mm - rot = 0.000000 - y = 15.875783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 11.303783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.12 { - clearance = 0.0 - y2 = 13.335783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 11.303783mm - x2 = 11.303783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.15 { - clearance = 0.0 - y2 = 13.335783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 11.303783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 13.335783mm - } - ha:line.18 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 13.335783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.254783mm - y = -1.269217mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.21 { - clearance = 0.0 - y2 = 15.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.766583mm - x2 = 5.766583mm - ha:flags { - } - y1 = 15.875783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 15.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.328183mm - x2 = 3.328183mm - ha:flags { - } - y1 = 15.875783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 15.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.328183mm - x2 = 4.328183mm - ha:flags { - } - y1 = 15.875783mm - } - ha:line.30 { - clearance = 0.0 - y2 = 16.875783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.328183mm - x2 = 3.328183mm - ha:flags { - } - y1 = 15.875783mm - } - } - ha:combining { - } - } - } - } - uid = d0kIIEVd9hKmfkrR2JwAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO251.fp =================================================================== --- trunk/pcblib/tru-hole/TO251.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO251.fp (nonexistent) @@ -1,434 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO251 diode in TO220 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.0mil - -35.0mil - 35.0mil - -35.0mil - 35.0mil - 35.0mil - -35.0mil - 35.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.0mil - -35.0mil - 35.0mil - -35.0mil - 35.0mil - 35.0mil - -35.0mil - 35.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -35.0mil - -35.0mil - 35.0mil - -35.0mil - 35.0mil - 35.0mil - -35.0mil - 35.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -38.0mil - -38.0mil - 38.0mil - -38.0mil - 38.0mil - 38.0mil - -38.0mil - 38.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -38.0mil - -38.0mil - 38.0mil - -38.0mil - 38.0mil - 38.0mil - -38.0mil - 38.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 70.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 70.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 70.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 76.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 76.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 53.0mil - rot = 0.000000 - y = 1.524783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 143.0mil - rot = 0.000000 - y = 1.524783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 233.0mil - rot = 0.000000 - y = 1.524783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 2.794783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 11.0mil - x2 = 11.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.13 { - clearance = 0.0 - y2 = 2.794783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 11.0mil - x2 = 276.0mil - ha:flags { - } - y1 = 2.794783mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 276.0mil - x2 = 276.0mil - ha:flags { - } - y1 = 2.794783mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 276.0mil - x2 = 11.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.22 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 11.0mil - x2 = 276.0mil - ha:flags { - } - y1 = 1.524783mm - } - ha:line.25 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 68.0mil - x2 = 68.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.28 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 218.0mil - x2 = 218.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 336.0mil - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.31 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 143.0mil - x2 = 143.0mil - ha:flags { - } - y1 = 1.524783mm - } - ha:line.34 { - clearance = 0.0 - y2 = 3.810783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 53.0mil - x2 = 53.0mil - ha:flags { - } - y1 = 3.810783mm - } - ha:line.37 { - clearance = 0.0 - y2 = 4.810783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 53.0mil - x2 = 53.0mil - ha:flags { - } - y1 = 3.810783mm - } - ha:line.40 { - clearance = 0.0 - y2 = 3.810783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 53.0mil - x2 = 2.3462mm - ha:flags { - } - y1 = 3.810783mm - } - } - ha:combining { - } - } - } - } - uid = v2nZCPR4jv3R3f/6N5sAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO126.fp =================================================================== --- trunk/pcblib/tru-hole/TO126.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO126.fp (nonexistent) @@ -1,534 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO126 Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 110.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 130.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 130.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 130.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 136.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 136.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 110.0mil - rot = 0.000000 - y = 600.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 200.0mil - rot = 0.000000 - y = 600.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 290.0mil - rot = 0.000000 - y = 600.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 2 - xmirror = 0 - x = 200.0mil - rot = 0.000000 - y = 170.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 500.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.14 { - clearance = 0.0 - y2 = 500.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.17 { - clearance = 0.0 - y2 = 500.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 300.0mil - x2 = 300.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.20 { - clearance = 0.0 - y2 = 500.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 500.0mil - } - ha:line.23 { - clearance = 0.0 - y2 = 70.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 500.0mil - } - ha:line.26 { - clearance = 0.0 - y2 = 70.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 70.0mil - } - ha:line.29 { - clearance = 0.0 - y2 = 500.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 70.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 80.0mil - y = 480.0mil - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.32 { - clearance = 0.0 - y2 = 492.5mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 492.5mil - } - ha:line.35 { - clearance = 0.0 - y2 = 600.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.38 { - clearance = 0.0 - y2 = 16.24mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 600.0mil - } - ha:line.41 { - clearance = 0.0 - y2 = 600.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 100.0mil - x2 = 3.54mm - ha:flags { - } - y1 = 600.0mil - } - } - ha:combining { - } - } - } - } - uid = O0KUDhlczEfk/O0PriQAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC49U_3.fp =================================================================== --- trunk/pcblib/tru-hole/HC49U_3.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC49U_3.fp (nonexistent) @@ -1,403 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - value = - footprint = HC49U_3 Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 3.33248mm - rot = 0.000000 - y = 101.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 5.77088mm - rot = 0.000000 - y = 101.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 8.20928mm - rot = 0.000000 - y = 101.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 0.25908mm - thickness = 20.0mil - ha:attributes { - } - x1 = 101.2mil - x2 = 8.99668mm - ha:flags { - } - y1 = 0.25908mm - } - ha:line.14 { - clearance = 0.0 - y2 = 4.90728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 8.99668mm - x2 = 101.2mil - ha:flags { - } - y1 = 4.90728mm - } - ha:arc.13 { - astart = 90 - thickness = 20.0mil - width = 91.0mil - height = 91.0mil - ha:attributes { - } - x = 8.99668mm - y = 101.2mil - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:arc.17 { - astart = 270 - thickness = 20.0mil - width = 91.0mil - height = 91.0mil - ha:attributes { - } - x = 101.2mil - y = 101.2mil - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.25908mm - y = -1.26492mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.18 { - clearance = 0.0 - y2 = 101.2mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.77088mm - x2 = 5.77088mm - ha:flags { - } - y1 = 101.2mil - } - ha:line.21 { - clearance = 0.0 - y2 = 101.2mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.33248mm - x2 = 3.33248mm - ha:flags { - } - y1 = 101.2mil - } - ha:line.24 { - clearance = 0.0 - y2 = 3.57048mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.33248mm - x2 = 3.33248mm - ha:flags { - } - y1 = 101.2mil - } - ha:line.27 { - clearance = 0.0 - y2 = 101.2mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.33248mm - x2 = 4.33248mm - ha:flags { - } - y1 = 101.2mil - } - } - ha:combining { - } - } - } - } - uid = yz1V4HtC1LifNPNIfzcAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO247.fp =================================================================== --- trunk/pcblib/tru-hole/TO247.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO247.fp (nonexistent) @@ -1,434 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO247 diode in TO220 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.693183mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 8.255783mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 13.818383mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 5.588783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.13 { - clearance = 0.0 - y2 = 5.588783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 16.256783mm - ha:flags { - } - y1 = 5.588783mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 16.256783mm - x2 = 16.256783mm - ha:flags { - } - y1 = 5.588783mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 16.256783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.22 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 16.256783mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.25 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 6.350783mm - x2 = 6.350783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.28 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 10.160783mm - x2 = 10.160783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 17.780783mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.31 { - clearance = 0.0 - y2 = 3.556783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 8.255783mm - x2 = 8.255783mm - ha:flags { - } - y1 = 3.556783mm - } - ha:line.34 { - clearance = 0.0 - y2 = 7.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 7.112783mm - } - ha:line.37 { - clearance = 0.0 - y2 = 8.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 7.112783mm - } - ha:line.40 { - clearance = 0.0 - y2 = 7.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.693183mm - x2 = 3.693183mm - ha:flags { - } - y1 = 7.112783mm - } - } - ha:combining { - } - } - } - } - uid = iN8eCDY1d9cB+LCvYmsAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO126SW.fp =================================================================== --- trunk/pcblib/tru-hole/TO126SW.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO126SW.fp (nonexistent) @@ -1,434 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO126SW Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 52.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 110.0mil - rot = 0.000000 - y = 100.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 200.0mil - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 290.0mil - rot = 0.000000 - y = 100.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 150.0mil - thickness = 30.0mil - ha:attributes { - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 200.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 50.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 50.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 150.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 350.0mil - ha:flags { - } - y1 = 50.0mil - } - ha:line.19 { - clearance = 0.0 - y2 = 150.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 350.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 150.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 50.0mil - thickness = 20.0mil - ha:attributes { - } - x1 = 50.0mil - x2 = 50.0mil - ha:flags { - } - y1 = 150.0mil - } - ha:line.25 { - clearance = 0.0 - y2 = 150.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 150.0mil - x2 = 150.0mil - ha:flags { - } - y1 = 50.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 150.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 250.0mil - x2 = 250.0mil - ha:flags { - } - y1 = 50.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 270.0mil - y = 170.0mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.31 { - clearance = 0.0 - y2 = 3.386666mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 200.0mil - x2 = 200.0mil - ha:flags { - } - y1 = 3.386666mm - } - ha:line.34 { - clearance = 0.0 - y2 = 100.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 100.0mil - } - ha:line.37 { - clearance = 0.0 - y2 = 100.0mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 100.0mil - x2 = 3.54mm - ha:flags { - } - y1 = 100.0mil - } - ha:line.40 { - clearance = 0.0 - y2 = 3.54mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 100.0mil - x2 = 100.0mil - ha:flags { - } - y1 = 100.0mil - } - } - ha:combining { - } - } - } - } - uid = sxuYoda+IstkKcLGGkQAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO18.fp =================================================================== --- trunk/pcblib/tru-hole/TO18.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO18.fp (nonexistent) @@ -1,305 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO18 Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 55.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 55.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 55.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 61.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 61.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.61874mm - rot = 0.000000 - y = 1.549792mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 53.1mil - rot = 0.000000 - y = 2.819792mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 2.61874mm - rot = 0.000000 - y = 4.089792mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.32054mm - x2 = 5.00634mm - ha:flags { - } - y1 = 0.813192mm - } - ha:line.14 { - clearance = 0.0 - y2 = 0.279792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.47294mm - x2 = 5.15874mm - ha:flags { - } - y1 = 0.965592mm - } - ha:line.17 { - clearance = 0.0 - y2 = 0.432192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.62534mm - x2 = 5.31114mm - ha:flags { - } - y1 = 1.117992mm - } - ha:line.20 { - clearance = 0.0 - y2 = 0.432192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.00634mm - x2 = 5.31114mm - ha:flags { - } - y1 = 0.127392mm - } - ha:arc.10 { - astart = 0 - thickness = 10.0mil - width = 98.0mil - height = 98.0mil - ha:attributes { - } - x = 2.61874mm - y = 2.819792mm - adelta = 360 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 4.14274mm - y = 4.597792mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 2.819792mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.195406mm - x2 = 2.195406mm - ha:flags { - } - y1 = 2.819792mm - } - ha:line.26 { - clearance = 0.0 - y2 = 2.819792mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.61874mm - x2 = 2.61874mm - ha:flags { - } - y1 = 2.819792mm - } - ha:line.29 { - clearance = 0.0 - y2 = 1.819792mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.61874mm - x2 = 2.61874mm - ha:flags { - } - y1 = 2.819792mm - } - ha:line.32 { - clearance = 0.0 - y2 = 2.819792mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.61874mm - x2 = 1.61874mm - ha:flags { - } - y1 = 2.819792mm - } - } - ha:combining { - } - } - } - } - uid = OidYcSm6o+LolzS8Q8kAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC49U.fp =================================================================== --- trunk/pcblib/tru-hole/HC49U.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC49U.fp (nonexistent) @@ -1,384 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HC49U Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 32.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 3.33248mm - rot = 0.000000 - y = 101.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 8.20928mm - rot = 0.000000 - y = 101.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.25908mm - thickness = 20.0mil - ha:attributes { - } - x1 = 101.2mil - x2 = 8.99668mm - ha:flags { - } - y1 = 0.25908mm - } - ha:line.13 { - clearance = 0.0 - y2 = 4.90728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 8.99668mm - x2 = 101.2mil - ha:flags { - } - y1 = 4.90728mm - } - ha:arc.12 { - astart = 90 - thickness = 20.0mil - width = 91.0mil - height = 91.0mil - ha:attributes { - } - x = 8.99668mm - y = 101.2mil - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:arc.16 { - astart = 270 - thickness = 20.0mil - width = 91.0mil - height = 91.0mil - ha:attributes { - } - x = 101.2mil - y = 101.2mil - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.25908mm - y = -1.26492mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.17 { - clearance = 0.0 - y2 = 101.2mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.77088mm - x2 = 5.77088mm - ha:flags { - } - y1 = 101.2mil - } - ha:line.20 { - clearance = 0.0 - y2 = 101.2mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.33248mm - x2 = 3.33248mm - ha:flags { - } - y1 = 101.2mil - } - ha:line.23 { - clearance = 0.0 - y2 = 101.2mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.33248mm - x2 = 4.33248mm - ha:flags { - } - y1 = 101.2mil - } - ha:line.26 { - clearance = 0.0 - y2 = 3.57048mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.33248mm - x2 = 3.33248mm - ha:flags { - } - y1 = 101.2mil - } - } - ha:combining { - } - } - } - } - uid = IU81ifHVXky8kV3JzMYAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/MULTIWATT11.fp =================================================================== --- trunk/pcblib/tru-hole/MULTIWATT11.fp (revision 34911) +++ trunk/pcblib/tru-hole/MULTIWATT11.fp (nonexistent) @@ -1,578 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = MULTIWATT11 Power IC - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.905783mm - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 3.607583mm - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 5.309383mm - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 7.011183mm - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.11 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 8.712983mm - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.12 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 10.414783mm - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.13 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 12.116583mm - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.14 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 13.818383mm - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.15 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 15.520183mm - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.16 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 17.221983mm - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.17 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 18.923783mm - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.18 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.21 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 20.574783mm - ha:flags { - } - y1 = 5.334783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 20.574783mm - x2 = 20.574783mm - ha:flags { - } - y1 = 5.334783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 20.574783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 20.574783mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 8.509783mm - x2 = 8.509783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.36 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 12.319783mm - x2 = 12.319783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 22.098783mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.39 { - clearance = 0.0 - y2 = 7.597692mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 7.597692mm - } - ha:line.42 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.905783mm - x2 = 1.905783mm - ha:flags { - } - y1 = 6.858783mm - } - ha:line.45 { - clearance = 0.0 - y2 = 7.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.905783mm - x2 = 1.905783mm - ha:flags { - } - y1 = 6.858783mm - } - ha:line.48 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.905783mm - x2 = 2.905783mm - ha:flags { - } - y1 = 6.858783mm - } - } - ha:combining { - } - } - } - } - uid = OJr8gHIpKF/u/Cj9DHsAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO92.fp =================================================================== --- trunk/pcblib/tru-hole/TO92.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO92.fp (nonexistent) @@ -1,376 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO92 Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 42.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -36.0mil - -36.0mil - 36.0mil - -36.0mil - 36.0mil - 36.0mil - -36.0mil - 36.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -36.0mil - -36.0mil - 36.0mil - -36.0mil - 36.0mil - 36.0mil - -36.0mil - 36.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -36.0mil - -36.0mil - 36.0mil - -36.0mil - 36.0mil - 36.0mil - -36.0mil - 36.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -39.0mil - -39.0mil - 39.0mil - -39.0mil - 39.0mil - 39.0mil - -39.0mil - 39.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -39.0mil - -39.0mil - 39.0mil - -39.0mil - 39.0mil - 39.0mil - -39.0mil - 39.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 42.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 72.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 72.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 72.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 78.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 78.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 254.0mil - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 154.0mil - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 54.0mil - rot = 0.000000 - y = 200.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 130.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 84.0mil - x2 = 224.0mil - ha:flags { - } - y1 = 130.0mil - } - ha:arc.10 { - astart = 315 - thickness = 10.0mil - width = 100.0mil - height = 100.0mil - ha:attributes { - } - x = 154.0mil - y = 200.0mil - adelta = 270 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 64.0mil - y = 70.0mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.14 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 154.0mil - x2 = 154.0mil - ha:flags { - } - y1 = 200.0mil - } - ha:line.17 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 54.0mil - x2 = 54.0mil - ha:flags { - } - y1 = 200.0mil - } - ha:line.20 { - clearance = 0.0 - y2 = 4.08mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 54.0mil - x2 = 54.0mil - ha:flags { - } - y1 = 200.0mil - } - ha:line.23 { - clearance = 0.0 - y2 = 200.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 54.0mil - x2 = 0.3716mm - ha:flags { - } - y1 = 200.0mil - } - } - ha:combining { - } - } - } - } - uid = guzk2KSYW/BVDIzhJVkAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/MULTIWATT15.fp =================================================================== --- trunk/pcblib/tru-hole/MULTIWATT15.fp (revision 34911) +++ trunk/pcblib/tru-hole/MULTIWATT15.fp (nonexistent) @@ -1,650 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = MULTIWATT15 Power IC - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 63.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 113.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 163.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 213.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.11 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 263.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.12 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 313.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.13 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 363.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.14 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 413.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.15 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 463.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.16 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 513.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.17 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 563.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.18 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 613.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 663.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 713.0mil - rot = 0.000000 - y = 4.826783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 763.0mil - rot = 0.000000 - y = 9.906783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 13.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.25 { - clearance = 0.0 - y2 = 5.334783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 813.0mil - ha:flags { - } - y1 = 5.334783mm - } - ha:line.28 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 813.0mil - x2 = 813.0mil - ha:flags { - } - y1 = 5.334783mm - } - ha:line.31 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 813.0mil - x2 = 13.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.34 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 813.0mil - ha:flags { - } - y1 = 1.524783mm - } - ha:line.37 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 338.0mil - x2 = 338.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:line.40 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 488.0mil - x2 = 488.0mil - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 873.0mil - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.43 { - clearance = 0.0 - y2 = 7.536116mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 413.0mil - x2 = 413.0mil - ha:flags { - } - y1 = 7.536116mm - } - ha:line.46 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 63.0mil - x2 = 63.0mil - ha:flags { - } - y1 = 6.858783mm - } - ha:line.49 { - clearance = 0.0 - y2 = 7.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 63.0mil - x2 = 63.0mil - ha:flags { - } - y1 = 6.858783mm - } - ha:line.52 { - clearance = 0.0 - y2 = 6.858783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 63.0mil - x2 = 2.6002mm - ha:flags { - } - y1 = 6.858783mm - } - } - ha:combining { - } - } - } - } - uid = Pvw9fS9mULpdZ07inAAAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO247_2.fp =================================================================== --- trunk/pcblib/tru-hole/TO247_2.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO247_2.fp (nonexistent) @@ -1,416 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO247_2 diode in TO220 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -50.0mil - -50.0mil - 50.0mil - -50.0mil - 50.0mil - 50.0mil - -50.0mil - 50.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -53.0mil - -53.0mil - 53.0mil - -53.0mil - 53.0mil - 53.0mil - -53.0mil - 53.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.693183mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 13.818383mm - rot = 0.000000 - y = 3.556783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 5.588783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.12 { - clearance = 0.0 - y2 = 5.588783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 16.256783mm - ha:flags { - } - y1 = 5.588783mm - } - ha:line.15 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 16.256783mm - x2 = 16.256783mm - ha:flags { - } - y1 = 5.588783mm - } - ha:line.18 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 16.256783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.21 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 16.256783mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 6.350783mm - x2 = 6.350783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 10.160783mm - x2 = 10.160783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 17.780783mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.30 { - clearance = 0.0 - y2 = 3.556783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 8.255783mm - x2 = 8.255783mm - ha:flags { - } - y1 = 3.556783mm - } - ha:line.33 { - clearance = 0.0 - y2 = 7.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 7.112783mm - } - ha:line.36 { - clearance = 0.0 - y2 = 7.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.693183mm - x2 = 3.693183mm - ha:flags { - } - y1 = 7.112783mm - } - ha:line.39 { - clearance = 0.0 - y2 = 8.112783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 7.112783mm - } - } - ha:combining { - } - } - } - } - uid = WJYlfial3zliAL7vW/EAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HEPTAWATT.fp =================================================================== --- trunk/pcblib/tru-hole/HEPTAWATT.fp (revision 34911) +++ trunk/pcblib/tru-hole/HEPTAWATT.fp (nonexistent) @@ -1,506 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HEPTAWATT Power IC, as in MULTIWATT15 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.626383mm - rot = 0.000000 - y = 8.128783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 2.896383mm - rot = 0.000000 - y = 3.048783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 4.166383mm - rot = 0.000000 - y = 8.128783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 5.436383mm - rot = 0.000000 - y = 3.048783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.11 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 6.706383mm - rot = 0.000000 - y = 8.128783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.12 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 7.976383mm - rot = 0.000000 - y = 3.048783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.13 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 9.246383mm - rot = 0.000000 - y = 8.128783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.14 { - clearance = 0.0 - y2 = 5.055383mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.17 { - clearance = 0.0 - y2 = 5.055383mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.643383mm - ha:flags { - } - y1 = 5.055383mm - } - ha:line.20 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.643383mm - x2 = 10.643383mm - ha:flags { - } - y1 = 5.055383mm - } - ha:line.23 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.643383mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.26 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.643383mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.29 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 3.531383mm - x2 = 3.531383mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.32 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.341383mm - x2 = 7.341383mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 12.167383mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.35 { - clearance = 0.0 - y2 = 5.95164mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.436383mm - x2 = 5.436383mm - ha:flags { - } - y1 = 5.95164mm - } - ha:line.38 { - clearance = 0.0 - y2 = 6.579383mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.626383mm - x2 = 1.626383mm - ha:flags { - } - y1 = 6.579383mm - } - ha:line.41 { - clearance = 0.0 - y2 = 7.579383mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.626383mm - x2 = 1.626383mm - ha:flags { - } - y1 = 6.579383mm - } - ha:line.44 { - clearance = 0.0 - y2 = 6.579383mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.626383mm - x2 = 2.626383mm - ha:flags { - } - y1 = 6.579383mm - } - } - ha:combining { - } - } - } - } - uid = iVCWAJKpIXjZ4LV4utoAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO220ACSTAND.fp =================================================================== --- trunk/pcblib/tru-hole/TO220ACSTAND.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO220ACSTAND.fp (nonexistent) @@ -1,416 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO220ACSTAND diode in TO220 - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -40.0mil - -40.0mil - 40.0mil - -40.0mil - 40.0mil - 40.0mil - -40.0mil - 40.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -43.0mil - -43.0mil - 43.0mil - -43.0mil - 43.0mil - 43.0mil - -43.0mil - 43.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 40.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 80.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 86.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.794783mm - rot = 0.000000 - y = 2.794783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 7.874783mm - rot = 0.000000 - y = 2.794783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 4.826783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.12 { - clearance = 0.0 - y2 = 4.826783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 4.826783mm - } - ha:line.15 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 4.826783mm - } - ha:line.18 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.21 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 3.429783mm - x2 = 3.429783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.239783mm - x2 = 7.239783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 11.938783mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.30 { - clearance = 0.0 - y2 = 2.794783mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 2.794783mm - } - ha:line.33 { - clearance = 0.0 - y2 = 5.842783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 5.842783mm - } - ha:line.36 { - clearance = 0.0 - y2 = 5.842783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.794783mm - x2 = 3.794783mm - ha:flags { - } - y1 = 5.842783mm - } - ha:line.39 { - clearance = 0.0 - y2 = 6.842783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 5.842783mm - } - } - ha:combining { - } - } - } - } - uid = giMFC8I9a3NsCRqIha4AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/TO220.fp =================================================================== --- trunk/pcblib/tru-hole/TO220.fp (revision 34911) +++ trunk/pcblib/tru-hole/TO220.fp (nonexistent) @@ -1,678 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TO220 Transistor - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 130.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 150.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 150.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 150.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 156.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 156.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.794783mm - rot = 0.000000 - y = 20.320783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 5.334783mm - rot = 0.000000 - y = 20.320783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 7.874783mm - rot = 0.000000 - y = 20.320783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 2 - xmirror = 0 - x = 5.334783mm - rot = 0.000000 - y = 3.302783mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.11 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 30.0mil - ha:attributes { - } - x1 = 2.794783mm - x2 = 2.794783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.14 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 30.0mil - ha:attributes { - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.17 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 30.0mil - ha:attributes { - } - x1 = 7.874783mm - x2 = 7.874783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.20 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 15.748783mm - } - ha:line.23 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 15.748783mm - } - ha:line.26 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.29 { - clearance = 0.0 - y2 = 15.748783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.32 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.35 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 6.223783mm - } - ha:line.38 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.033783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:line.41 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.033783mm - x2 = 10.033783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:line.44 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.033783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.47 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 10.414783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.50 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.414783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.53 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.56 { - clearance = 0.0 - y2 = 1.270783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.635783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.59 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.635783mm - x2 = 0.635783mm - ha:flags { - } - y1 = 1.270783mm - } - ha:line.62 { - clearance = 0.0 - y2 = 3.048783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.635783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:line.65 { - clearance = 0.0 - y2 = 6.223783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 3.048783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 1.524783mm - y = 14.478783mm - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.68 { - clearance = 0.0 - y2 = 16.066283mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 16.066283mm - } - ha:line.71 { - clearance = 0.0 - y2 = 20.320783mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.74 { - clearance = 0.0 - y2 = 21.320783mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 5.334783mm - x2 = 5.334783mm - ha:flags { - } - y1 = 20.320783mm - } - ha:line.77 { - clearance = 0.0 - y2 = 20.320783mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 5.334783mm - x2 = 6.334783mm - ha:flags { - } - y1 = 20.320783mm - } - } - ha:combining { - } - } - } - } - uid = uOkA89keooMxmh5v+cMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/HC49.fp =================================================================== --- trunk/pcblib/tru-hole/HC49.fp (revision 34911) +++ trunk/pcblib/tru-hole/HC49.fp (nonexistent) @@ -1,384 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = HC49 Crystals - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 28.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 28.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 60.2mil - rot = 0.000000 - y = 60.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 6.60908mm - rot = 0.000000 - y = 60.2mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.25908mm - thickness = 20.0mil - ha:attributes { - } - x1 = 60.2mil - x2 = 6.60908mm - ha:flags { - } - y1 = 0.25908mm - } - ha:line.13 { - clearance = 0.0 - y2 = 110.2mil - thickness = 20.0mil - ha:attributes { - } - x1 = 6.60908mm - x2 = 60.2mil - ha:flags { - } - y1 = 110.2mil - } - ha:arc.12 { - astart = 90 - thickness = 20.0mil - width = 50.0mil - height = 50.0mil - ha:attributes { - } - x = 6.60908mm - y = 60.2mil - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:arc.16 { - astart = 270 - thickness = 20.0mil - width = 50.0mil - height = 50.0mil - ha:attributes { - } - x = 60.2mil - y = 60.2mil - adelta = 180 - ha:flags { - } - clearance = 0.0 - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.25908mm - y = -1.26492mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.17 { - clearance = 0.0 - y2 = 60.2mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 4.06908mm - x2 = 4.06908mm - ha:flags { - } - y1 = 60.2mil - } - ha:line.20 { - clearance = 0.0 - y2 = 60.2mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 60.2mil - x2 = 60.2mil - ha:flags { - } - y1 = 60.2mil - } - ha:line.23 { - clearance = 0.0 - y2 = 60.2mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 60.2mil - x2 = 2.52908mm - ha:flags { - } - y1 = 60.2mil - } - ha:line.26 { - clearance = 0.0 - y2 = 2.52908mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 60.2mil - x2 = 60.2mil - ha:flags { - } - y1 = 60.2mil - } - } - ha:combining { - } - } - } - } - uid = K5zHll9kWHYvk+K8WxUAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/tru-hole/PENTAWATT.fp =================================================================== --- trunk/pcblib/tru-hole/PENTAWATT.fp (revision 34911) +++ trunk/pcblib/tru-hole/PENTAWATT.fp (nonexistent) @@ -1,470 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = PENTAWATT Power IC - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -45.0mil - -45.0mil - 45.0mil - -45.0mil - 45.0mil - 45.0mil - -45.0mil - 45.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -48.0mil - -48.0mil - 48.0mil - -48.0mil - 48.0mil - 48.0mil - -48.0mil - 48.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 60.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 90.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 96.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.032783mm - rot = 0.000000 - y = 8.738383mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 3.734583mm - rot = 0.000000 - y = 4.750583mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 5.436383mm - rot = 0.000000 - y = 8.738383mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.10 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 7.138183mm - rot = 0.000000 - y = 4.750583mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.11 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 8.839983mm - rot = 0.000000 - y = 8.738383mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.12 { - clearance = 0.0 - y2 = 5.055383mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.15 { - clearance = 0.0 - y2 = 5.055383mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.643383mm - ha:flags { - } - y1 = 5.055383mm - } - ha:line.18 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.643383mm - x2 = 10.643383mm - ha:flags { - } - y1 = 5.055383mm - } - ha:line.21 { - clearance = 0.0 - y2 = 0.254783mm - thickness = 20.0mil - ha:attributes { - } - x1 = 10.643383mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.24 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 10.643383mm - ha:flags { - } - y1 = 1.524783mm - } - ha:line.27 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 3.531383mm - x2 = 3.531383mm - ha:flags { - } - y1 = 0.254783mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.524783mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.341383mm - x2 = 7.341383mm - ha:flags { - } - y1 = 0.254783mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 12.167383mm - y = 1.524783mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.33 { - clearance = 0.0 - y2 = 7.143263mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.436383mm - x2 = 5.436383mm - ha:flags { - } - y1 = 7.143263mm - } - ha:line.36 { - clearance = 0.0 - y2 = 6.579383mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.032783mm - x2 = 2.032783mm - ha:flags { - } - y1 = 6.579383mm - } - ha:line.39 { - clearance = 0.0 - y2 = 7.579383mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.032783mm - x2 = 2.032783mm - ha:flags { - } - y1 = 6.579383mm - } - ha:line.42 { - clearance = 0.0 - y2 = 6.579383mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.032783mm - x2 = 3.032783mm - ha:flags { - } - y1 = 6.579383mm - } - } - ha:combining { - } - } - } - } - uid = sniNjrnRQefHo+GXiZsAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT26.fp =================================================================== --- trunk/pcblib/smd/SOT26.fp (revision 34911) +++ trunk/pcblib/smd/SOT26.fp (nonexistent) @@ -1,331 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT26 SMT transistor, 6 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 12.0mil - -20.0mil - -12.0mil - -20.0mil - -12.0mil - 20.0mil - 12.0mil - 20.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 15.0mil - -23.0mil - -15.0mil - -23.0mil - -15.0mil - 23.0mil - 15.0mil - 23.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 12.0mil - -20.0mil - -12.0mil - -20.0mil - -12.0mil - 20.0mil - 12.0mil - 20.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 30.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 69.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 108.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 0 - xmirror = 0 - x = 108.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.23 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 0 - xmirror = 0 - x = 69.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.24 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 0 - xmirror = 0 - x = 30.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 128.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 128.0mil - x2 = 128.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 128.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 148.0mil - y = 10.0mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.25 { - clearance = 0.0 - y2 = 79.0mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 69.0mil - x2 = 69.0mil - ha:flags { - } - y1 = 79.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 30.0mil - x2 = 30.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 4.048mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 30.0mil - x2 = 30.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.34 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 30.0mil - x2 = 1.762mm - ha:flags { - } - y1 = 120.0mil - } - } - ha:combining { - } - } - } - } - uid = kS4vnWF4YqQfyJe4Fo8AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOD106A.fp =================================================================== --- trunk/pcblib/smd/SOD106A.fp (revision 34911) +++ trunk/pcblib/smd/SOD106A.fp (nonexistent) @@ -1,283 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOD106A SMT diode (pin 1 is cathode) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 51.0mil - -68.0mil - -51.0mil - -68.0mil - -51.0mil - 68.0mil - 51.0mil - 68.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 54.0mil - -71.0mil - -54.0mil - -71.0mil - -54.0mil - 71.0mil - 54.0mil - 71.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 51.0mil - -68.0mil - -51.0mil - -68.0mil - -51.0mil - 68.0mil - 51.0mil - 68.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.286783mm - rot = 0.000000 - y = 2.337192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 6.147583mm - rot = 0.000000 - y = 2.337192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 4.064392mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.609992mm - } - ha:line.10 { - clearance = 0.0 - y2 = 4.546992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 1.550183mm - ha:flags { - } - y1 = 4.064392mm - } - ha:line.13 { - clearance = 0.0 - y2 = 4.546992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.550183mm - x2 = 7.925583mm - ha:flags { - } - y1 = 4.546992mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.925583mm - x2 = 7.925583mm - ha:flags { - } - y1 = 4.546992mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.925583mm - x2 = 1.550183mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.609992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.550183mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 8.433583mm - y = 2.337192mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 2.337192mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 4.217183mm - x2 = 4.217183mm - ha:flags { - } - y1 = 2.337192mm - } - ha:line.30 { - clearance = 0.0 - y2 = 2.337192mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 4.217183mm - x2 = 4.217183mm - ha:flags { - } - y1 = 2.337192mm - } - ha:line.33 { - clearance = 0.0 - y2 = 2.337192mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 4.217183mm - x2 = 5.217183mm - ha:flags { - } - y1 = 2.337192mm - } - ha:line.36 { - clearance = 0.0 - y2 = 3.337192mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 4.217183mm - x2 = 4.217183mm - ha:flags { - } - y1 = 2.337192mm - } - } - ha:combining { - } - } - } - } - uid = nAb7/3R/VK5t4jRpvCYAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT23D.fp =================================================================== --- trunk/pcblib/smd/SOT23D.fp (revision 34911) +++ trunk/pcblib/smd/SOT23D.fp (nonexistent) @@ -1,279 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT23D SMT diode (pin 1 is cathode) - openscad=SOT23.scad - openscad-transformation={rotate([0,0,-90])} - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.0mil - -20.0mil - -17.0mil - -20.0mil - -17.0mil - 20.0mil - 17.0mil - 20.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 20.0mil - -23.0mil - -20.0mil - -23.0mil - -20.0mil - 23.0mil - 20.0mil - 23.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.0mil - -20.0mil - -17.0mil - -20.0mil - -17.0mil - 20.0mil - 17.0mil - 20.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 35.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 113.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 74.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 138.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 138.0mil - x2 = 138.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 138.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 158.0mil - y = 10.0mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 2.353733mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 74.0mil - x2 = 74.0mil - ha:flags { - } - y1 = 2.353733mm - } - ha:line.25 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 35.0mil - x2 = 35.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 35.0mil - x2 = 1.889mm - ha:flags { - } - y1 = 120.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 4.048mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 35.0mil - x2 = 35.0mil - ha:flags { - } - y1 = 120.0mil - } - } - ha:combining { - } - } - } - } - uid = hksuSYo1TTefRrW2D28AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/1210.fp =================================================================== --- trunk/pcblib/smd/1210.fp (revision 34911) +++ trunk/pcblib/smd/1210.fp (nonexistent) @@ -1,235 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 1210 Standard SMT resistor, capacitor etc - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -53.14mil - -0.649986mm - -53.14mil - -0.649986mm - 53.14mil - 0.649986mm - 53.14mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.726186mm - -56.14mil - -0.726186mm - -56.14mil - -0.726186mm - 56.14mil - 0.726186mm - 56.14mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -53.14mil - -0.649986mm - -53.14mil - -0.649986mm - 53.14mil - 0.649986mm - 53.14mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 38.59mil - rot = 0.000000 - y = 66.14mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 3.979926mm - rot = 0.000000 - y = 66.14mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 13.0mil - thickness = 8.0mil - ha:attributes { - } - x1 = 1.980184mm - x2 = 2.979928mm - ha:flags { - } - y1 = 13.0mil - } - ha:line.12 { - clearance = 0.0 - y2 = 119.28mil - thickness = 8.0mil - ha:attributes { - } - x1 = 1.980184mm - x2 = 2.979928mm - ha:flags { - } - y1 = 119.28mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 66.14mil - y = 34.64mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 66.14mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 97.64mil - x2 = 97.64mil - ha:flags { - } - y1 = 66.14mil - } - ha:line.18 { - clearance = 0.0 - y2 = 66.14mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 97.64mil - x2 = 97.64mil - ha:flags { - } - y1 = 66.14mil - } - ha:line.21 { - clearance = 0.0 - y2 = 66.14mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 97.64mil - x2 = 3.480056mm - ha:flags { - } - y1 = 66.14mil - } - ha:line.24 { - clearance = 0.0 - y2 = 2.679956mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 97.64mil - x2 = 97.64mil - ha:flags { - } - y1 = 66.14mil - } - } - ha:combining { - } - } - } - } - uid = OUdoBtbWh4DAdxBsTZ4AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/0402.fp =================================================================== --- trunk/pcblib/smd/0402.fp (revision 34911) +++ trunk/pcblib/smd/0402.fp (nonexistent) @@ -1,212 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 0402 Standard SMT resistor, capacitor etc - openscad = 0402.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.249936mm - -0.349758mm - -0.249936mm - -0.349758mm - -0.249936mm - 0.349758mm - 0.249936mm - 0.349758mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.326136mm - -0.425958mm - -0.326136mm - -0.425958mm - -0.326136mm - 0.425958mm - 0.326136mm - 0.425958mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.249936mm - -0.349758mm - -0.249936mm - -0.349758mm - -0.249936mm - 0.349758mm - 0.249936mm - 0.349758mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 0.580136mm - rot = 0.000000 - y = 0.679958mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 54.32mil - rot = 0.000000 - y = 0.679958mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 7.08mil - y = -4.73mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.679958mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 0.979932mm - x2 = 0.979932mm - ha:flags { - } - y1 = 0.679958mm - } - ha:line.12 { - clearance = 0.0 - y2 = 0.679958mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 0.979932mm - x2 = 0.979932mm - ha:flags { - } - y1 = 0.679958mm - } - ha:line.15 { - clearance = 0.0 - y2 = 0.679958mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 0.979932mm - x2 = 1.979932mm - ha:flags { - } - y1 = 0.679958mm - } - ha:line.18 { - clearance = 0.0 - y2 = 1.679958mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 0.979932mm - x2 = 0.979932mm - ha:flags { - } - y1 = 0.679958mm - } - } - ha:combining { - } - } - } - } - uid = xK4LY0258SGWTnYfnvwAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/MPAK.fp =================================================================== --- trunk/pcblib/smd/MPAK.fp (revision 34911) +++ trunk/pcblib/smd/MPAK.fp (nonexistent) @@ -1,381 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = MPAK - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 15.5mil - -43.5mil - -15.5mil - -43.5mil - -15.5mil - 43.5mil - 15.5mil - 43.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 18.5mil - -46.5mil - -18.5mil - -46.5mil - -18.5mil - 46.5mil - 18.5mil - 46.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 15.5mil - -43.5mil - -15.5mil - -43.5mil - -15.5mil - 43.5mil - 15.5mil - 43.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 80.5mil - 43.5mil - 80.5mil - -43.5mil - -80.5mil - -43.5mil - -80.5mil - 43.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 83.5mil - 46.5mil - 83.5mil - -46.5mil - -83.5mil - -46.5mil - -83.5mil - 46.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 80.5mil - 43.5mil - 80.5mil - -43.5mil - -80.5mil - -43.5mil - -80.5mil - 43.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 0.940192mm - rot = 0.000000 - y = 12.751192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 2.210192mm - rot = 0.000000 - y = 12.751192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 3.480192mm - rot = 0.000000 - y = 12.751192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 0 - xmirror = 0 - x = 4.750192mm - rot = 0.000000 - y = 12.751192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.23 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 2.845192mm - rot = 0.000000 - y = 1.651392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 14.300592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 14.300592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 5.588392mm - ha:flags { - } - y1 = 14.300592mm - } - ha:line.13 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.588392mm - x2 = 5.588392mm - ha:flags { - } - y1 = 14.300592mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.588392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.096392mm - y = 0.127392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.24 { - clearance = 0.0 - y2 = 10.531232mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.845192mm - x2 = 2.845192mm - ha:flags { - } - y1 = 10.531232mm - } - ha:line.27 { - clearance = 0.0 - y2 = 12.751192mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 0.940192mm - x2 = 0.940192mm - ha:flags { - } - y1 = 12.751192mm - } - ha:line.30 { - clearance = 0.0 - y2 = 13.751192mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 0.940192mm - x2 = 0.940192mm - ha:flags { - } - y1 = 12.751192mm - } - ha:line.33 { - clearance = 0.0 - y2 = 12.751192mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 0.940192mm - x2 = 1.940192mm - ha:flags { - } - y1 = 12.751192mm - } - } - ha:combining { - } - } - } - } - uid = eZwOg7hh3XSQ6QI9EysAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/1008.fp =================================================================== --- trunk/pcblib/smd/1008.fp (revision 34911) +++ trunk/pcblib/smd/1008.fp (nonexistent) @@ -1,235 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 1008 Standard SMT resistor, capacitor etc - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.54991mm - -45.27mil - -0.54991mm - -45.27mil - -0.54991mm - 45.27mil - 0.54991mm - 45.27mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.62611mm - -48.27mil - -0.62611mm - -48.27mil - -0.62611mm - 48.27mil - 0.62611mm - 48.27mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.54991mm - -45.27mil - -0.54991mm - -45.27mil - -0.54991mm - 45.27mil - 0.54991mm - 45.27mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 0.88011mm - rot = 0.000000 - y = 58.27mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 3.480054mm - rot = 0.000000 - y = 58.27mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 13.0mil - thickness = 8.0mil - ha:attributes { - } - x1 = 72.06mil - x2 = 2.52984mm - ha:flags { - } - y1 = 13.0mil - } - ha:line.12 { - clearance = 0.0 - y2 = 103.54mil - thickness = 8.0mil - ha:attributes { - } - x1 = 72.06mil - x2 = 2.52984mm - ha:flags { - } - y1 = 103.54mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 1.379982mm - y = 0.679958mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 58.27mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.180082mm - x2 = 2.180082mm - ha:flags { - } - y1 = 58.27mil - } - ha:line.18 { - clearance = 0.0 - y2 = 58.27mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.180082mm - x2 = 2.180082mm - ha:flags { - } - y1 = 58.27mil - } - ha:line.21 { - clearance = 0.0 - y2 = 58.27mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.180082mm - x2 = 3.180082mm - ha:flags { - } - y1 = 58.27mil - } - ha:line.24 { - clearance = 0.0 - y2 = 2.480058mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.180082mm - x2 = 2.180082mm - ha:flags { - } - y1 = 58.27mil - } - } - ha:combining { - } - } - } - } - uid = bZx6+gfdERtBSuYKqRIAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/1206.fp =================================================================== --- trunk/pcblib/smd/1206.fp (revision 34911) +++ trunk/pcblib/smd/1206.fp (nonexistent) @@ -1,236 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 1206 Standard SMT resistor, capacitor etc - openscad = 1206.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -0.94996mm - -0.649986mm - -0.94996mm - -0.649986mm - 0.94996mm - 0.649986mm - 0.94996mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.726186mm - -1.02616mm - -0.726186mm - -1.02616mm - -0.726186mm - 1.02616mm - 0.726186mm - 1.02616mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -0.94996mm - -0.649986mm - -0.94996mm - -0.649986mm - 0.94996mm - 0.649986mm - 0.94996mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 38.59mil - rot = 0.000000 - y = 1.28016mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 3.979926mm - rot = 0.000000 - y = 1.28016mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 13.0mil - thickness = 8.0mil - ha:attributes { - } - x1 = 1.880108mm - x2 = 121.26mil - ha:flags { - } - y1 = 13.0mil - } - ha:line.12 { - clearance = 0.0 - y2 = 2.23012mm - thickness = 8.0mil - ha:attributes { - } - x1 = 1.880108mm - x2 = 121.26mil - ha:flags { - } - y1 = 2.23012mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 66.14mil - y = 0.48006mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 1.28016mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 97.64mil - x2 = 97.64mil - ha:flags { - } - y1 = 1.28016mm - } - ha:line.18 { - clearance = 0.0 - y2 = 1.28016mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 97.64mil - x2 = 97.64mil - ha:flags { - } - y1 = 1.28016mm - } - ha:line.21 { - clearance = 0.0 - y2 = 1.28016mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 97.64mil - x2 = 3.480056mm - ha:flags { - } - y1 = 1.28016mm - } - ha:line.24 { - clearance = 0.0 - y2 = 2.28016mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 97.64mil - x2 = 97.64mil - ha:flags { - } - y1 = 1.28016mm - } - } - ha:combining { - } - } - } - } - uid = pjaLj8tSfYLVqy1mjLYAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/0402.scad =================================================================== --- trunk/pcblib/smd/0402.scad (revision 34911) +++ trunk/pcblib/smd/0402.scad (nonexistent) @@ -1,20 +0,0 @@ -module part_0402(len=1.0, width=0.5, height=0.35, pad_len=0.25) -{ - union() { - translate([0,0,height/2]) { - // body - color([0.1,0.1,0.1]) - cube([len-2*pad_len,width,height], center=true); - // terminals - color([0.8,0.8,0.8]) { - translate([+len/2-pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - color([0.8,0.8,0.8]) { - translate([-len/2+pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - } - } -} - Index: trunk/pcblib/smd/SOT223.fp =================================================================== --- trunk/pcblib/smd/SOT223.fp (revision 34911) +++ trunk/pcblib/smd/SOT223.fp (nonexistent) @@ -1,363 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT223 SMT transistor, 4 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 28.0mil - -61.0mil - -28.0mil - -61.0mil - -28.0mil - 61.0mil - 28.0mil - 61.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 31.0mil - -64.0mil - -31.0mil - -64.0mil - -31.0mil - 64.0mil - 31.0mil - 64.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 28.0mil - -61.0mil - -28.0mil - -61.0mil - -28.0mil - 61.0mil - 28.0mil - 61.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 106.0mil - 61.0mil - 106.0mil - -61.0mil - -106.0mil - -61.0mil - -106.0mil - 61.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 109.0mil - 64.0mil - 109.0mil - -64.0mil - -109.0mil - -64.0mil - -109.0mil - 64.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 106.0mil - 61.0mil - 106.0mil - -61.0mil - -106.0mil - -61.0mil - -106.0mil - 61.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.448192mm - rot = 0.000000 - y = 8.483992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 3.734192mm - rot = 0.000000 - y = 8.483992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 6.045592mm - rot = 0.000000 - y = 8.483992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 3.734192mm - rot = 0.000000 - y = 2.286392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 10.642992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 10.642992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 7.366392mm - ha:flags { - } - y1 = 10.642992mm - } - ha:line.13 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.366392mm - x2 = 7.366392mm - ha:flags { - } - y1 = 10.642992mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 7.366392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 7.874392mm - y = 0.127392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 6.934592mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.740542mm - x2 = 3.740542mm - ha:flags { - } - y1 = 6.934592mm - } - ha:line.26 { - clearance = 0.0 - y2 = 8.483992mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.448192mm - x2 = 1.448192mm - ha:flags { - } - y1 = 8.483992mm - } - ha:line.29 { - clearance = 0.0 - y2 = 9.483992mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.448192mm - x2 = 1.448192mm - ha:flags { - } - y1 = 8.483992mm - } - ha:line.32 { - clearance = 0.0 - y2 = 8.483992mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.448192mm - x2 = 2.448192mm - ha:flags { - } - y1 = 8.483992mm - } - } - ha:combining { - } - } - } - } - uid = wL7+F9vz1VIcfqPPcnsAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/1206.scad =================================================================== --- trunk/pcblib/smd/1206.scad (revision 34911) +++ trunk/pcblib/smd/1206.scad (nonexistent) @@ -1,20 +0,0 @@ -module part_1206(len=3.2, width=1.6, height=0.6, pad_len=0.5) -{ - union() { - translate([0,0,height/2]) { - // body - color([0.1,0.1,0.1]) - cube([len-2*pad_len,width,height], center=true); - // terminals - color([0.8,0.8,0.8]) { - translate([+len/2-pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - color([0.8,0.8,0.8]) { - translate([-len/2+pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - } - } -} - Index: trunk/pcblib/smd/SC70_3.fp =================================================================== --- trunk/pcblib/smd/SC70_3.fp (revision 34911) +++ trunk/pcblib/smd/SC70_3.fp (nonexistent) @@ -1,277 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SC70_3 SMT transistor, 3 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.5mil - -20.5mil - -17.5mil - -20.5mil - -17.5mil - 20.5mil - 17.5mil - 20.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 32.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 83.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 58.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 125.5mil - y = 11.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 2.087033mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.477433mm - x2 = 1.477433mm - ha:flags { - } - y1 = 2.087033mm - } - ha:line.25 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.28 { - clearance = 0.0 - y2 = 3.6797mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.31 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 32.5mil - x2 = 1.8255mm - ha:flags { - } - y1 = 105.5mil - } - } - ha:combining { - } - } - } - } - uid = aeq5mTHtKdZxz1ABi/wAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/1806.fp =================================================================== --- trunk/pcblib/smd/1806.fp (revision 34911) +++ trunk/pcblib/smd/1806.fp (nonexistent) @@ -1,235 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 1806 Standard SMT resistor, capacitor etc - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 31.495mil - -1.699895mm - -31.495mil - -1.699895mm - -31.495mil - 1.699895mm - 31.495mil - 1.699895mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.876173mm - -1.776095mm - -0.876173mm - -1.776095mm - -0.876173mm - 1.776095mm - 0.876173mm - 1.776095mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 31.495mil - -1.699895mm - -31.495mil - -1.699895mm - -31.495mil - 1.699895mm - 31.495mil - 1.699895mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.130173mm - rot = 0.000000 - y = 2.030095mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 5.130165mm - rot = 0.000000 - y = 2.030095mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 13.005mil - thickness = 8.0mil - ha:attributes { - } - x1 = 91.745mil - x2 = 3.930015mm - ha:flags { - } - y1 = 13.005mil - } - ha:line.12 { - clearance = 0.0 - y2 = 3.729863mm - thickness = 8.0mil - ha:attributes { - } - x1 = 91.745mil - x2 = 3.930015mm - ha:flags { - } - y1 = 3.729863mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 2.330069mm - y = 1.229995mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 2.030095mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.130169mm - x2 = 3.130169mm - ha:flags { - } - y1 = 2.030095mm - } - ha:line.18 { - clearance = 0.0 - y2 = 2.030095mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.130169mm - x2 = 3.130169mm - ha:flags { - } - y1 = 2.030095mm - } - ha:line.21 { - clearance = 0.0 - y2 = 2.030095mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.130169mm - x2 = 4.130169mm - ha:flags { - } - y1 = 2.030095mm - } - ha:line.24 { - clearance = 0.0 - y2 = 3.030095mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.130169mm - x2 = 3.130169mm - ha:flags { - } - y1 = 2.030095mm - } - } - ha:combining { - } - } - } - } - uid = oTnHpP1lGoaqmqIT+SoAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT326.fp =================================================================== --- trunk/pcblib/smd/SOT326.fp (revision 34911) +++ trunk/pcblib/smd/SOT326.fp (nonexistent) @@ -1,331 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT326 SMT transistor, 6 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 7.5mil - -17.5mil - -7.5mil - -17.5mil - -7.5mil - 17.5mil - 7.5mil - 17.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 10.5mil - -20.5mil - -10.5mil - -20.5mil - -10.5mil - 20.5mil - 10.5mil - 20.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 7.5mil - -17.5mil - -7.5mil - -17.5mil - -7.5mil - 17.5mil - 7.5mil - 17.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 25.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 51.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 76.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 0 - xmirror = 0 - x = 76.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.23 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 0 - xmirror = 0 - x = 51.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.24 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 0 - xmirror = 0 - x = 25.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 91.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 91.5mil - x2 = 91.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 91.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 111.5mil - y = 11.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.25 { - clearance = 0.0 - y2 = 70.5mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.299633mm - x2 = 1.299633mm - ha:flags { - } - y1 = 70.5mil - } - ha:line.28 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 25.5mil - x2 = 25.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.31 { - clearance = 0.0 - y2 = 3.6797mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 25.5mil - x2 = 25.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.34 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 25.5mil - x2 = 1.6477mm - ha:flags { - } - y1 = 105.5mil - } - } - ha:combining { - } - } - } - } - uid = 6Bv/QN6fnFrzfC7tuHoAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOD87.fp =================================================================== --- trunk/pcblib/smd/SOD87.fp (revision 34911) +++ trunk/pcblib/smd/SOD87.fp (nonexistent) @@ -1,283 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOD87 SMT diode (pin 1 is cathode) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 30.5mil - -56.5mil - -30.5mil - -56.5mil - -30.5mil - 56.5mil - 30.5mil - 56.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 33.5mil - -59.5mil - -33.5mil - -59.5mil - -33.5mil - 59.5mil - 33.5mil - 59.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 30.5mil - -56.5mil - -30.5mil - -56.5mil - -30.5mil - 56.5mil - 30.5mil - 56.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.677183mm - rot = 0.000000 - y = 1.981592mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 4.623583mm - rot = 0.000000 - y = 1.981592mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 3.429392mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.533792mm - } - ha:line.10 { - clearance = 0.0 - y2 = 3.835792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 1.016783mm - ha:flags { - } - y1 = 3.429392mm - } - ha:line.13 { - clearance = 0.0 - y2 = 3.835792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.016783mm - x2 = 5.791983mm - ha:flags { - } - y1 = 3.835792mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.791983mm - x2 = 5.791983mm - ha:flags { - } - y1 = 3.835792mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.791983mm - x2 = 1.016783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.533792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.016783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.299983mm - y = 1.981592mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 1.981592mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.150383mm - x2 = 3.150383mm - ha:flags { - } - y1 = 1.981592mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.981592mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.150383mm - x2 = 3.150383mm - ha:flags { - } - y1 = 1.981592mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.981592mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.150383mm - x2 = 4.150383mm - ha:flags { - } - y1 = 1.981592mm - } - ha:line.36 { - clearance = 0.0 - y2 = 2.981592mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.150383mm - x2 = 3.150383mm - ha:flags { - } - y1 = 1.981592mm - } - } - ha:combining { - } - } - } - } - uid = Q1gCDJRE1xA3loRFXQsAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/01005.fp =================================================================== --- trunk/pcblib/smd/01005.fp (revision 34911) +++ trunk/pcblib/smd/01005.fp (nonexistent) @@ -1,212 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 01005 Standard SMT resistor, capacitor etc - openscad = 01005.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 4.92mil - -5.11mil - -4.92mil - -5.11mil - -4.92mil - 5.11mil - 4.92mil - 5.11mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 7.92mil - -0.205994mm - -7.92mil - -0.205994mm - -7.92mil - 0.205994mm - 7.92mil - 0.205994mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 4.92mil - -5.11mil - -4.92mil - -5.11mil - -4.92mil - 5.11mil - 4.92mil - 5.11mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 17.92mil - rot = 0.000000 - y = 0.459994mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 34.06mil - rot = 0.000000 - y = 0.459994mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:text.6 { - scale = 100 - ha:attributes { - } - x = -0.139954mm - y = -13.39mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.459994mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 0.660146mm - x2 = 0.660146mm - ha:flags { - } - y1 = 0.459994mm - } - ha:line.12 { - clearance = 0.0 - y2 = 0.459994mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 0.660146mm - x2 = 0.660146mm - ha:flags { - } - y1 = 0.459994mm - } - ha:line.15 { - clearance = 0.0 - y2 = 0.459994mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 0.660146mm - x2 = 1.660146mm - ha:flags { - } - y1 = 0.459994mm - } - ha:line.18 { - clearance = 0.0 - y2 = 1.459994mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 0.660146mm - x2 = 0.660146mm - ha:flags { - } - y1 = 0.459994mm - } - } - ha:combining { - } - } - } - } - uid = Q1c2peLxTgOy7O9YZ/8AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/TANT_A.fp =================================================================== --- trunk/pcblib/smd/TANT_A.fp (revision 34911) +++ trunk/pcblib/smd/TANT_A.fp (nonexistent) @@ -1,285 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TANT_A Tantalum SMT capacitor (pin 1 is +) - openscad = TANT.scad - openscad-param = {"A"} - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 24.5mil - -42.5mil - -24.5mil - -42.5mil - -24.5mil - 42.5mil - 24.5mil - 42.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 27.5mil - -45.5mil - -27.5mil - -45.5mil - -27.5mil - 45.5mil - 27.5mil - 45.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 24.5mil - -42.5mil - -24.5mil - -42.5mil - -24.5mil - 42.5mil - 24.5mil - 42.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.423183mm - rot = 0.000000 - y = 1.524392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 3.963183mm - rot = 0.000000 - y = 1.524392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 2.616592mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.432192mm - } - ha:line.10 { - clearance = 0.0 - y2 = 2.921392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.864383mm - ha:flags { - } - y1 = 2.616592mm - } - ha:line.13 { - clearance = 0.0 - y2 = 2.921392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.864383mm - x2 = 4.877583mm - ha:flags { - } - y1 = 2.921392mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.877583mm - x2 = 4.877583mm - ha:flags { - } - y1 = 2.921392mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.877583mm - x2 = 0.864383mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.432192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.864383mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 5.385583mm - y = 1.524392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 1.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 1.524392mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 1.524392mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.693183mm - x2 = 3.693183mm - ha:flags { - } - y1 = 1.524392mm - } - ha:line.36 { - clearance = 0.0 - y2 = 2.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.693183mm - x2 = 2.693183mm - ha:flags { - } - y1 = 1.524392mm - } - } - ha:combining { - } - } - } - } - uid = 26/rwM0jSKi02rxdXecAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/TANT_C.fp =================================================================== --- trunk/pcblib/smd/TANT_C.fp (revision 34911) +++ trunk/pcblib/smd/TANT_C.fp (nonexistent) @@ -1,285 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TANT_C Tantalum SMT capacitor (pin 1 is +) - openscad = TANT.scad - openscad-param = {"C"} - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 48.5mil - -87.5mil - -48.5mil - -87.5mil - -48.5mil - 87.5mil - 48.5mil - 87.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 51.5mil - -90.5mil - -51.5mil - -90.5mil - -51.5mil - 90.5mil - 51.5mil - 90.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 48.5mil - -87.5mil - -48.5mil - -87.5mil - -48.5mil - 87.5mil - 48.5mil - 87.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.388383mm - rot = 0.000000 - y = 2.972192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 7.163583mm - rot = 0.000000 - y = 2.972192mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 5.181992mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.762392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 5.816992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 1.473983mm - ha:flags { - } - y1 = 5.181992mm - } - ha:line.13 { - clearance = 0.0 - y2 = 5.816992mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.473983mm - x2 = 9.043183mm - ha:flags { - } - y1 = 5.816992mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 9.043183mm - x2 = 9.043183mm - ha:flags { - } - y1 = 5.816992mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 9.043183mm - x2 = 1.473983mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.762392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.473983mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 9.551183mm - y = 2.972192mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 2.972192mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 4.775983mm - x2 = 4.775983mm - ha:flags { - } - y1 = 2.972192mm - } - ha:line.30 { - clearance = 0.0 - y2 = 2.972192mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 4.775983mm - x2 = 4.775983mm - ha:flags { - } - y1 = 2.972192mm - } - ha:line.33 { - clearance = 0.0 - y2 = 2.972192mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 4.775983mm - x2 = 5.775983mm - ha:flags { - } - y1 = 2.972192mm - } - ha:line.36 { - clearance = 0.0 - y2 = 3.972192mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 4.775983mm - x2 = 4.775983mm - ha:flags { - } - y1 = 2.972192mm - } - } - ha:combining { - } - } - } - } - uid = JkGYP/uNTLhwqZKit+sAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT23.fp =================================================================== --- trunk/pcblib/smd/SOT23.fp (revision 34911) +++ trunk/pcblib/smd/SOT23.fp (nonexistent) @@ -1,278 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT23 SMT transistor, 3 pins - openscad=SOT23.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.0mil - -20.0mil - -17.0mil - -20.0mil - -17.0mil - 20.0mil - 17.0mil - 20.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 20.0mil - -23.0mil - -20.0mil - -23.0mil - -20.0mil - 23.0mil - 20.0mil - 23.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.0mil - -20.0mil - -17.0mil - -20.0mil - -17.0mil - 20.0mil - 17.0mil - 20.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 35.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 113.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 74.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 138.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 138.0mil - x2 = 138.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 138.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 158.0mil - y = 10.0mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 2.353733mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 74.0mil - x2 = 74.0mil - ha:flags { - } - y1 = 2.353733mm - } - ha:line.25 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 35.0mil - x2 = 35.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 4.048mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 35.0mil - x2 = 35.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 35.0mil - x2 = 1.889mm - ha:flags { - } - y1 = 120.0mil - } - } - ha:combining { - } - } - } - } - uid = YmnO2BUK2cjwZjFkzKMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/01005.scad =================================================================== --- trunk/pcblib/smd/01005.scad (revision 34911) +++ trunk/pcblib/smd/01005.scad (nonexistent) @@ -1,19 +0,0 @@ -module part_01005(len=0.4, width=0.2, height=0.13, pad_len=0.1) -{ - union() { - translate([0,0,height/2]) { - // body - color([0.1,0.1,0.1]) - cube([len-2*pad_len,width,height], center=true); - // terminals - color([0.8,0.8,0.8]) { - translate([+len/2-pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - color([0.8,0.8,0.8]) { - translate([-len/2+pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - } - } -} Index: trunk/pcblib/smd/SOD123.fp =================================================================== --- trunk/pcblib/smd/SOD123.fp (revision 34911) +++ trunk/pcblib/smd/SOD123.fp (nonexistent) @@ -1,284 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOD123 SMT diode (pin 1 is cathode) - openscad=SOD123.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 34.5mil - -40.5mil - -34.5mil - -40.5mil - -34.5mil - 40.5mil - 34.5mil - 40.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 37.5mil - -43.5mil - -37.5mil - -43.5mil - -37.5mil - 43.5mil - 37.5mil - 43.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 34.5mil - -40.5mil - -34.5mil - -40.5mil - -34.5mil - 40.5mil - 34.5mil - 40.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.651783mm - rot = 0.000000 - y = 1.422792mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 4.445783mm - rot = 0.000000 - y = 1.422792mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 2.438792mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.406792mm - } - ha:line.10 { - clearance = 0.0 - y2 = 2.718192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 1.118383mm - ha:flags { - } - y1 = 2.438792mm - } - ha:line.13 { - clearance = 0.0 - y2 = 2.718192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.118383mm - x2 = 5.588783mm - ha:flags { - } - y1 = 2.718192mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.588783mm - x2 = 5.588783mm - ha:flags { - } - y1 = 2.718192mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.588783mm - x2 = 1.118383mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.406792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.118383mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.096783mm - y = 1.422792mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 1.422792mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.048783mm - x2 = 3.048783mm - ha:flags { - } - y1 = 1.422792mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.422792mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.048783mm - x2 = 3.048783mm - ha:flags { - } - y1 = 1.422792mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.422792mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.048783mm - x2 = 4.048783mm - ha:flags { - } - y1 = 1.422792mm - } - ha:line.36 { - clearance = 0.0 - y2 = 2.422792mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.048783mm - x2 = 3.048783mm - ha:flags { - } - y1 = 1.422792mm - } - } - ha:combining { - } - } - } - } - uid = bK7s+7eWCVc1F+i9KCMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/TANT.scad =================================================================== --- trunk/pcblib/smd/TANT.scad (revision 34911) +++ trunk/pcblib/smd/TANT.scad (nonexistent) @@ -1,95 +0,0 @@ -// Various tantalum (from A to E) packages model -// -// Copyright (C) 2020 Alexey Kosilin -// -// File distribution license: -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -// -// The above distribution license applies when the file is distributed as a -// stand alone model file or as part of a library, in both cases intended -// for reuse combined by the user with other openscad scripts. -// -// Use license: -// as a special exception, the content of the file may be -// embedded in an openscad script that represents a printed circuit board, -// for example when a board is exported by pcb-rnd. In such use case, -// the content of this file may be copied into the resulting board file -// with or without modifications, without affecting the board file's license -// in any way. -// - -module part_tantalum (sz) -{ - module impl (L, W, H, P, Tw, Th) - { - delta = 1e-3 ; - $fn = 30 ; - - module lead (P, Tw, Th) - color ([0.9, 0.9, 0.9]) - translate ([-delta, -Tw/2, -delta]) - { - translate ([0.3/2, 0, 0.3/2]) - rotate ([-90, 0, 0]) - cylinder (d = 0.3, h = Tw) ; - - translate ([0, 0, 0.3/2]) - cube ([0.3, Tw, Th - 0.3/2]) ; - - translate ([0.3/2, 0, 0]) - cube ([P - 0.3/2, Tw, 0.3]) ; - } - - module case() - hull() - { - translate ([0, 0, H/2]) - cube ([L - 0.3*2, W - 0.2, H], center = true) ; - - translate ([0, 0, Th]) - cube ([L, W, delta], center = true) ; - } - - color ([0.7, 0.55, 0]) - intersection() - { - translate ([-L/3, -5, -5]) - cube ([P/2, 10, 10]) ; - - scale (1.001) - case() ; - } - - color ([0.9, 0.8, 0.2]) - case() ; - - translate ([-L/2, 0, 0]) - lead (P, Tw, Th) ; - - translate ([L/2, 0, 0]) - mirror ([1, 0, 0]) - lead (P, Tw, Th) ; - } - - sizes = "ABCDE" ; - L = [ 3.2, 3.5, 6.0, 7.3, 7.3 ] ; - W = [ 1.6, 2.8, 3.2, 4.3, 4.3 ] ; - H = [ 1.6, 1.9, 2.5, 2.8, 4 ] ; - P = [ 0.8, 0.8, 1.3, 1.3, 1.3 ] ; - Tw = [ 1.2, 2.2, 2.2, 2.4, 2.4 ] ; - - idx = search (sz, sizes)[0] ; - impl (L[idx], W[idx], H[idx], P[idx], Tw[idx], H[idx]/2) ; -} Index: trunk/pcblib/smd/SOT25.fp =================================================================== --- trunk/pcblib/smd/SOT25.fp (revision 34911) +++ trunk/pcblib/smd/SOT25.fp (nonexistent) @@ -1,313 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT25 SMT transistor, 5 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 12.0mil - -20.0mil - -12.0mil - -20.0mil - -12.0mil - 20.0mil - 12.0mil - 20.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 15.0mil - -23.0mil - -15.0mil - -23.0mil - -15.0mil - 23.0mil - 15.0mil - 23.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 12.0mil - -20.0mil - -12.0mil - -20.0mil - -12.0mil - 20.0mil - 12.0mil - 20.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 30.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 108.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 108.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 0 - xmirror = 0 - x = 69.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.23 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 0 - xmirror = 0 - x = 30.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 128.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 128.0mil - x2 = 128.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 128.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 148.0mil - y = 10.0mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.24 { - clearance = 0.0 - y2 = 1.79832mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 69.0mil - x2 = 69.0mil - ha:flags { - } - y1 = 1.79832mm - } - ha:line.27 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 30.0mil - x2 = 30.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.30 { - clearance = 0.0 - y2 = 4.048mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 30.0mil - x2 = 30.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.33 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 30.0mil - x2 = 1.762mm - ha:flags { - } - y1 = 120.0mil - } - } - ha:combining { - } - } - } - } - uid = FitPy/jBEPpaQxnl1vgAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOD323.fp =================================================================== --- trunk/pcblib/smd/SOD323.fp (revision 34911) +++ trunk/pcblib/smd/SOD323.fp (nonexistent) @@ -1,284 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOD323 SMT diode (pin 1 is cathode) - openscad=SOD323.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 25.5mil - -35.5mil - -25.5mil - -35.5mil - -25.5mil - 35.5mil - 25.5mil - 35.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 28.5mil - -38.5mil - -28.5mil - -38.5mil - -28.5mil - 38.5mil - 28.5mil - 38.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 25.5mil - -35.5mil - -25.5mil - -35.5mil - -25.5mil - 35.5mil - 25.5mil - 35.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.423183mm - rot = 0.000000 - y = 1.270392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 3.302783mm - rot = 0.000000 - y = 1.270392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 2.159392mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.381392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 2.413392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.889783mm - ha:flags { - } - y1 = 2.159392mm - } - ha:line.13 { - clearance = 0.0 - y2 = 2.413392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.889783mm - x2 = 4.217183mm - ha:flags { - } - y1 = 2.413392mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.217183mm - x2 = 4.217183mm - ha:flags { - } - y1 = 2.413392mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 4.217183mm - x2 = 0.889783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.381392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.889783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 4.725183mm - y = 1.270392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 1.270392mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.362983mm - x2 = 2.362983mm - ha:flags { - } - y1 = 1.270392mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.270392mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.362983mm - x2 = 2.362983mm - ha:flags { - } - y1 = 1.270392mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.270392mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.362983mm - x2 = 3.362983mm - ha:flags { - } - y1 = 1.270392mm - } - ha:line.36 { - clearance = 0.0 - y2 = 2.270392mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.362983mm - x2 = 2.362983mm - ha:flags { - } - y1 = 1.270392mm - } - } - ha:combining { - } - } - } - } - uid = 2dW9Tvw7RTxCX0jj23YAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SC90.fp =================================================================== --- trunk/pcblib/smd/SC90.fp (revision 34911) +++ trunk/pcblib/smd/SC90.fp (nonexistent) @@ -1,277 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SC90 SMT transistor, 3 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 12.0mil - -14.0mil - -12.0mil - -14.0mil - -12.0mil - 14.0mil - 12.0mil - 14.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 15.0mil - -17.0mil - -15.0mil - -17.0mil - -15.0mil - 17.0mil - 15.0mil - 17.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 12.0mil - -14.0mil - -12.0mil - -14.0mil - -12.0mil - 14.0mil - 12.0mil - 14.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 30.0mil - rot = 0.000000 - y = 91.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 69.0mil - rot = 0.000000 - y = 91.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 49.0mil - rot = 0.000000 - y = 32.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 111.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 13.0mil - ha:flags { - } - y1 = 13.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 111.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 13.0mil - x2 = 86.0mil - ha:flags { - } - y1 = 111.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 13.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 86.0mil - x2 = 86.0mil - ha:flags { - } - y1 = 111.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 13.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 86.0mil - x2 = 13.0mil - ha:flags { - } - y1 = 13.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 106.0mil - y = 13.0mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 1.811866mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.253066mm - x2 = 1.253066mm - ha:flags { - } - y1 = 1.811866mm - } - ha:line.25 { - clearance = 0.0 - y2 = 91.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 30.0mil - x2 = 30.0mil - ha:flags { - } - y1 = 91.0mil - } - ha:line.28 { - clearance = 0.0 - y2 = 3.3114mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 30.0mil - x2 = 30.0mil - ha:flags { - } - y1 = 91.0mil - } - ha:line.31 { - clearance = 0.0 - y2 = 91.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 30.0mil - x2 = 1.762mm - ha:flags { - } - y1 = 91.0mil - } - } - ha:combining { - } - } - } - } - uid = Y7qfWU1Va5qxQ5ui32QAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT23.scad =================================================================== --- trunk/pcblib/smd/SOT23.scad (revision 34911) +++ trunk/pcblib/smd/SOT23.scad (nonexistent) @@ -1,68 +0,0 @@ -// Model for SOT23 package -// -// Copyright (C) 2017,2020 Tibor 'Igor2' Palinkas -// -// File distribution license: -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -// -// The above distribution license applies when the file is distributed as a -// stand alone model file or as part of a library, in both cases intended -// for reuse combined by the user with other openscad scripts. -// -// Use license: -// as a special exception, the content of the file may be -// embedded in an openscad script that represents a printed circuit board, -// for example when a board is exported by pcb-rnd. In such use case, -// the content of this file may be copied into the resulting board file -// with or without modifications, without affecting the board file's license -// in any way. -// - -module sot23() -{ - module sot23_() - { - // pin prototype - module pin(length, height, thick) - { - linear_extrude(height=thick) - scale([length, -height, 1]) - polygon([[0.3400,0.0000],[0.3900,0.0100],[0.4300,0.0300],[0.4600,0.0600],[0.4789,0.0908],[0.6279,0.8307],[0.6500,0.8600],[0.6900,0.8900],[0.7300,0.9000],[1.0000,0.9000],[1.0000,1.0000],[0.6700,1.0012],[0.6100,0.9900],[0.5600,0.9600],[0.5300,0.9200],[0.5200,0.9000],[0.3721,0.1693],[0.3500,0.1400],[0.3100,0.1100],[0.2700,0.1000],[0.0000,0.1000],[0.0000,0.0000]]); - } - - rotate([90,0,-90]) scale([1.13,1.13,1.13]) translate([-0.9, 0.4, -2.1 - 0.43/2]) { - // body - color([0.1,0.1,0.1]) - linear_extrude(height=2.9) - polygon([[-0.55,0],[-0.45,0.53],[0.45,0.53],[0.55,0],[0.45,-0.35],[-0.45,-0.35]]); - - // 3 pins - color([0.9, 0.9, 0.9]) { - translate([0.5,0,0.5-0.43/2]) - pin(0.5, 0.4, 0.43); - - translate([0.5,0,2.3-0.43/2]) - pin(0.5, 0.4, 0.43); - - translate([-0.5,0,1.45-0.43/2]) - pin(-0.5, 0.4, 0.43); - } - } - } - - // match rotation with stock footprint's - rotate([0,0,90]) - sot23_(); -} Index: trunk/pcblib/smd/SOD123.scad =================================================================== --- trunk/pcblib/smd/SOD123.scad (revision 34911) +++ trunk/pcblib/smd/SOD123.scad (nonexistent) @@ -1,89 +0,0 @@ -// Model for SOD123 package -// -// Copyright (C) 2020 Alexey Kosilin -// -// File distribution license: -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -// -// The above distribution license applies when the file is distributed as a -// stand alone model file or as part of a library, in both cases intended -// for reuse combined by the user with other openscad scripts. -// -// Use license: -// as a special exception, the content of the file may be -// embedded in an openscad script that represents a printed circuit board, -// for example when a board is exported by pcb-rnd. In such use case, -// the content of this file may be copied into the resulting board file -// with or without modifications, without affecting the board file's license -// in any way. -// - -module part_sod123() -{ - $fn = 30 ; - - A = 1.35 ; - D = 1.8 ; - E = 2.84 ; - He = 3.86 ; - - c = 0.15 ; - L = 0.25 ; - b = 0.71 ; - l2 = 0.15 ; - - module lead() - color ([0.9, 0.9, 0.9]) - { - translate ([0, -b/2, L+c]) - rotate ([-90, 0, 0]) - rotate_extrude (angle = 90) - translate ([L, 0, 0]) - square ([c, b]) ; - - translate ([L, -b/2, L+c]) - cube ([c, b, A/2 - (L+c)]) ; - - translate ([c+l2+L, b/2, A/2]) - rotate ([90, -90, 0]) - rotate_extrude (angle = 90) - translate ([l2, 0, 0]) - square ([c, b]) ; - } - - module case() - translate ([He/2 - E/2 - He/2, -D/2, 0]) - cube ([E, D, A]) ; - - translate ([-He/2, 0, 0]) - lead() ; - - translate ([He/2, 0, 0]) - mirror ([1, 0, 0]) - lead() ; - - color ([0.5, 0.5, 0.5]) - intersection() - { - translate ([-He/4, -5, -5]) - cube ([0.3, 10, 10]) ; - - scale (1.002) - case() ; - } - - color ([0.3, 0.3, 0.3]) - case() ; -} Index: trunk/pcblib/smd/SOD323.scad =================================================================== --- trunk/pcblib/smd/SOD323.scad (revision 34911) +++ trunk/pcblib/smd/SOD323.scad (nonexistent) @@ -1,79 +0,0 @@ -// Model for SOD323 package -// -// Copyright (C) 2020 Alexey Kosilin -// -// File distribution license: -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -// -// The above distribution license applies when the file is distributed as a -// stand alone model file or as part of a library, in both cases intended -// for reuse combined by the user with other openscad scripts. -// -// Use license: -// as a special exception, the content of the file may be -// embedded in an openscad script that represents a printed circuit board, -// for example when a board is exported by pcb-rnd. In such use case, -// the content of this file may be copied into the resulting board file -// with or without modifications, without affecting the board file's license -// in any way. -// - -module part_sod323() -{ - $fn = 30 ; - - module lead() - color ([0.9, 0.9, 0.9]) - { - translate ([0, -0.35/2, 0.4]) - rotate ([-90, 0, 0]) - rotate_extrude (angle = 90) - translate ([0.25, 0, 0]) - square ([0.15, 0.35]) ; - - translate ([0.25, -0.35/2, 0.4]) - cube ([0.15, 0.35, 1.35/2 - 0.4]) ; - - translate ([0.5, 0.35/2, 1.35/2]) - rotate ([90, -90, 0]) - rotate_extrude (angle = 90) - translate ([0.1, 0, 0]) - square ([0.15, 0.35]) ; - } - - module case() - translate ([-0.9, -0.7, 0]) - cube ([1.8, 1.4, 1.35]) ; - - translate ([-0.5-0.9, 0, 0]) - lead() ; - - mirror ([1, 0, 0]) - translate ([-0.5-0.9, 0, 0]) - lead() ; - - color ([0.5, 0.5, 0.5]) - intersection() - { - translate ([-0.7, -5, -5]) - cube ([0.3, 10, 10]) ; - - scale (1.002) - case() ; - } - - color ([0.3, 0.3, 0.3]) - case() ; -} Index: trunk/pcblib/smd/0201.fp =================================================================== --- trunk/pcblib/smd/0201.fp (revision 34911) +++ trunk/pcblib/smd/0201.fp (nonexistent) @@ -1,212 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 0201 Standard SMT resistor, capacitor etc - openscad = 0201.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -7.87mil - 7.87mil - 7.87mil - 7.87mil - 7.87mil - -7.87mil - -7.87mil - -7.87mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -0.276098mm - 0.276098mm - 0.276098mm - 0.276098mm - 0.276098mm - -0.276098mm - -0.276098mm - -0.276098mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -7.87mil - 7.87mil - 7.87mil - 7.87mil - 7.87mil - -7.87mil - -7.87mil - -7.87mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 20.87mil - rot = 0.000000 - y = 20.87mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 44.49mil - rot = 0.000000 - y = 20.87mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 0.029972mm - y = -10.63mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 20.87mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 0.830072mm - x2 = 0.830072mm - ha:flags { - } - y1 = 20.87mil - } - ha:line.12 { - clearance = 0.0 - y2 = 20.87mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 0.830072mm - x2 = 0.830072mm - ha:flags { - } - y1 = 20.87mil - } - ha:line.15 { - clearance = 0.0 - y2 = 20.87mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 0.830072mm - x2 = 1.830072mm - ha:flags { - } - y1 = 20.87mil - } - ha:line.18 { - clearance = 0.0 - y2 = 1.530098mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 0.830072mm - x2 = 0.830072mm - ha:flags { - } - y1 = 20.87mil - } - } - ha:combining { - } - } - } - } - uid = eStzy6mX6No40cDOtoEAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT89.fp =================================================================== --- trunk/pcblib/smd/SOT89.fp (revision 34911) +++ trunk/pcblib/smd/SOT89.fp (nonexistent) @@ -1,363 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT89 SMT transistor, 4 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 18.5mil - -30.5mil - -18.5mil - -30.5mil - -18.5mil - 30.5mil - 18.5mil - 30.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 21.5mil - -33.5mil - -21.5mil - -33.5mil - -21.5mil - 33.5mil - 21.5mil - 33.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 18.5mil - -30.5mil - -18.5mil - -30.5mil - -18.5mil - 30.5mil - 18.5mil - 30.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 60.5mil - 30.5mil - 60.5mil - -30.5mil - -60.5mil - -30.5mil - -60.5mil - 30.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 63.5mil - 33.5mil - 63.5mil - -33.5mil - -63.5mil - -33.5mil - -63.5mil - 33.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 60.5mil - 30.5mil - 60.5mil - -30.5mil - -60.5mil - -30.5mil - -60.5mil - 30.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 36.5mil - rot = 0.000000 - y = 170.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 97.5mil - rot = 0.000000 - y = 170.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 158.5mil - rot = 0.000000 - y = 170.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 97.5mil - rot = 0.000000 - y = 48.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 213.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 6.5mil - x2 = 6.5mil - ha:flags { - } - y1 = 6.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 213.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 6.5mil - x2 = 189.5mil - ha:flags { - } - y1 = 213.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 6.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 189.5mil - x2 = 189.5mil - ha:flags { - } - y1 = 213.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 6.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 189.5mil - x2 = 6.5mil - ha:flags { - } - y1 = 6.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 209.5mil - y = 6.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 140.0mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 97.5mil - x2 = 97.5mil - ha:flags { - } - y1 = 140.0mil - } - ha:line.26 { - clearance = 0.0 - y2 = 170.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 36.5mil - x2 = 36.5mil - ha:flags { - } - y1 = 170.5mil - } - ha:line.29 { - clearance = 0.0 - y2 = 5.3307mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 36.5mil - x2 = 36.5mil - ha:flags { - } - y1 = 170.5mil - } - ha:line.32 { - clearance = 0.0 - y2 = 170.5mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 36.5mil - x2 = 1.9271mm - ha:flags { - } - y1 = 170.5mil - } - } - ha:combining { - } - } - } - } - uid = nhFNna5oWAROPukkSGYAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/0201.scad =================================================================== --- trunk/pcblib/smd/0201.scad (revision 34911) +++ trunk/pcblib/smd/0201.scad (nonexistent) @@ -1,20 +0,0 @@ -module part_0201(len=0.6, width=0.3, height=0.23, pad_len=0.15) -{ - union() { - translate([0,0,height/2]) { - // body - color([0.1,0.1,0.1]) - cube([len-2*pad_len,width,height], center=true); - // terminals - color([0.8,0.8,0.8]) { - translate([+len/2-pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - color([0.8,0.8,0.8]) { - translate([-len/2+pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - } - } -} - Index: trunk/pcblib/smd/0603.fp =================================================================== --- trunk/pcblib/smd/0603.fp (revision 34911) +++ trunk/pcblib/smd/0603.fp (nonexistent) @@ -1,212 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 0603 Standard SMT resistor, capacitor etc - openscad = 0603.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.374904mm - -0.499872mm - -0.374904mm - -0.499872mm - -0.374904mm - 0.499872mm - 0.374904mm - 0.499872mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.76mil - -0.576072mm - -17.76mil - -0.576072mm - -17.76mil - 0.576072mm - 17.76mil - 0.576072mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.374904mm - -0.499872mm - -0.374904mm - -0.499872mm - -0.374904mm - 0.499872mm - 0.374904mm - 0.499872mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 27.76mil - rot = 0.000000 - y = 0.830072mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 2.005076mm - rot = 0.000000 - y = 0.830072mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 21.85mil - y = 0.029972mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 0.830072mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 53.35mil - x2 = 53.35mil - ha:flags { - } - y1 = 0.830072mm - } - ha:line.12 { - clearance = 0.0 - y2 = 0.830072mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 53.35mil - x2 = 53.35mil - ha:flags { - } - y1 = 0.830072mm - } - ha:line.15 { - clearance = 0.0 - y2 = 0.830072mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 53.35mil - x2 = 2.35509mm - ha:flags { - } - y1 = 0.830072mm - } - ha:line.18 { - clearance = 0.0 - y2 = 1.830072mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 53.35mil - x2 = 53.35mil - ha:flags { - } - y1 = 0.830072mm - } - } - ha:combining { - } - } - } - } - uid = XViXVIINgyaT6qmUrpMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/DO214.fp =================================================================== --- trunk/pcblib/smd/DO214.fp (revision 34911) +++ trunk/pcblib/smd/DO214.fp (nonexistent) @@ -1,283 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DO214 SMT diode (pin 1 is cathode) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 70.0mil - -89.0mil - -70.0mil - -89.0mil - -70.0mil - 89.0mil - 70.0mil - 89.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 73.0mil - -92.0mil - -73.0mil - -92.0mil - -73.0mil - 92.0mil - 73.0mil - 92.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 70.0mil - -89.0mil - -70.0mil - -89.0mil - -70.0mil - 89.0mil - 70.0mil - 89.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.921783mm - rot = 0.000000 - y = 3.022992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 8.306583mm - rot = 0.000000 - y = 3.022992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 5.283592mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.762392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 5.918592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 2.032783mm - ha:flags { - } - y1 = 5.283592mm - } - ha:line.13 { - clearance = 0.0 - y2 = 5.918592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 2.032783mm - x2 = 10.719583mm - ha:flags { - } - y1 = 5.918592mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 10.719583mm - x2 = 10.719583mm - ha:flags { - } - y1 = 5.918592mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 10.719583mm - x2 = 2.032783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.762392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 2.032783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 11.227583mm - y = 3.022992mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 3.022992mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.614183mm - x2 = 5.614183mm - ha:flags { - } - y1 = 3.022992mm - } - ha:line.30 { - clearance = 0.0 - y2 = 3.022992mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 5.614183mm - x2 = 5.614183mm - ha:flags { - } - y1 = 3.022992mm - } - ha:line.33 { - clearance = 0.0 - y2 = 3.022992mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 5.614183mm - x2 = 6.614183mm - ha:flags { - } - y1 = 3.022992mm - } - ha:line.36 { - clearance = 0.0 - y2 = 4.022992mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 5.614183mm - x2 = 5.614183mm - ha:flags { - } - y1 = 3.022992mm - } - } - ha:combining { - } - } - } - } - uid = BVofxkidfNHI5Q7do+oAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/DO214AB.fp =================================================================== --- trunk/pcblib/smd/DO214AB.fp (revision 34911) +++ trunk/pcblib/smd/DO214AB.fp (nonexistent) @@ -1,285 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DO214AB SMT diode (pin 1 is cathode) - openscad-param="AB" - openscad=DO214.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 72.5mil - -92.5mil - -72.5mil - -92.5mil - -72.5mil - 92.5mil - 72.5mil - 92.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 75.5mil - -95.5mil - -75.5mil - -95.5mil - -75.5mil - 95.5mil - 75.5mil - 95.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 72.5mil - -92.5mil - -72.5mil - -92.5mil - -72.5mil - 92.5mil - 72.5mil - 92.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.997983mm - rot = 0.000000 - y = 3.124592mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 8.535183mm - rot = 0.000000 - y = 3.124592mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 5.461392mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.787792mm - } - ha:line.10 { - clearance = 0.0 - y2 = 6.121792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 2.083583mm - ha:flags { - } - y1 = 5.461392mm - } - ha:line.13 { - clearance = 0.0 - y2 = 6.121792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 2.083583mm - x2 = 11.024383mm - ha:flags { - } - y1 = 6.121792mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 11.024383mm - x2 = 11.024383mm - ha:flags { - } - y1 = 6.121792mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 11.024383mm - x2 = 2.083583mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.787792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 2.083583mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 11.532383mm - y = 3.124592mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 3.124592mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.766583mm - x2 = 5.766583mm - ha:flags { - } - y1 = 3.124592mm - } - ha:line.30 { - clearance = 0.0 - y2 = 3.124592mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 5.766583mm - x2 = 5.766583mm - ha:flags { - } - y1 = 3.124592mm - } - ha:line.33 { - clearance = 0.0 - y2 = 3.124592mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 5.766583mm - x2 = 6.766583mm - ha:flags { - } - y1 = 3.124592mm - } - ha:line.36 { - clearance = 0.0 - y2 = 4.124592mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 5.766583mm - x2 = 5.766583mm - ha:flags { - } - y1 = 3.124592mm - } - } - ha:combining { - } - } - } - } - uid = LJaVZUMLh15GoNd+Ga8AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/0805.fp =================================================================== --- trunk/pcblib/smd/0805.fp (revision 34911) +++ trunk/pcblib/smd/0805.fp (nonexistent) @@ -1,236 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 0805 Standard SMT resistor, capacitor etc - openscad = 0805.scad - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -0.749808mm - -0.649986mm - -0.749808mm - -0.649986mm - 0.749808mm - 0.649986mm - 0.749808mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.726186mm - -32.52mil - -0.726186mm - -32.52mil - -0.726186mm - 32.52mil - 0.726186mm - 32.52mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -0.749808mm - -0.649986mm - -0.749808mm - -0.649986mm - 0.749808mm - 0.649986mm - 0.749808mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 38.59mil - rot = 0.000000 - y = 42.52mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 109.45mil - rot = 0.000000 - y = 42.52mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 14.97mil - thickness = 8.0mil - ha:attributes { - } - x1 = 70.09mil - x2 = 77.95mil - ha:flags { - } - y1 = 14.97mil - } - ha:line.12 { - clearance = 0.0 - y2 = 1.779778mm - thickness = 8.0mil - ha:attributes { - } - x1 = 70.09mil - x2 = 77.95mil - ha:flags { - } - y1 = 1.779778mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 42.52mil - y = 0.279908mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 42.52mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.880108mm - x2 = 1.880108mm - ha:flags { - } - y1 = 42.52mil - } - ha:line.18 { - clearance = 0.0 - y2 = 42.52mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.880108mm - x2 = 1.880108mm - ha:flags { - } - y1 = 42.52mil - } - ha:line.21 { - clearance = 0.0 - y2 = 42.52mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.880108mm - x2 = 2.880108mm - ha:flags { - } - y1 = 42.52mil - } - ha:line.24 { - clearance = 0.0 - y2 = 2.080008mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.880108mm - x2 = 1.880108mm - ha:flags { - } - y1 = 42.52mil - } - } - ha:combining { - } - } - } - } - uid = Gb4CEJNqF8FflGx6irgAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOD80.fp =================================================================== --- trunk/pcblib/smd/SOD80.fp (revision 34911) +++ trunk/pcblib/smd/SOD80.fp (nonexistent) @@ -1,283 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOD80 SMT diode (pin 1 is cathode) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 26.5mil - -42.5mil - -26.5mil - -42.5mil - -26.5mil - 42.5mil - 26.5mil - 42.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 29.5mil - -45.5mil - -29.5mil - -45.5mil - -29.5mil - 45.5mil - 29.5mil - 45.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 26.5mil - -42.5mil - -26.5mil - -42.5mil - -26.5mil - 42.5mil - 26.5mil - 42.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.473983mm - rot = 0.000000 - y = 1.524392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 4.420383mm - rot = 0.000000 - y = 1.524392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 2.616592mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.432192mm - } - ha:line.10 { - clearance = 0.0 - y2 = 2.921392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.915183mm - ha:flags { - } - y1 = 2.616592mm - } - ha:line.13 { - clearance = 0.0 - y2 = 2.921392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.915183mm - x2 = 5.385583mm - ha:flags { - } - y1 = 2.921392mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.385583mm - x2 = 5.385583mm - ha:flags { - } - y1 = 2.921392mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 5.385583mm - x2 = 0.915183mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.432192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.915183mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 5.893583mm - y = 1.524392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 1.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.947183mm - x2 = 2.947183mm - ha:flags { - } - y1 = 1.524392mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.947183mm - x2 = 2.947183mm - ha:flags { - } - y1 = 1.524392mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.947183mm - x2 = 3.947183mm - ha:flags { - } - y1 = 1.524392mm - } - ha:line.36 { - clearance = 0.0 - y2 = 2.524392mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.947183mm - x2 = 2.947183mm - ha:flags { - } - y1 = 1.524392mm - } - } - ha:combining { - } - } - } - } - uid = VTNdQbVwPxfgsvfI80oAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/0603.scad =================================================================== --- trunk/pcblib/smd/0603.scad (revision 34911) +++ trunk/pcblib/smd/0603.scad (nonexistent) @@ -1,20 +0,0 @@ -module part_0603(len=1.6, width=0.8, height=0.45, pad_len=0.3) -{ - union() { - translate([0,0,height/2]) { - // body - color([0.1,0.1,0.1]) - cube([len-2*pad_len,width,height], center=true); - // terminals - color([0.8,0.8,0.8]) { - translate([+len/2-pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - color([0.8,0.8,0.8]) { - translate([-len/2+pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - } - } -} - Index: trunk/pcblib/smd/SOT323.fp =================================================================== --- trunk/pcblib/smd/SOT323.fp (revision 34911) +++ trunk/pcblib/smd/SOT323.fp (nonexistent) @@ -1,277 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT323 SMT transistor, 3 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.5mil - -20.5mil - -17.5mil - -20.5mil - -17.5mil - 20.5mil - 17.5mil - 20.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 32.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 83.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 58.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 125.5mil - y = 11.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 2.087033mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.477433mm - x2 = 1.477433mm - ha:flags { - } - y1 = 2.087033mm - } - ha:line.25 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.28 { - clearance = 0.0 - y2 = 3.6797mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.31 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 32.5mil - x2 = 1.8255mm - ha:flags { - } - y1 = 105.5mil - } - } - ha:combining { - } - } - } - } - uid = cXXouN6IWQ/t3brFf7YAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT143.fp =================================================================== --- trunk/pcblib/smd/SOT143.fp (revision 34911) +++ trunk/pcblib/smd/SOT143.fp (nonexistent) @@ -1,363 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT143 SMT transistor, 4 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -18.5mil - -17.0mil - -18.5mil - 17.0mil - 18.5mil - 17.0mil - 18.5mil - -17.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -21.5mil - -20.0mil - -21.5mil - 20.0mil - 21.5mil - 20.0mil - 21.5mil - -20.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -18.5mil - -17.0mil - -18.5mil - 17.0mil - 18.5mil - 17.0mil - 18.5mil - -17.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.0mil - -20.0mil - -17.0mil - -20.0mil - -17.0mil - 20.0mil - 17.0mil - 20.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 20.0mil - -23.0mil - -20.0mil - -23.0mil - -20.0mil - 23.0mil - 20.0mil - 23.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.0mil - -20.0mil - -17.0mil - -20.0mil - -17.0mil - 20.0mil - 17.0mil - 20.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 39.5mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 109.0mil - rot = 0.000000 - y = 120.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 109.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 35.0mil - rot = 0.000000 - y = 38.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 149.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 10.0mil - x2 = 134.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 134.0mil - x2 = 134.0mil - ha:flags { - } - y1 = 149.0mil - } - ha:line.16 { - clearance = 0.0 - y2 = 10.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 134.0mil - x2 = 10.0mil - ha:flags { - } - y1 = 10.0mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 154.0mil - y = 10.0mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 79.0mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 73.125mil - x2 = 73.125mil - ha:flags { - } - y1 = 79.0mil - } - ha:line.26 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 35.0mil - x2 = 35.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.29 { - clearance = 0.0 - y2 = 4.048mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 35.0mil - x2 = 35.0mil - ha:flags { - } - y1 = 120.0mil - } - ha:line.32 { - clearance = 0.0 - y2 = 120.0mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 35.0mil - x2 = 1.889mm - ha:flags { - } - y1 = 120.0mil - } - } - ha:combining { - } - } - } - } - uid = 0oigisyzTIDYQhx/ge0AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/2706.fp =================================================================== --- trunk/pcblib/smd/2706.fp (revision 34911) +++ trunk/pcblib/smd/2706.fp (nonexistent) @@ -1,259 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 2706 Standard SMT resistor, capacitor etc - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 39.0mil - -42.0mil - -39.0mil - -42.0mil - -39.0mil - 42.0mil - 39.0mil - 42.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 42.0mil - -45.0mil - -42.0mil - -45.0mil - -42.0mil - 45.0mil - 42.0mil - 45.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 39.0mil - -42.0mil - -39.0mil - -42.0mil - -39.0mil - 42.0mil - 39.0mil - 42.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.422792mm - rot = 0.000000 - y = 1.498992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 6.909192mm - rot = 0.000000 - y = 1.498992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 2.870592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 2.870592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 8.204592mm - ha:flags { - } - y1 = 2.870592mm - } - ha:line.13 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 8.204592mm - x2 = 8.204592mm - ha:flags { - } - y1 = 2.870592mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 8.204592mm - x2 = 0.127392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 8.712592mm - y = 1.498992mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.21 { - clearance = 0.0 - y2 = 1.498992mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 4.165992mm - x2 = 4.165992mm - ha:flags { - } - y1 = 1.498992mm - } - ha:line.24 { - clearance = 0.0 - y2 = 1.498992mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 4.165992mm - x2 = 4.165992mm - ha:flags { - } - y1 = 1.498992mm - } - ha:line.27 { - clearance = 0.0 - y2 = 1.498992mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 4.165992mm - x2 = 5.165992mm - ha:flags { - } - y1 = 1.498992mm - } - ha:line.30 { - clearance = 0.0 - y2 = 2.498992mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 4.165992mm - x2 = 4.165992mm - ha:flags { - } - y1 = 1.498992mm - } - } - ha:combining { - } - } - } - } - uid = FePvr11aAXKyPT8fC0AAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/DO214.scad =================================================================== --- trunk/pcblib/smd/DO214.scad (revision 34911) +++ trunk/pcblib/smd/DO214.scad (nonexistent) @@ -1,104 +0,0 @@ -// Parametric model for DO214 AA/AB/AC packages -// -// Copyright (C) 2020 Alexey Kosilin -// -// File distribution license: -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -// -// The above distribution license applies when the file is distributed as a -// stand alone model file or as part of a library, in both cases intended -// for reuse combined by the user with other openscad scripts. -// -// Use license: -// as a special exception, the content of the file may be -// embedded in an openscad script that represents a printed circuit board, -// for example when a board is exported by pcb-rnd. In such use case, -// the content of this file may be copied into the resulting board file -// with or without modifications, without affecting the board file's license -// in any way. -// - -module part_do214 (var) -{ - module impl (L, W, H, P, Tw, Th) - { - delta = 1e-3 ; - $fn = 30 ; - - module lead (P, Tw, Th) - color ([0.9, 0.9, 0.9]) - translate ([-delta, -Tw/2, -delta]) - { - translate ([0.3/2, 0, 0.3/2]) - rotate ([-90, 0, 0]) - cylinder (d = 0.3, h = Tw) ; - - translate ([0.3/2, 0, Th]) - rotate ([-90, 0, 0]) - cylinder (d = 0.3, h = Tw) ; - - translate ([0, 0, 0.3/2]) - cube ([0.3, Tw, Th - 0.3/2]) ; - - translate ([0.3/2, 0, 0]) - cube ([3*P - 0.3/2, Tw, 0.3]) ; - - translate ([0.3/2, 0, Th - 0.3/2]) - cube ([2*P - 0.3/2, Tw, 0.3]) ; - } - - module case() - hull() - { - translate ([0, 0, H/2]) - cube ([L*0.95, W*0.95, H], center = true) ; - - translate ([0, 0, Th]) - cube ([L, W, delta], center = true) ; - } - - color ([0.5, 0.5, 0.5]) - intersection() - { - translate ([-L/3, -5, -5]) - cube ([0.5, 10, 10]) ; - - scale (1.002) - case() ; - } - - color ([0.3, 0.3, 0.3]) - case() ; - - translate ([-L/2-P, 0, 0]) - lead (P, Tw, Th) ; - - translate ([L/2+P, 0, 0]) - mirror ([1, 0, 0]) - lead (P, Tw, Th) ; - } - - variants = [ "AA", "AB", "AC" ] ; - - L = [ 4.57, 7.11, 4.6 ] ; - W = [ 3.94, 6.22, 2.90 ] ; - H = [ 2.5, 2.62, 2.45 ] ; - Tw = [ 2.21, 3.2, 1.65 ] ; - Tl = [ 5.59, 8.13, 5.35 ] ; - - idx = search ([var], variants)[0] ; - - impl (L[idx], W[idx], H[idx], (Tl[idx]-L[idx]) / 2, Tw[idx], H[idx]/2) ; -} Index: trunk/pcblib/smd/SC70_4.fp =================================================================== --- trunk/pcblib/smd/SC70_4.fp (revision 34911) +++ trunk/pcblib/smd/SC70_4.fp (nonexistent) @@ -1,363 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SC70_4 SMT transistor, 4 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -16.0mil - -14.5mil - -16.0mil - 14.5mil - 16.0mil - 14.5mil - 16.0mil - -14.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -19.0mil - -17.5mil - -19.0mil - 17.5mil - 19.0mil - 17.5mil - 19.0mil - -17.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -16.0mil - -14.5mil - -16.0mil - 14.5mil - 16.0mil - 14.5mil - 16.0mil - -14.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.5mil - -20.5mil - -17.5mil - -20.5mil - -17.5mil - 20.5mil - 17.5mil - 20.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 37.0mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 83.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 83.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 32.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 125.5mil - y = 11.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 70.5mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 59.125mil - x2 = 59.125mil - ha:flags { - } - y1 = 70.5mil - } - ha:line.26 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.29 { - clearance = 0.0 - y2 = 3.6797mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.32 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 32.5mil - x2 = 1.8255mm - ha:flags { - } - y1 = 105.5mil - } - } - ha:combining { - } - } - } - } - uid = lUXAYtVgjXtuvW/Gy1MAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/1825.fp =================================================================== --- trunk/pcblib/smd/1825.fp (revision 34911) +++ trunk/pcblib/smd/1825.fp (nonexistent) @@ -1,235 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = 1825 Standard SMT resistor, capacitor etc - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 31.495mil - -3.399917mm - -31.495mil - -3.399917mm - -31.495mil - 3.399917mm - 31.495mil - 3.399917mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.876173mm - -3.476117mm - -0.876173mm - -3.476117mm - -0.876173mm - 3.476117mm - 0.876173mm - 3.476117mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 31.495mil - -3.399917mm - -31.495mil - -3.399917mm - -31.495mil - 3.399917mm - 31.495mil - 3.399917mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.130173mm - rot = 0.000000 - y = 3.730117mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 5.130165mm - rot = 0.000000 - y = 3.730117mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 13.005mil - thickness = 8.0mil - ha:attributes { - } - x1 = 91.745mil - x2 = 3.930015mm - ha:flags { - } - y1 = 13.005mil - } - ha:line.12 { - clearance = 0.0 - y2 = 7.129907mm - thickness = 8.0mil - ha:attributes { - } - x1 = 91.745mil - x2 = 3.930015mm - ha:flags { - } - y1 = 7.129907mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 2.330069mm - y = 115.355mil - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 3.730117mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.130169mm - x2 = 3.130169mm - ha:flags { - } - y1 = 3.730117mm - } - ha:line.18 { - clearance = 0.0 - y2 = 3.730117mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.130169mm - x2 = 3.130169mm - ha:flags { - } - y1 = 3.730117mm - } - ha:line.21 { - clearance = 0.0 - y2 = 3.730117mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.130169mm - x2 = 4.130169mm - ha:flags { - } - y1 = 3.730117mm - } - ha:line.24 { - clearance = 0.0 - y2 = 4.730117mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.130169mm - x2 = 3.130169mm - ha:flags { - } - y1 = 3.730117mm - } - } - ha:combining { - } - } - } - } - uid = k6ig2fGd0J0pkK+aZVsAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT325.fp =================================================================== --- trunk/pcblib/smd/SOT325.fp (revision 34911) +++ trunk/pcblib/smd/SOT325.fp (nonexistent) @@ -1,313 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT325 SMT transistor, 5 pins - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 7.5mil - -17.5mil - -7.5mil - -17.5mil - -7.5mil - 17.5mil - 7.5mil - 17.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 10.5mil - -20.5mil - -10.5mil - -20.5mil - -10.5mil - 20.5mil - 10.5mil - 20.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 7.5mil - -17.5mil - -7.5mil - -17.5mil - -7.5mil - 17.5mil - 7.5mil - 17.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 25.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 76.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 76.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 0 - xmirror = 0 - x = 51.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.23 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 0 - xmirror = 0 - x = 25.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 91.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 91.5mil - x2 = 91.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 91.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 111.5mil - y = 11.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.24 { - clearance = 0.0 - y2 = 63.5mil - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 51.1mil - x2 = 51.1mil - ha:flags { - } - y1 = 63.5mil - } - ha:line.27 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 25.5mil - x2 = 25.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.30 { - clearance = 0.0 - y2 = 3.6797mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 25.5mil - x2 = 25.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.33 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 25.5mil - x2 = 1.6477mm - ha:flags { - } - y1 = 105.5mil - } - } - ha:combining { - } - } - } - } - uid = 8pGeYOC0HklbCnV30cwAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/minimelf.fp =================================================================== --- trunk/pcblib/smd/minimelf.fp (revision 34911) +++ trunk/pcblib/smd/minimelf.fp (nonexistent) @@ -1,233 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = minimelf - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -0.899922mm - -0.649986mm - -0.899922mm - -0.649986mm - 0.899922mm - 0.649986mm - 0.899922mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 38.09mil - -1.217422mm - -38.09mil - -1.217422mm - -38.09mil - 1.217422mm - 38.09mil - 1.217422mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 0.649986mm - -0.899922mm - -0.649986mm - -0.899922mm - -0.649986mm - 0.899922mm - 0.649986mm - 0.899922mm - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 1 - } - proto = 0 - xmirror = 0 - x = 1.52756in - rot = 0.000000 - y = 35.999928mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 25.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 2 - } - proto = 0 - xmirror = 0 - x = 1.38582in - rot = 0.000000 - y = 35.999928mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 25.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.9 { - clearance = 0.0 - y2 = 1.38582in - thickness = 7.87mil - ha:attributes { - } - x1 = 35.999928mm - x2 = 37.999924mm - ha:flags { - } - y1 = 1.38582in - } - ha:line.12 { - clearance = 0.0 - y2 = 1.44882in - thickness = 7.87mil - ha:attributes { - } - x1 = 35.999928mm - x2 = 37.999924mm - ha:flags { - } - y1 = 1.44882in - } - ha:text.6 { - scale = 70 - ha:attributes { - } - x = 1.41949in - y = 35.46983mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.15 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.45669in - x2 = 1.45669in - ha:flags { - } - y1 = 35.999928mm - } - ha:line.18 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.45669in - x2 = 1.45669in - ha:flags { - } - y1 = 35.999928mm - } - ha:line.21 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.45669in - x2 = 35.999926mm - ha:flags { - } - y1 = 35.999928mm - } - ha:line.24 { - clearance = 0.0 - y2 = 34.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.45669in - x2 = 1.45669in - ha:flags { - } - y1 = 35.999928mm - } - } - ha:combining { - } - } - } - } - uid = kBcrKTtaM9kTfl/PmukAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOT323D.fp =================================================================== --- trunk/pcblib/smd/SOT323D.fp (revision 34911) +++ trunk/pcblib/smd/SOT323D.fp (nonexistent) @@ -1,277 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOT323D SMT diode (pin 1 is cathode) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 17.5mil - -20.5mil - -17.5mil - -20.5mil - -17.5mil - 20.5mil - 17.5mil - 20.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 14.5mil - -17.5mil - -14.5mil - -17.5mil - -14.5mil - 17.5mil - 14.5mil - 17.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 32.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 0 - xmirror = 0 - x = 83.5mil - rot = 0.000000 - y = 105.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 58.5mil - rot = 0.000000 - y = 35.5mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:line.10 { - clearance = 0.0 - y2 = 130.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 11.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.13 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 105.5mil - ha:flags { - } - y1 = 130.5mil - } - ha:line.16 { - clearance = 0.0 - y2 = 11.5mil - thickness = 10.0mil - ha:attributes { - } - x1 = 105.5mil - x2 = 11.5mil - ha:flags { - } - y1 = 11.5mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 125.5mil - y = 11.5mil - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.22 { - clearance = 0.0 - y2 = 2.087033mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.477433mm - x2 = 1.477433mm - ha:flags { - } - y1 = 2.087033mm - } - ha:line.25 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - ha:line.28 { - clearance = 0.0 - y2 = 105.5mil - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 32.5mil - x2 = 1.8255mm - ha:flags { - } - y1 = 105.5mil - } - ha:line.31 { - clearance = 0.0 - y2 = 3.6797mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 32.5mil - x2 = 32.5mil - ha:flags { - } - y1 = 105.5mil - } - } - ha:combining { - } - } - } - } - uid = bi96z3ATUk0N6MnhWkkAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/0805.scad =================================================================== --- trunk/pcblib/smd/0805.scad (revision 34911) +++ trunk/pcblib/smd/0805.scad (nonexistent) @@ -1,19 +0,0 @@ -module part_0805(len=2, width=1.2, height=0.5, pad_len=0.4) -{ - union() { - translate([0,0,height/2]) { - // body - color([0.1,0.1,0.1]) - cube([len-2*pad_len,width,height], center=true); - // terminals - color([0.8,0.8,0.8]) { - translate([+len/2-pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - color([0.8,0.8,0.8]) { - translate([-len/2+pad_len/2, 0, 0]) - cube([pad_len, width, height], center=true); - } - } - } -} Index: trunk/pcblib/smd/TANT_B.fp =================================================================== --- trunk/pcblib/smd/TANT_B.fp (revision 34911) +++ trunk/pcblib/smd/TANT_B.fp (nonexistent) @@ -1,285 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TANT_B Tantalum SMT capacitor (pin 1 is +) - openscad = TANT.scad - openscad-param = {"B"} - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 35.5mil - -76.5mil - -35.5mil - -76.5mil - -35.5mil - 76.5mil - 35.5mil - 76.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 38.5mil - -79.5mil - -38.5mil - -79.5mil - -38.5mil - 79.5mil - 38.5mil - 79.5mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 35.5mil - -76.5mil - -35.5mil - -76.5mil - -35.5mil - 76.5mil - 35.5mil - 76.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.956583mm - rot = 0.000000 - y = 2.641992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 4.750583mm - rot = 0.000000 - y = 2.641992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 4.597792mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.686192mm - } - ha:line.10 { - clearance = 0.0 - y2 = 5.156592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 1.143783mm - ha:flags { - } - y1 = 4.597792mm - } - ha:line.13 { - clearance = 0.0 - y2 = 5.156592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.143783mm - x2 = 6.198383mm - ha:flags { - } - y1 = 5.156592mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 6.198383mm - x2 = 6.198383mm - ha:flags { - } - y1 = 5.156592mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 6.198383mm - x2 = 1.143783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.686192mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.143783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.706383mm - y = 2.641992mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 2.641992mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 3.353583mm - x2 = 3.353583mm - ha:flags { - } - y1 = 2.641992mm - } - ha:line.30 { - clearance = 0.0 - y2 = 2.641992mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 3.353583mm - x2 = 3.353583mm - ha:flags { - } - y1 = 2.641992mm - } - ha:line.33 { - clearance = 0.0 - y2 = 2.641992mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 3.353583mm - x2 = 4.353583mm - ha:flags { - } - y1 = 2.641992mm - } - ha:line.36 { - clearance = 0.0 - y2 = 3.641992mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 3.353583mm - x2 = 3.353583mm - ha:flags { - } - y1 = 2.641992mm - } - } - ha:combining { - } - } - } - } - uid = z+x6iElAGsr55qcSOkgAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/SOD110.fp =================================================================== --- trunk/pcblib/smd/SOD110.fp (revision 34911) +++ trunk/pcblib/smd/SOD110.fp (nonexistent) @@ -1,283 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = SOD110 SMT diode (pin 1 is cathode) - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 23.0mil - -38.0mil - -23.0mil - -38.0mil - -23.0mil - 38.0mil - 23.0mil - 38.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 26.0mil - -41.0mil - -26.0mil - -41.0mil - -26.0mil - 41.0mil - 26.0mil - 41.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 23.0mil - -38.0mil - -23.0mil - -38.0mil - -23.0mil - 38.0mil - 23.0mil - 38.0mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.372383mm - rot = 0.000000 - y = 1.371992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 2.845583mm - rot = 0.000000 - y = 1.371992mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 2.337192mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.406792mm - } - ha:line.10 { - clearance = 0.0 - y2 = 2.616592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.838983mm - ha:flags { - } - y1 = 2.337192mm - } - ha:line.13 { - clearance = 0.0 - y2 = 2.616592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.838983mm - x2 = 3.709183mm - ha:flags { - } - y1 = 2.616592mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 3.709183mm - x2 = 3.709183mm - ha:flags { - } - y1 = 2.616592mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 3.709183mm - x2 = 0.838983mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.406792mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.838983mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 4.217183mm - y = 1.371992mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 1.371992mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 2.108983mm - x2 = 2.108983mm - ha:flags { - } - y1 = 1.371992mm - } - ha:line.30 { - clearance = 0.0 - y2 = 1.371992mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 2.108983mm - x2 = 2.108983mm - ha:flags { - } - y1 = 1.371992mm - } - ha:line.33 { - clearance = 0.0 - y2 = 1.371992mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 2.108983mm - x2 = 3.108983mm - ha:flags { - } - y1 = 1.371992mm - } - ha:line.36 { - clearance = 0.0 - y2 = 2.371992mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 2.108983mm - x2 = 2.108983mm - ha:flags { - } - y1 = 1.371992mm - } - } - ha:combining { - } - } - } - } - uid = GrzapLkK/Y8pdEkIr7EAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/smd/TANT_D.fp =================================================================== --- trunk/pcblib/smd/TANT_D.fp (revision 34911) +++ trunk/pcblib/smd/TANT_D.fp (nonexistent) @@ -1,285 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = TANT_D Tantalum SMT capacitor (pin 1 is +) - openscad = TANT.scad - openscad-param = {"D"} - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 0.0 - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 61.5mil - -117.5mil - -61.5mil - -117.5mil - -61.5mil - 117.5mil - 61.5mil - 117.5mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 1.638299mm - -3.060699mm - -1.638299mm - -3.060699mm - -1.638299mm - 3.060699mm - 1.638299mm - 3.060699mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - 61.5mil - -117.5mil - -61.5mil - -117.5mil - -61.5mil - 117.5mil - 61.5mil - 117.5mil - } - ha:layer_mask { - top = 1 - paste = 1 - } - ha:combining { - auto = 1 - } - } - } - hbottom = 0 - hplated = 0 - } - } - li:objects { - ha:padstack_ref.25 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 2.896383mm - rot = 0.000000 - y = 3.937392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.26 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 0 - xmirror = 0 - x = 8.738383mm - rot = 0.000000 - y = 3.937392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 6.909192mm - thickness = 20.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.965592mm - } - ha:line.10 { - clearance = 0.0 - y2 = 7.747392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.254783mm - x2 = 1.804183mm - ha:flags { - } - y1 = 6.909192mm - } - ha:line.13 { - clearance = 0.0 - y2 = 7.747392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.804183mm - x2 = 11.125983mm - ha:flags { - } - y1 = 7.747392mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 11.125983mm - x2 = 11.125983mm - ha:flags { - } - y1 = 7.747392mm - } - ha:line.19 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 11.125983mm - x2 = 1.804183mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.22 { - clearance = 0.0 - y2 = 0.965592mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.804183mm - x2 = 0.254783mm - ha:flags { - } - y1 = 0.127392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 11.633983mm - y = 3.937392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.27 { - clearance = 0.0 - y2 = 3.937392mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 5.817383mm - x2 = 5.817383mm - ha:flags { - } - y1 = 3.937392mm - } - ha:line.30 { - clearance = 0.0 - y2 = 3.937392mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 5.817383mm - x2 = 5.817383mm - ha:flags { - } - y1 = 3.937392mm - } - ha:line.33 { - clearance = 0.0 - y2 = 3.937392mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 5.817383mm - x2 = 6.817383mm - ha:flags { - } - y1 = 3.937392mm - } - ha:line.36 { - clearance = 0.0 - y2 = 4.937392mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 5.817383mm - x2 = 5.817383mm - ha:flags { - } - y1 = 3.937392mm - } - } - ha:combining { - } - } - } - } - uid = aZrmxsPqy0XUIP+9J8kAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/parametric/plcc =================================================================== --- trunk/pcblib/parametric/plcc (revision 34911) +++ trunk/pcblib/parametric/plcc (nonexistent) @@ -1,29 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP - -#@@example plcc(20) - -#@@purpose Generate PLCC packages -#@@desc Generate square PLCC packages - a simplified frontend to qf() - -#@@desc only the number of pins is really needed for a square PLCC footprint! -#@@desc NOTE: some of the qf() parameters can be also used; PLCC32 is non-square, and can not be properly generated using this generator. - -#@@params pins,size,pitch,cpad_size - -#@@param:pins total number of pins (leads); must be divisible by 4 - -#@@param:size a single integer N or NxN or NxNxH; outmost dimensions (width or height of the package, leads included) in mil -#@@optional:size -#@@default:size calculated from total number of pins and pitch - -#@@param:pitch lead pitch (distance between the centerline of two adjacent leads), in mil; must be 50 for now -#@@optional:pitch -#@@default:pitch 50mil - -#@@param:cpad_size width (and height) of the central pad, in mil -#@@optional:cpad_size -#@@default:cpad_size empty, there's no central pad - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/plcc.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/plcc ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/so =================================================================== --- trunk/pcblib/parametric/so (revision 34911) +++ trunk/pcblib/parametric/so (nonexistent) @@ -1,40 +0,0 @@ -#!/bin/sh - -#@@example so(14) - -#@@purpose Generate SO and SO-like packages. - -#@@desc Generate SO packages with variable number of pins and -#@@desc row spacing -#@@params n, row_spacing, pad_spacing - -#@@param:n number of pins - -#@@param:row_spacing spacing between the two rows of pads: distance between the end of the first and last pins -#@@dim:row_spacing -#@@optional:row_spacing -#@@default:row_spacing 250 mil - - -#@@param:pad_spacing spacing between the centerline of two pads -#@@dim:pad_spacing -#@@optional:pad_spacing -#@@default:pad_spacing 50 mil - - -#@@param:ext_bloat how much longer the pad should extend outwards from the end-point of the pin -#@@dim:ext_bloat -#@@optional:ext_bloat -#@@default:ext_bloat 10 mil - -#@@param:int_bloat how much longer the pad should extend inwards from the end-point of the pin -#@@dim:int_bloat -#@@optional:int_bloat -#@@default:int_bloat 55 mil - -#@@include common_subc.awk - -#@@over@ignore::pin_ - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/so ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/qsop =================================================================== --- trunk/pcblib/parametric/qsop (revision 34911) +++ trunk/pcblib/parametric/qsop (nonexistent) @@ -1,33 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), QSOP - -#@@example qsop(14) - -#@@purpose Generate QSOP packages. - -#@@desc Generate QSOP packages with variable number of pins and -#@@desc row spacing - -#@@include so -#@@include common_subc.awk - -#@@over@default:pad_spacing 25 mil -#@@over@default:row_spacing 213 mil -#@@over@default:int_vloat 22 mil -#@@over@default:ext_bloat 23 mil -#@@over@default:pad_thickness 16 mil - -defaults="" -defaults="$defaults?pad_spacing=25mil," -defaults="$defaults?row_spacing=213mil," -defaults="$defaults?int_bloat=22mil," -defaults="$defaults?ext_bloat=23mil," -defaults="$defaults?rarc=25," -defaults="$defaults?silk_ext_x=18," -defaults="$defaults?silk_ext_y=22," -defaults="$defaults?pad_thickness=16mil" - - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/qsop ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/alf.awk =================================================================== --- trunk/pcblib/parametric/alf.awk (revision 34911) +++ trunk/pcblib/parametric/alf.awk (nonexistent) @@ -1,71 +0,0 @@ -BEGIN { - base_unit_mm = 0 - - help_auto() - set_arg(P, "?aspect", 6) - set_arg(P, "?type", "normal") - - proc_args(P, "spacing,type,dia,aspect", "spacing") - - spacing = parse_dim(P["spacing"]) - dia = either(parse_dim(P["dia"]), spacing/6) - aspect = P["aspect"] - - offs_x = +spacing/2 - - subc_begin("acy" P["spacing"], "D1", 2.2*spacing/3-offs_x,-mil(50)) - - proto_s = subc_proto_create_pin_square() - proto_r = subc_proto_create_pin_round() - - subc_pstk(proto_s, -spacing/2, 0, 0, 1) - subc_pstk(proto_r, +spacing/2, 0, 0, 2) - - dimension(-spacing/2, 0, +spacing/2, 0, dia*4, "spacing") - -# pins - subc_line("top-silk", -spacing/2, 0, -spacing/aspect, 0) - subc_line("top-silk", +spacing/aspect, 0, +spacing/2, 0) - -# triangle - subc_line("top-silk", +spacing/aspect, -dia, +spacing/aspect, +dia) - subc_line("top-silk", +spacing/aspect, -dia, -spacing/aspect, 0) - subc_line("top-silk", +spacing/aspect, +dia, -spacing/aspect, 0) - - dimension(+spacing/aspect, -dia, +spacing/aspect, dia, "@" spacing*1.2 ";0", "dia") - - -# front cross line with decoration - r = dia*0.3 - if (P["type"] == "normal") { - subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) - } - else if (P["type"] == "zener") { - subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) - subc_line("top-silk", -spacing/aspect, +dia, -spacing/aspect-r, +dia) - subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect+r, -dia) - } - else if (P["type"] == "tunnel") { - subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) - subc_line("top-silk", -spacing/aspect, +dia, -spacing/aspect+r, +dia) - subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect+r, -dia) - } - else if (P["type"] == "varactor") { - subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) - subc_line("top-silk", -spacing/aspect-r, -dia, -spacing/aspect-r, +dia) - } - else if (P["type"] == "schottky") { - cx = -spacing/aspect + r - cy = -(dia-r) - subc_line("top-silk", -spacing/aspect, -(dia-r), -spacing/aspect, +dia-r) - subc_arc("top-silk", cx, cy, r, 0, -180) - cx = -spacing/aspect - r - cy = +(dia-r) - subc_arc("top-silk", cx, cy, r, 0, +180) - } - else if ((P["type"] != "") && (P["type"] != "none")) { - error("Invalid type") - } - - subc_end() -} Index: trunk/pcblib/parametric/ssop =================================================================== --- trunk/pcblib/parametric/ssop (revision 34911) +++ trunk/pcblib/parametric/ssop (nonexistent) @@ -1,33 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP - -#@@example ssop(14) - -#@@purpose Generate SSOP packages. - -#@@desc Generate SSOP packages with variable number of pins and -#@@desc row spacing - -#@@include so -#@@include common_subc.awk - -#@@over@default:pad_spacing 0.65 mm -#@@over@default:row_spacing 7.8 mm -#@@over@default:int_bloat 0.5 mm -#@@over@default:ext_bloat 0.13 mm -#@@over@default:pad_thickness 0.45 mm - -defaults="" -defaults="$defaults?pad_spacing=0.65mm," -defaults="$defaults?row_spacing=7.8mm," -defaults="$defaults?int_bloat=0.5mm," -defaults="$defaults?ext_bloat=0.13mm," -defaults="$defaults?rarc=25," -defaults="$defaults?silk_ext_x=18," -defaults="$defaults?silk_ext_y=22," -defaults="$defaults?pad_thickness=0.45mm" - - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/ssop ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/qfn =================================================================== --- trunk/pcblib/parametric/qfn (revision 34911) +++ trunk/pcblib/parametric/qfn (nonexistent) @@ -1,24 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP - -#@@example qfn(16,3x3,0.5) - -#@@purpose Generate QFN packages -#@@desc Generate QFN packages - a simplified frontend to qf() - -#@@desc look up 3..4 data in the datasheet and get a regular QFN footprint! -#@@desc Should work for QFN, TQFN, etc. -#@@desc NOTE: some of the qf() parameters can be also used. - -#@@params pins,size,pitch,cpad_size - -#@@param:pins total number of pins (leads); must be divisible by 4 -#@@param:size a single integer N or NxN or NxNxH; the pad spacing dimension (outer dimension, lead-to-lead) in mm -#@@param:pitch lead pitch (distance between the centerline of two adjacent leads), in mm; must be one of 0.4, 0.5, 0.65 - -#@@param:cpad_size width (and height) of the central pad, in mm -#@@optional:cpad_size -#@@default:cpad_size empty, there's no central pad - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/qfn.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/qfn ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/common_subc.awk =================================================================== --- trunk/pcblib/parametric/common_subc.awk (revision 34911) +++ trunk/pcblib/parametric/common_subc.awk (nonexistent) @@ -1,1205 +0,0 @@ -#@@param:pin_ringdia pin's copper ring (annulus) outer diameter (in mil by default, mm suffix can be used) -#@@optional:pin_ringdia -#@@dim:pin_ringdia - -#@@param:pin_clearance pin's copper clearance diameter (in mil by default, mm suffix can be used) -#@@optional:pin_clearance -#@@dim:pin_clearance - -#@@param:pin_mask pin's solder mask diameter (in mil by default, mm suffix can be used) -#@@optional:pin_mask -#@@dim:pin_mask - -#@@param:pin_mask_offs how much bigger (+) or smaller (-) the mask opening should be compared to copper (in mil by default, mm suffix can be used) -#@@optional:pin_mask_offs -#@@dim:pin_mask_offs - -#@@param:pin_mask_ratio pin mask opening should be copper size * this ratio (numbers larger than 1 mean opening with a gap, 1.00 means exactly as big as the copper shape) -#@@optional:pin_mask_ratio -#@@dim:pin_mask_ratio - -#@@param:pin_drill copper pin's drill diameter (in mil by default, mm suffix can be used) -#@@optional:pin_drill -#@@dim:pin_drill - -#@@param:pad_thickness width of pads (in mil by default, mm suffix can be used) -#@@optional:pad_thickness -#@@dim:pad_thickness - -#@@param:pad_clearance copper clearance around the pad (in mil by default, mm suffix can be used) -#@@optional:pad_clearance -#@@dim:pad_clearance - -#@@param:pad_mask pin's solder mask (in mil by default, mm suffix can be used) -#@@optional:pad_mask -#@@dim:pad_mask - -#@@param:pad_mask_offs how much bigger (+) or smaller (-) the mask opening should be compared to copper (in mil by default, mm suffix can be used) -#@@optional:pad_mask_offs -#@@dim:pad_mask_offs - -#@@param:pad_mask_ratio pad mask opening should be copper size * this ratio (numbers larger than 1 mean opening with a gap, 1.00 means exactly as big as the copper shape) -#@@optional:pad_mask_ratio -#@@dim:pad_mask_ratio - -#@@param:pad_paste pad's paste line thickness (in mil by default, mm suffix can be used) -#@@optional:pad_paste -#@@dim:pad_paste - -#@@param:pad_paste_offs how much bigger (+) or smaller (-) the paste should be compared to copper (in mil by default, mm suffix can be used) -#@@optional:pad_paste_offs -#@@dim:pad_paste_offs - -#@@param:pad_paste_ratio pad paste should be copper size * this ratio (numbers smaller than 1 mean smaller paste, 1.00 means exactly as big as the copper shape) -#@@optional:pad_paste_ratio -#@@dim:pad_paste_ratio - -#@@param:line_thickness silk line thickness (in mil by default, mm suffix can be used) -#@@optional:line_thickness -#@@dim:line_thickness - -BEGIN { - q="\"" - - DEFAULT["pin_ringdia"] = mil(80) - DEFAULT["pin_ringdia", "dim"] = 1 - - DEFAULT["pin_clearance"] = mil(50) - DEFAULT["pin_clearance", "dim"] = 1 - - DEFAULT["pin_mask"] = mil(86) - DEFAULT["pin_mask", "dim"] = 1 - DEFAULT["pin_mask_offs"] = "" # use copper size - DEFAULT["pin_mask_offs", "dim"] = 1 - DEFAULT["pin_mask_ratio"] = "" # use copper size - - DEFAULT["pin_drill"] = mm(1) - DEFAULT["pin_drill", "dim"] = 1 - - DEFAULT["line_thickness"] = mil(10) - DEFAULT["line_thickness", "dim"] = 1 - - DEFAULT["pad_thickness"] = mil(20) - DEFAULT["pad_thickness", "dim"] = 1 - DEFAULT["pad_clearance"] = mil(10) - DEFAULT["pad_clearance", "dim"] = 1 - DEFAULT["pad_mask"] = mil(30) - DEFAULT["pad_mask", "dim"] = 1 - DEFAULT["pad_mask_offs"] = "" # use copper size - DEFAULT["pad_mask_offs", "dim"] = 1 - DEFAULT["pad_mask_ratio"] = "" # use copper size - DEFAULT["pad_paste"] = "" # use copper size - DEFAULT["pad_paste", "dim"] = 1 - DEFAULT["pad_paste_offs"] = "" # use copper size - DEFAULT["pad_paste_offs", "dim"] = 1 - DEFAULT["pad_paste_ratio"] = "" # use copper size - - DEFAULT["pin_flags"] = "__auto" - - s_default=1 - s_weak=2 - s_explicit=3 - - offs_x = 0 - offs_y = 0 - objid = 1 - proto_next_id = 0 - - pi=3.141592654 - - NL = "\n" - -# minuid - for(n = 32; n < 127; n++) - ORD[sprintf("%c", n)] = n - BASE64 = "ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz0123456789+/" -} - -function minuid_add(SUM, s ,n,v,c1,c2) -{ - v = length(s) - for(n = 1; n <= v; n++) - SUM[(n-1) % 20] += ORD[substr(s, n, 1)]-32 -} - -function minuid_str(SUM, s ,n) -{ - s = "Prm/" - for(n = 0; n < 20; n++) - s = s substr(BASE64, SUM[n] % 64, 1) - return s -} - -# Throw an error and exit -function error(msg) -{ - print "Error: " msg > "/dev/stderr" - exit 1 -} - -# return a if it is not empty, else return b -function either(a, b) -{ - return a != "" ? a : b -} - -# strip leading/trailing whitespaces -function strip(s) -{ - sub("^[ \t\r\n]*", "", s) - sub("[ \t\r\n]*$", "", s) - return s -} - -function lht_str(s) -{ - if (s ~ "[^A-Za-z0-9 _-]") { - gsub("}", "\\}", s) - return "{" s "}" - } - return s -} - -function unit(coord) -{ - if (coord == "") - coord = 0 - if (base_unit_mm) - return coord "mm" - return coord "mil" -} - -function subc_text(layer, x, y, str, scale, rot, flags, attributes ,s) -{ - - s = s " ha:text." (++objid) "{" NL - s = s " scale = " either(scale, 100) NL - if (attributes != "") - s = s " ha:attributes {" attributes "}" NL - s = s " x = " unit(x) NL - s = s " y = " unit(y) NL - s = s " rot = " either(rot, 0) NL - if (str == "") - str = "%a.parent.refdes%" - s = s " string = " str NL - s = s " fid = 0" NL - s = s " ha:flags {" flags "}" NL - s = s " }" NL - - LAYER[layer] = LAYER[layer] NL s -} - -function subc_line(layer, x1, y1, x2, y2, thick, clr, flags, attributes ,s) -{ - s = s " ha:line." (++objid) " {" NL - s = s " x1 = " unit(x1) NL - s = s " y1 = " unit(y1) NL - s = s " x2 = " unit(x2) NL - s = s " y2 = " unit(y2) NL - s = s " thickness = " unit(either(thick, DEFAULT["line_thickness"])) NL - s = s " clearance = " unit(either(clr, 0)) NL - if (attributes != "") - s = s " ha:attributes {" attributes "}" NL - s = s " ha:flags {" flags "}" NL - s = s " }" NL - - LAYER[layer] = LAYER[layer] NL s -} - -function subc_arc(layer, cx, cy, r, a_start, a_delta, thick, clr, flags, attributes ,s) -{ - s = s " ha:arc." (++objid) " {" NL - s = s " x = " unit(cx) NL - s = s " y = " unit(cy) NL - s = s " astart = " a_start NL - s = s " adelta = " a_delta NL - s = s " thickness = " unit(either(thick, DEFAULT["line_thickness"])) NL - s = s " clearance = " unit(either(clr, 0)) NL - s = s " width = " unit(r) NL - s = s " height = " unit(r) NL - if (attributes != "") - s = s " ha:attributes {" attributes "}" NL - s = s " ha:flags {" flags "}" NL - s = s " }" NL - - LAYER[layer] = LAYER[layer] NL s -} - -function subc_rect(layer, x1, y1, x2, y2, clearance, flags, attributes ,s) -{ - w = w/2 - h = h/2 - s = s " ha:polygon." (++objid) " {" NL - s = s " clearance=" unit(clearance) NL - s = s " li:geometry {" NL - s = s " ta:contour {" NL - s = s " { " unit(x1) "; " unit(y1) " }" NL - s = s " { " unit(x2) "; " unit(y1) " }" NL - s = s " { " unit(x2) "; " unit(y2) " }" NL - s = s " { " unit(x1) "; " unit(y2) " }" NL - s = s " }" NL - s = s " }" NL - s = s " ha:attributes {" attributes "}" NL - s = s " ha:flags {" flags "}" NL - s = s " }" NL - - LAYER[layer] = LAYER[layer] NL s -} - -# POLY[] is an array indexed between 0 to 2*N-1 for a polygon of N -# vertices, packed as x0;y0;x1;y1;x2;y2 ... xN;yN. The usual pcb-rnd -# polygon rules apply: at least 3 vertices, no self-intersection. This -# call does not make any attempt on cheking polygon validity. -function subc_poly(layer, POLY, clearance, flags, attributes ,s,n) -{ - w = w/2 - h = h/2 - s = s " ha:polygon." (++objid) " {" NL - s = s " clearance=" unit(clearance) NL - s = s " li:geometry {" NL - s = s " ta:contour {" NL - for(n = 0; (n in POLY); n += 2) - s = s " { " unit(POLY[n]) "; " unit(POLY[n+1]) " }" NL - s = s " }" NL - s = s " }" NL - s = s " ha:attributes {" attributes "}" NL - s = s " ha:flags {" flags "}" NL - s = s " }" NL - - LAYER[layer] = LAYER[layer] NL s -} - -# reset a polygon so it has no vertices -function poly_reset(POLY ,n) -{ - for(n = 0; (n in POLY); n += 2) - delete POLY[n] - POLY["len"] = 0 -} - -# append x;y to the end of a polygon's vertex list -function poly_append(POLY, x, y) -{ - POLY[POLY["len"]++] = x; - POLY[POLY["len"]++] = y; -} - -# start generating a subcircuit -function subc_begin(footprint, refdes, refdes_x, refdes_y, refdes_dir, ATTR ,a) -{ - print "li:pcb-rnd-subcircuit-v6 {" - print " ha:subc." (++objid) "{" - print " ha:attributes {" - print " footprint = " lht_str(footprint) - if (refdes != "") - print " refdes = " lht_str(refdes) - for(a in ATTR) - print " " a " = " lht_str(ATTR[a]); - print " }" - - - subc_text("top-silk", refdes_x, refdes_y, "%a.parent.refdes%", 100, text_dir, "dyntext = 1;floater=1;") - LAYER_TYPE["subc-aux"] = "top-misc-virtual" - subc_line("subc-aux", -offs_x, -offs_y, -offs_x + mm(1), -offs_y, mm(0.1), 0, "", "subc-role = x"); - subc_line("subc-aux", -offs_x, -offs_y, -offs_x, -offs_y + mm(1), mm(0.1), 0, "", "subc-role = y"); - subc_line("subc-aux", -offs_x, -offs_y, -offs_x, -offs_y, mm(0.1), 0, "", "subc-role = origin"); -} - -# generate subcircuit footers -function subc_end( layer,n,v,L,lt,UID) -{ - minuid_add(UID, tolower(gen)) - for(n in P) { - minuid_add(UID, tolower(n)) - minuid_add(UID, " " P[n]) - } - print " ha:data {" - print " li:padstack_prototypes {" - for(n = 0; n < proto_next_id; n++) { - if (PROTO_COMMENT[n] != "") - print PROTO_COMMENT[n] - print " ha:ps_proto_v6." n " {" - print PROTO[n] - print " }" - } - print " }" - -# global objects (padstack refs) - print " li:objects {" - print globals - print " }" - -# layers and layer objects - print " li:layers {" - for(layer in LAYER) { - lt = either(LAYER_TYPE[layer], layer) - v = split(lt, L, "-") - print " ha:" layer " {" - print " lid = 0" - print " ha:type {" - for(n = 1; n <= v; n++) - print " " L[n] " = 1" - print " }" - print " li:objects {" - print LAYER[layer] - print " }" - print " ha:combining {" - print " }" - print " }" - } - print " }" - print " }" - print " uid = " minuid_str(UID) - print " }" - print "}" -} - -function subc_proto_alloc() -{ - return proto_next_id++ -} - -function subc_pstk_add_hole(proto, dia, plated, htop, hbottom ,s) -{ - s = s " hdia = " unit(dia) NL - s = s " hplated = " int(plated) NL - s = s " htop = " int(htop) NL - s = s " hbottom = " int(hbottom) NL - PROTO[proto] = PROTO[proto] s - PROTO_HOLE[proto] = dia -} - -function subc_pstk_no_hole(proto ,s) -{ - s = s " hdia = 0; hplated = 0; htop = 0; hbottom = 0" NL - PROTO[proto] = PROTO[proto] s -} - -function subc_pstk_shape_layer(layer ,s,L,v,n) -{ - v = split(layer, L, "-") - s = s " ha:layer_mask {" NL - for(n = 1; n <= v; n++) - s = s " " L[n] " = 1" NL - s = s " }" NL - s = s " ha:combining {" NL - if (layer ~ "mask") - s = s " sub = 1" NL - if ((layer ~ "mask") || (layer ~ "paste")) - s = s " auto = 1" NL - s = s " }" NL - return s -} - -function subc_pstk_add_shape_circ(proto, layer, x, y, dia ,s) -{ - s = s " ha:ps_shape_v4 {" NL - s = s " clearance = 0" NL - s = s " ha:ps_circ {" NL - s = s " x = " unit(x) NL - s = s " y = " unit(y) NL - s = s " dia = " unit(dia) NL - s = s " }" NL - s = s subc_pstk_shape_layer(layer) - s = s " }" NL - PROTO[proto] = PROTO[proto] s -} - -function subc_pstk_add_shape_square(proto, layer, x, y, sx, sy ,s) -{ - sx = sx / 2 - sy = sy / 2 - s = s " ha:ps_shape_v4 {" NL - s = s " clearance = 0" NL - s = s " li:ps_poly {" NL - s = s " " unit(x - sx) ";" unit(y - sy) "; " unit(x + sx) ";" unit(y - sy) ";" NL - s = s " " unit(x + sx) ";" unit(y + sy) "; " unit(x - sx) ";" unit(y + sy) ";" NL - s = s " }" NL - s = s subc_pstk_shape_layer(layer) - s = s " }" NL - PROTO[proto] = PROTO[proto] s -} - -function subc_pstk_add_shape_square_corners(proto, layer, x1, y1, x2, y2 ,s) -{ - sx = sx / 2 - sy = sy / 2 - s = s " ha:ps_shape_v4 {" NL - s = s " clearance = 0" NL - s = s " li:ps_poly {" NL - s = s " " unit(x1) ";" unit(y1) "; " unit(x2) ";" unit(y1) ";" NL - s = s " " unit(x2) ";" unit(y2) "; " unit(x1) ";" unit(y2) ";" NL - s = s " }" NL - s = s subc_pstk_shape_layer(layer) - s = s " }" NL - PROTO[proto] = PROTO[proto] s -} - -function subc_pstk_add_shape_line(proto, layer, x1, y1, x2, y2, thick ,s) -{ - s = s " ha:ps_shape_v4 {" NL - s = s " clearance = 0" NL - s = s " ha:ps_line {" NL - s = s " x1=" unit(x1) "; y1=" unit(y1) "; x2=" unit(x2) "; y2=" unit(y2) ";" NL - s = s " thickness=" unit(thick) "; square=0" NL - s = s " }" NL - s = s subc_pstk_shape_layer(layer) - s = s " }" NL - PROTO[proto] = PROTO[proto] s -} - -# POLY[] is an array indexed between 0 to 2*N-1 for a polygon of N -# vertices, packed as x0;y0;x1;y1;x2;y2 ... xN;yN. The usual pcb-rnd -# polygon rules apply: at least 3 vertices, no self-intersection. This -# call does not make any attempt on cheking polygon validity. -function subc_pstk_add_shape_poly(proto, layer, POLY ,s,n) -{ - s = s " ha:ps_shape_v4 {" NL - s = s " clearance = 0" NL - s = s " li:ps_poly {" NL - for(n = 0; (n in POLY); n += 2) - s = s " { " unit(POLY[n]) "; " unit(POLY[n+1]) " }" NL - s = s " }" NL - s = s subc_pstk_shape_layer(layer) - s = s " }" NL - PROTO[proto] = PROTO[proto] s -} - -function subc_proto_create_pin_round(drill_dia, ring_dia, mask_dia ,proto) -{ - proto = subc_proto_alloc() - subc_pstk_add_hole(proto, either(drill_dia, DEFAULT["pin_drill"]), 1) - - PROTO_COMMENT[proto] = "# Round plated through hole " unit(ring_dia) "/" unit(drill_dia) - PROTO[proto] = PROTO[proto] " li:shape {" NL - - ring_dia = either(ring_dia, DEFAULT["pin_ringdia"]) - subc_pstk_add_shape_circ(proto, "top-copper", x, y, ring_dia) - subc_pstk_add_shape_circ(proto, "intern-copper", x, y, ring_dia) - subc_pstk_add_shape_circ(proto, "bottom-copper", x, y, ring_dia) - - mask_dia = pin_mask(ring_dia, mask_dia) - subc_pstk_add_shape_circ(proto, "top-mask", x, y, mask_dia) - subc_pstk_add_shape_circ(proto, "bottom-mask", x, y, mask_dia) - - PROTO[proto] = PROTO[proto] " }" NL - return proto -} - -function subc_proto_create_pin_square(drill_dia, ring_span, mask_span ,proto) -{ - proto = subc_proto_alloc() - subc_pstk_add_hole(proto, either(drill_dia, DEFAULT["pin_drill"]), 1) - - PROTO_COMMENT[proto] = "# Square plated through hole " unit(ring_dia) "/" unit(drill_dia) - PROTO[proto] = PROTO[proto] " li:shape {" NL - - ring_span = either(ring_span, DEFAULT["pin_ringdia"]) - subc_pstk_add_shape_square(proto, "top-copper", x, y, ring_span, ring_span) - subc_pstk_add_shape_square(proto, "intern-copper", x, y, ring_span, ring_span) - subc_pstk_add_shape_square(proto, "bottom-copper", x, y, ring_span, ring_span) - - mask_span = pin_mask(ring_span, mask_dia) - subc_pstk_add_shape_square(proto, "top-mask", x, y, mask_span, mask_span) - subc_pstk_add_shape_square(proto, "bottom-mask", x, y, mask_span, mask_span) - PROTO[proto] = PROTO[proto] " }" NL - - return proto -} - -function paste_or_mask_abs(copper, absval, offsval, ratio, prefix) -{ - if (absval != "") - return absval - if (offsval != 0) - return copper+offsval - if (ratio != 0) - return copper*ratio - if ((DEFAULT[prefix] != "") && (DEFAULT[prefix] != "-")) - return DEFAULT[prefix] - if (DEFAULT[prefix "_offs"] != "") - return copper+DEFAULT[prefix "_offs"]*2 - if (DEFAULT[prefix "_ratio"] != "") - return copper*DEFAULT[prefix "_ratio"] - return copper -} - -function pad_paste(copper, absval, offsval, ratio) -{ - return paste_or_mask_abs(copper, absval, offsval, ratio, "pad_paste") -} - -function pad_mask(copper, absval, offsval, ratio) -{ - return paste_or_mask_abs(copper, absval, offsval, ratio, "pad_mask") -} - -function pin_mask(copper, absval, offsval, ratio) -{ - return paste_or_mask_abs(copper, absval, offsval, ratio, "pin_mask") -} - -function pad_paste_offs(offsval ,copper) -{ - copper = DEFAULT["pad_thickness"] - return paste_or_mask_abs(copper, "", offsval, "", "pad_paste") - copper -} - -function pad_mask_offs(offsval ,copper) -{ - copper = DEFAULT["pad_thickness"] - return paste_or_mask_abs(copper, "", offsval, "", "pad_mask") - copper -} - - -function subc_proto_create_pad_sqline(x1, x2, thick, mask, paste ,proto,m,p) -{ - proto = subc_proto_alloc() - - thick = either(thick, DEFAULT["pad_thickness"]) - - subc_pstk_no_hole(proto) - - PROTO_COMMENT[proto] = "# Square smd pad " x2-x1 " * " thick - PROTO[proto] = PROTO[proto] " li:shape {" NL - - subc_pstk_add_shape_square_corners(proto, "top-copper", x1-thick/2, -thick/2, x2+thick/2, thick/2) - - m = (pad_mask(thick, mask)-thick)/2 - subc_pstk_add_shape_square_corners(proto, "top-mask", x1-thick/2-m, -thick/2-m, x2+thick/2+m, thick/2+m) - - p = (pad_paste(thick, paste)-thick)/2 - subc_pstk_add_shape_square_corners(proto, "top-paste", x1-thick/2-p, -thick/2-p, x2+thick/2+p, thick/2+p) - - PROTO[proto] = PROTO[proto] " }" NL - - return proto -} - -function subc_proto_create_pad_line(x1, x2, thick, mask, paste ,proto,m,p) -{ - proto = subc_proto_alloc() - - thick = either(thick, parse_dim(DEFAULT["pad_thickness"])) - - subc_pstk_no_hole(proto) - - PROTO_COMMENT[proto] = "# Square smd pad " x2-x1 " * " thick - PROTO[proto] = PROTO[proto] " li:shape {" NL - - subc_pstk_add_shape_line(proto, "top-copper", x1, 0, x2, 0, thick) - subc_pstk_add_shape_line(proto, "top-mask", x1, 0, x2, 0, pad_mask(thick, mask)) - subc_pstk_add_shape_line(proto, "top-paste", x1, 0, x2, 0, pad_paste(thick, paste)) - - PROTO[proto] = PROTO[proto] " }" NL - - return proto -} - -function subc_proto_create_pad_rect(w, h, mask_offs, paste_offs ,proto,m,p) -{ - proto = subc_proto_alloc() - - subc_pstk_no_hole(proto) - - PROTO_COMMENT[proto] = "# Square smd pad " w " * " h - PROTO[proto] = PROTO[proto] " li:shape {" NL - - w = w/2 - h = h/2 - - subc_pstk_add_shape_square_corners(proto, "top-copper", -w, -h, +w, +h) - - if (mask_offs != "none") { - m = pad_paste_offs(w, mask_offs) / 2 - subc_pstk_add_shape_square_corners(proto, "top-mask", -w-m, -h-m, +w+m, +h+m) - } - - if (paste_offs != "none") { - p = pad_paste_offs(w, paste_offs) / 2 - subc_pstk_add_shape_square_corners(proto, "top-paste", -w-p, -h-p, +w+p, +h+p) - } - - PROTO[proto] = PROTO[proto] " }" NL - - return proto -} - - -function subc_proto_create_pad_circle(dia, mask_dia, paste_dia ,proto) -{ - proto = subc_proto_alloc() - subc_pstk_no_hole(proto) - - dia = either(dia, DEFAULT["pad_dia"]) - - PROTO_COMMENT[proto] = "# Circular smd pad " unit(dia) - PROTO[proto] = PROTO[proto] " li:shape {" NL - - subc_pstk_add_shape_circ(proto, "top-copper", 0, 0, dia) - - mask_dia = either(mask_dia, DEFAULT["pad_mask_dia"]) - subc_pstk_add_shape_circ(proto, "top-mask", 0, 0, mask_dia) - - paste_dia = either(mask_dia, DEFAULT["pad_paste_dia"]) - subc_pstk_add_shape_circ(proto, "top-mask", 0, 0, paste_dia) - - PROTO[proto] = PROTO[proto] " }" NL - return proto -} - -# generate a padstack reference -function subc_pstk(proto, x, y, rot, termid, name, clearance, s) -{ - if (termid == "") - termid = ++pin_number - - s = s " ha:padstack_ref." (++objid) " {" NL - s = s " proto = " proto NL - s = s " x = " unit(x) NL - s = s " y = " unit(y) NL - s = s " rot = " rot+0 NL - s = s " smirror = 0; xmirror = 0" NL - s = s " clearance = " unit(either(clearance, (PROTO_HOLE[proto] > 0 ? DEFAULT["pin_clearance"] : DEFAULT["pad_clearance"]))/2) NL - s = s " ha:attributes {" NL - s = s " term = " termid NL - if (name != "") - s = s " name = 1" NL - s = s " }" NL - s = s " li:thermal { }" NL - s = s " ha:flags { clearline = 1; }" NL - s = s " }" NL - - globals = globals NL s -} - -# draw element pad -function subc_pad(x1, y1, x2, y2, thickness, number, flags, clearance, mask, name) -{ - print " Pad[", x1, y1, x2, y2, int(either(thickness, DEFAULT["pad_thickness"])), - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q flags q "]" -} - -# draw element pad - no thickness, but exact corner coordinates given -function subc_pad_rectangle(x1, y1, x2, y2, number, flags, clearance, mask, name, th,dx,dy,cx,cy) -{ - if (x2 < x1) { - th = x2 - x2 = x1 - x1 = th - } - if (y2 < y1) { - th = y2 - y2 = y1 - y1 = th - } - - dx = x2-x1 - dy = y2-y1 - - if (dx >= dy) { - th = dy - cy = (y1+y2)/2 - - print " Pad[", x1+th/2, cy, x2-th/2, cy, th, - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q flags q "]" - } - else { - th = dx - cx = (x1+x2)/2 - - print " Pad[", cx, y1+th/2, cx, y2-th/2, th, - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q flags q "]" - } -} - -# draw element pad circle -function subc_pad_circle(x1, y1, radius, number, clearance, mask, name) -{ - print " Pad[", x1, y1, x1, y1, int(either(radius, DEFAULT["pad_thickness"])), - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q "" q "]" -} - -function subc_arrow(layer, x1, y1, x2, y2, asize, thickness ,vx,vy,nx,ny,len,xb,yb) -{ - subc_line(layer, x1, y1, x2,y2, thickness) - - if (asize == 0) - asize = mil(20) - - vx = x2-x1 - vy = y2-y1 - len = sqrt(vx*vx+vy*vy) - if (len != 0) { - vx /= len - vy /= len - nx = vy - ny = -vx - xb = x2 - vx*asize - yb = y2 - vy*asize -# subc_line(layer, x2, y2, xb + 1000, yb + 1000) - subc_line(layer, x2, y2, xb + nx*asize/2, yb + ny*asize/2) - subc_line(layer, x2, y2, xb - nx*asize/2, yb - ny*asize/2) - subc_line(layer, xb - nx*asize/2, yb - ny*asize/2, xb + nx*asize/2, yb + ny*asize/2) - } -} - -# draw a rectangle of silk lines -# omit sides as requested in omit -# if r is non-zero, round corners - omit applies as NW, NW, SW, SE -# if omit includes "arc", corners are "rounded" with lines -function subc_rectangle(layer, x1, y1, x2, y2, omit, r, thickness ,tmp,r1,r2) -{ -# order coords for round corners - if (x1 > x2) { - tmp = x1 - x1 = x2 - x2 = tmp - } - if (y1 > y2) { - tmp = y1 - y1 = y2 - y2 = tmp - } - - if (!(omit ~ "left")) { - r1 = (omit ~ "NW") ? 0 : r - r2 = (omit ~ "SW") ? 0 : r - subc_line(layer, x1, y1+r1, x1, y2-r2, thickness) - } - if (!(omit ~ "top")) { - r1 = (omit ~ "NW") ? 0 : r - r2 = (omit ~ "NE") ? 0 : r - subc_line(layer, x1+r1, y1, x2-r2, y1, thickness) - } - if (!(omit ~ "bottom")) { - r1 = (omit ~ "SE") ? 0 : r - r2 = (omit ~ "SW") ? 0 : r - subc_line(layer, x2-r1, y2, x1+r2, y2, thickness) - } - if (!(omit ~ "right")) { - r1 = (omit ~ "SE") ? 0 : r - r2 = (omit ~ "NE") ? 0 : r - subc_line(layer, x2, y2-r1, x2, y1+r2, thickness) - } - - if (r > 0) { - if (omit ~ "arc") { - if (!(omit ~ "NW")) - subc_line(layer, x1, y1+r, x1+r, y1) - if (!(omit ~ "SW")) - subc_line(layer, x1, y2-r, x1+r, y2) - if (!(omit ~ "NE")) - subc_line(layer, x2, y1+r, x2-r, y1) - if (!(omit ~ "SE")) - subc_line(layer, x2, y2-r, x2-r, y2) - } - else { - if (!(omit ~ "NW")) - subc_arc(layer, x1+r, y1+r, r, 270, 90) - if (!(omit ~ "SW")) - subc_arc(layer, x1+r, y2-r, r, 0, 90) - if (!(omit ~ "NE")) - subc_arc(layer, x2-r, y1+r, r, 180, 90) - if (!(omit ~ "SE")) - subc_arc(layer, x2-r, y2-r, r, 90, 90) - } - } -} - -# draw a rectangle corners of silk lines, wx and wy long in x and y directions -# omit sides as requested in omit: NW, NW, SW, SE -# corners are always sharp -function subc_rectangle_corners(layer, x1, y1, x2, y2, wx, wy, omit, thickness ,tmp) -{ - if (!(omit ~ "NW")) { - subc_line(layer, x1, y1, x1+wx, y1, thickness) - subc_line(layer, x1, y1, x1, y1+wy, thickness) - } - if (!(omit ~ "NE")) { - subc_line(layer, x2-wx, y1, x2, y1, thickness) - subc_line(layer, x2, y1, x2, y1+wy, thickness) - } - if (!(omit ~ "SW")) { - subc_line(layer, x1, y2, x1+wx, y2, thickness) - subc_line(layer, x1, y2-wy, x1, y2, thickness) - } - if (!(omit ~ "SE")) { - subc_line(layer, x2-wx, y2, x2, y2, thickness) - subc_line(layer, x2, y2-wy, x2, y2, thickness) - } -} - -# convert coord given in mils to footprint units -function mil(coord) -{ - if (base_unit_mm) - return coord / 39.3701 - else - return coord -} - -# reverse mil(): converts footprint units back to mil -function rev_mil(coord) -{ - if (base_unit_mm) - return coord * 39.3701 - else - return coord -} - - -# convert coord given in mm to footprint units -function mm(coord) -{ - if (base_unit_mm) - return coord - else - return coord * 39.3701 -} - -# reverse mm(): converts footprint units back to mm -function rev_mm(coord) -{ - if (base_unit_mm) - return coord - else - return coord / 39.3701 -} - - -function set_arg_(OUT, key, value, strength) -{ - if (OUT[key, "strength"] > strength) - return - - OUT[key] = value - OUT[key, "strength"] = strength -} - -# set parameter key=value with optioal strength (s_* consts) in array OUT[] -# set only if current strength is stronger than the original value -# if key starts with a "?", use s_weak -# if key is in DEFAULT[], use DEFAULT[] instead of OUT[] -function set_arg(OUT, key, value ,strength) -{ - if (strength == "") - strength = s_explicit - if (key ~ "^[?]") { - sub("^[?]", "", key) - strength = s_weak - } - - if (key in DEFAULT) { - if (DEFAULT[key, "dim"]) - value = parse_dim_(value, 0) - set_arg_(DEFAULT, key, value, strength) - } - else - set_arg_(OUT, key, value, strength) -} - -# Process a generator argument list from arg_names. Save the result in -# array OUT. If mandatory is specified, check whether all mandatory -# parameters are specified -# Both arg_names and mandatory are comma separated list of argument names -function proc_args(OUT, arg_names, mandatory, N,A,M,v,n,key,val,pos) -{ - gsub(" ", "", arg_names) - gsub(" ", "", mandatory) - split(arg_names, N, ",") - v = split(args, A, ",") - -# fill in all named and positional arguments - pos = 1 - for(n = 1; n <= v; n++) { - A[n] = strip(A[n]) - if (A[n] == "") - continue - if (A[n] ~ "=") { -# named - key=A[n] - val=A[n] - sub("=.*", "", key) - sub("^[^=]*=", "", val) - set_arg(OUT, key, val, s_explicit) - } - else { -# positional - if (N[pos] == "") { - error("too many positional arguments at " A[n]) - } - while((N[pos] in OUT) && (N[pos, "strength"] == s_explicit)) pos++ - set_arg(OUT, N[pos], A[n], s_explicit) - pos++ - } - } - -# check whether all mandatory arguments are specified - v = split(mandatory, M, ",") - for(n = 1; n <= v; n++) { - if (!(M[n] in OUT)) { - error("missing argument " M[n] " (or positional " n ")") - exit 1 - } - } -} - -function parse_dim_(h, fallback_mil) -{ - if (h == "") - return "" - if (h ~ "mm$") { - sub("mm", "", h) - return mm(h) - } - if (h ~ "um$") { - sub("um", "", h) - return mm(h)/1000 - } - if (h ~ "nm$") { - sub("nm", "", h) - return mm(h)/1000000 - } - if (h ~ "cm$") { - sub("cm", "", h) - return mm(h)*10 - } - if (h ~ "m$") { - sub("m", "", h) - return mm(h)*1000 - } - if (h ~ "km$") { - sub("km", "", h) - return mm(h)*1000000 - } - - if (h ~ "in$") { - sub("in", "", h) - return mil(h)*1000 - } - if (h ~ "dmil$") { - sub("dmil", "", h) - return mil(h)/10 - } - if (h ~ "cmil$") { - sub("cmil", "", h) - return mil(h)/100 - } - if (h ~ "mil$") { - sub("mil", "", h) - return mil(h) - } - if (fallback_mil) - return mil(h) - else - return h -} - -# Assume h is a dimension and convert it -function parse_dim(h) -{ - return parse_dim_(h, 1) -} - -# Draw a DIP outline: useful for any rectangular package with a little -# half circle centered on the top line -# arcr: radius of the half circle -# xhalf: optional coordinate where the circle should be put -function dip_outline(layer, x1, y1, x2, y2, arcr ,xhalf) -{ - if (xhalf == "") - xhalf=(x1+x2)/2 - - subc_rectangle(layer, x1, y1, x2, y2, "top") - subc_line(layer, x1, y1, xhalf-arcr, y1) - subc_line(layer, xhalf+arcr, y1, x2, y1) - - subc_arc(layer, xhalf, y1, arcr, 0, 180) -} - -# decide whether x is true or false -# returns 1 if true -# returns 0 if false -function tobool(x) -{ - if (x == int(x)) - return (int(x) != 0) - - x = tolower(x) - return (x == "true") || (x == "yes") || (x == "on") -} - -# default pin1 mark on a box -# style: mark style, ":" separated list -# x,y: the coordinates of the origin corner (top-left) -# half: half the stepping of the pin grid - the size of the mark -# step: optional size of the external arrow or square (defaults to 2*half) -function silkmark(style, x, y, half, step, S,n,v,r) -{ - if (step == "") - step = half*2 - r = step - if (r < 5) r = 5; - - v = split(style, S, ":") - - for(n = 1; n <= v; n++) { - if (S[n] == "angled") { - subc_line("top-silk", x+half, y, x, y+half) - } - else if (S[n] == "square") { - subc_line("top-silk", x, y+step, x+2*half, y+step) - subc_line("top-silk", x+step, y, x+2*half, y+step) - } - else if ((S[n] == "external") || (S[n] == "externalx")) { - subc_line("top-silk", x, y+half, x-step+half, y+half/2) - subc_line("top-silk", x, y+half, x-step+half, y+half*1.5) - subc_line("top-silk", x-step+half, y+half/2, x-step+half, y+half*1.5) - } - else if (S[n] == "externaly") { - subc_line("top-silk", x+half, y, x-half/2+half, y-step+half) - subc_line("top-silk", x+half, y, x+half/2+half, y-step+half) - subc_line("top-silk", x-half/2+half, y-step+half, x+half/2+half, y-step+half) - } - else if (S[n] == "external45") { - subc_line("top-silk", x, y, x-half, y-half/3) - subc_line("top-silk", x, y, x-half/3, y-half) - subc_line("top-silk", x-half, y-half/3, x-half/3, y-half) - } - else if (S[n] == "arc") { - subc_arc("top-silk", x, y, r/2, 180, 270) - } - else if (S[n] == "circle") { - subc_arc("top-silk", x, y, r/2, 0, 360) - } - else if (S[n] == "dot") { - subc_arc("top-silk", x-step/2, y-step/2, r/4, 0, 360) - } - else if ((S[n] != "none") && (S[n] != "")) { - error("invalid silkmark parameter: " S[n]) - } - } -} - -function center_pad_init() -{ - cpm_width = parse_dim(P["cpm_width"]) - cpm_height = parse_dim(P["cpm_height"]) - cpm_nx = int(P["cpm_nx"]) - cpm_ny = int(P["cpm_ny"]) -} - -# draw a matrix of paste rectangles; top-left corner is x1;y1, there are nx*ny -# rectangles of w*h size. rows/cols of pads are drawn with ox and oy offset -function paste_matrix(x1, y1, nx, ny, w, h, ox, oy, flags, attrbiutes, clearance, ix,iy) -{ - for(iy = 0; iy < ny; iy++) - for(ix = 0; ix < nx; ix++) - subc_rect("top-paste", x1+ix*ox, y1+iy*oy, x1+ix*ox+w, y1+iy*oy+h, clearance, flags, attributes) -} - -function center_pad(cpadid, cpx, cpy) -{ - if ((cpad_width != "") && (cpad_height != "")) { -# center pad paste matrix - if ((cpm_nx > 0) && (cpm_ny > 0)) { - ox = (cpad_width - (cpm_nx*cpm_width)) / (cpm_nx - 1) - oy = (cpad_height - (cpm_ny*cpm_height)) / (cpm_ny - 1) - paste_matrix(cpx-cpad_width/2, xpy-cpad_height/2, cpm_nx,cpm_ny, cpm_width,cpm_height, - ox+cpm_width,oy+cpm_height, "", "termid=" cpadid ";", 0) - } - -# center pad - cpad_proto = subc_proto_create_pad_rect(cpad_width, cpad_height, cpad_mask == "" ? 0 : cpad_mask, "none") - subc_pstk(cpad_proto, cpx, cpy, 0, cpadid) - dimension(cpx-cpad_width/2, cpy-cpad_height/2, cpx+cpad_width/2, cpy-cpad_height/2, "@0;" (height * -0.6-ext_bloat), "cpad_width") - dimension(cpx+cpad_width/2, cpy-cpad_height/2, cpx+cpad_width/2, cpy+cpad_height/2, "@" (width * 0.8+ext_bloat) ";0", "cpad_height") - } - -} - -# output a dimension specification between x1;y1 and x2;y2, text distance at dist -# for a name,value pair -# if name is empty, only value is printed -# if value is empty, it's calculated -# if only name should be printed, value should be "!" -# if dist starts with a "@", it's the absolute coordinate of the center of the dim line (text base), else it's relative distance from the measured line -function dimension(x1, y1, x2, y2, dist, name, value, vx,vy) -{ - print "#dimension", x1, y1, x2, y2, dist, name, value -} - -function help_extract(SEEN, fn, dirn, OVER, IGN, WANT,tmp,key,val,i,skip) -{ - if (fn in SEEN) - return - SEEN[fn]++ - print "#@@info-gen-extract " fn - close(fn) - while((getline line < fn) > 0) { - if (line ~ "^#@@include") { - sub("^#@@include[ \t]*", "", line) - tmp = dirn "/" line - WANT[tmp]++ - } - else if (line ~ "^#@@over@ignore") { - key = line - sub("^#@@over@ignore:", "", key) - sub(" .*", "", key) - IGN[key] = 1 - } - else if (line ~ "^#@@over@") { - key = line - sub("^#@@over@", "", key) - val = "#@@" key - sub(" .*", "", key) - OVER[key] = val - } - else if (line ~ "^#@@") { - key = line - sub("^#@@", "", key) - sub(" .*", "", key) - skip = 0 - for(i in IGN) { - if (key ~ i) - skip = 1 - } - if (skip) - continue - if (key in OVER) { - print OVER[key] - OVER[key "::PRINTED"] = 1 - } - else - print line - } - } - close(fn) - for(tmp in WANT) - help_extract(SEEN, tmp, dirn, OVER, IGN) -} - -function help_print( SEEN, OVER, dirn, k) -{ - print "#@@info-generator pcblib common_subc.awk" - dirn = genfull - sub("/[^/]*$", "", dirn) - help_extract(SEEN, genfull, dirn, OVER) - for(k in OVER) { - if (!(k ~ "::PRINTED$") && !((k "::PRINTED") in OVER)) - print OVER[k] - } -} - -function help_auto() -{ - if ((args ~ "^--help") || (args ~ ",[ \t]*--help")) { - help_print() - exit(0) - } -} Index: trunk/pcblib/parametric/qfp =================================================================== --- trunk/pcblib/parametric/qfp (revision 34911) +++ trunk/pcblib/parametric/qfp (nonexistent) @@ -1,24 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP - -#@@example qfp(32,7x7,0.8) - -#@@purpose Generate QFP packages -#@@desc Generate QFP packages - a simplified frontend to qf() - -#@@desc look up 3..4 data in the datasheet and get a regular QFP footprint! -#@@desc NOTE: some of the qf() parameters can be also used. -#@@desc Should work for QFP, TQFP, LQFP, etc. - -#@@params pins,size,pitch,cpad_size - -#@@param:pins total number of pins (leads); must be divisible by 4 -#@@param:size a single integer N or NxN or NxNxH; body dimension (width or height of the plastic body) in mm -#@@param:pitch lead pitch (distance between the centerline of two adjacent leads), in mm; must be one of 0.4, 0.5, 0.65 - -#@@param:cpad_size width (and height) of the central pad, in mm -#@@optional:cpad_size -#@@default:cpad_size empty, there's no central pad - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/qfp.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/qfp ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/qf.awk =================================================================== --- trunk/pcblib/parametric/qf.awk (revision 34911) +++ trunk/pcblib/parametric/qf.awk (nonexistent) @@ -1,163 +0,0 @@ -function qf_globals(pre_args, post_args ,reqs) -{ - DEFAULT["cpad_mask", "dim"] = 1 - - if (hook_spc_conv == "") - hook_spc_conv = 1.8 - if (hook_cpad_mult == "") - hook_cpad_mult = 1 - - if (!qf_no_defaults) { - set_arg(P, "?pad_spacing", "0.5mm") - set_arg(P, "?ext_bloat", "0.37mm") - set_arg(P, "?int_bloat", "0.37mm") - set_arg(P, "?pad_thickness", "0.3mm") - set_arg(P, "?silkmark", "dot") - set_arg(P, "?line_thickness", "0.1mm") - set_arg(P, "?cpm_width", "1mm") - set_arg(P, "?cpm_height", "1mm") - set_arg(P, "?cpm_nx", "2") - set_arg(P, "?cpm_ny", "2") - } - - reqs = "nx,ny" - - if (pre_args != "") - reqs="" - - if ((post_args != "") && (!(post_args ~ "^,"))) - post_args = "," post_args - - if ((pre_args != "") && (!(pre_args ~ ",$"))) - pre_args = pre_args "," - - proc_args(P, pre_args "nx,ny,x_spacing,y_spacing,pad_spacing,ext_bloat,int_bloat,width,height,cpad_width,cpad_height,cpad_auto,cpm_nx,cpm_ny,cpm_width,cpm_height,cpad_mask,rpad_round,bodysilk,pinoffs,silkmark" post_args, reqs) - - nx = int(P["nx"]) - ny = int(P["ny"]) - - if (P["ny"] == "") - ny = nx - - if ((nx < 2) || (ny < 2)) - error("Number of pins have to be more than 2 in both directions") - - x_spacing=parse_dim(P["x_spacing"]) - y_spacing=parse_dim(P["y_spacing"]) - pad_spacing=parse_dim(P["pad_spacing"]) - pt = DEFAULT["pad_thickness"] - ext_bloat=parse_dim(P["ext_bloat"]) - pt/2 - int_bloat=parse_dim(P["int_bloat"]) - pt/2 - width=parse_dim(P["width"]) - height=parse_dim(P["height"]) - pinoffs = int(P["pinoffs"]) - - if (x_spacing == "") - x_spacing = (nx+hook_spc_conv) * pad_spacing - if (y_spacing == "") - y_spacing = (ny+hook_spc_conv) * pad_spacing - - cpad_width=parse_dim(P["cpad_width"]) - cpad_height=parse_dim(P["cpad_height"]) - - if (P["cpad_mask"] != "") - cpad_mask=parse_dim(P["cpad_mask"]) - - - if (tobool(P["cpad_auto"]) || hook_cpad_auto) { - if (cpad_width == "") - cpad_width = (x_spacing*0.85 - int_bloat*2 - pt) * hook_cpad_mult - if (cpad_height == "") - cpad_height = (y_spacing*0.85 - int_bloat*2 - pt) * hook_cpad_mult - } - - - if (width == "") - width = x_spacing - if (height == "") - height = y_spacing - - pinmax=(nx+ny)*2 - - if (!tobool(P["rpad_round"])) - rpad_round = "square" - else - rpad_round = "" - - center_pad_init() -} - -function pinnum(num) -{ - return ((num-1) + pinoffs) % (pinmax)+1 -} - -BEGIN { - base_unit_mm = 0 - - help_auto() - qf_globals() - - subc_begin("", "U1", -width/2 - mm(1), -height/2 - mm(2), 0) - - cx = (nx+1)/2 - cy = (ny+1)/2 - if (rpad_round == "square") - proto = subc_proto_create_pad_sqline(-ext_bloat, int_bloat, pad_width) - else - proto = subc_proto_create_pad_line(-ext_bloat, int_bloat, pad_width) - - for(n = 1; n <= ny; n++) { - y = (-cy + n) * pad_spacing - x1 = -x_spacing/2 - x2 = x_spacing/2 - subc_pstk(proto, x1, y, 0, pinnum(n)) - subc_pstk(proto, x2, y, 180, pinnum(nx+2*ny-n+1)) - if (n == 1) - y1 = y - if (n == 2) - dimension(x1, y1, x1, y, (ext_bloat * -3), "pad_spacing") - } - - dimension(x1, y-pt/2, x1, y+pt/2, (ext_bloat * -3), "pad_thickness") - - for(n = 1; n <= nx; n++) { - x = (-cx + n) * pad_spacing - y1 = -y_spacing/2 - y2 = y_spacing/2 - subc_pstk(proto, x, y1, 270, pinnum(nx*2+ny*2-n+1)) - subc_pstk(proto, x, y2, 90, pinnum(n+ny)) - } - - - center_pad(2*nx+2*ny+1, 0, 0) - - wx = (width - nx * pad_spacing) / 3.5 - wy = (height - ny * pad_spacing) / 3.5 - - bodysilk = P["bodysilk"] - if ((bodysilk == "corners") || (bodysilk == "")) { - subc_rectangle_corners("top-silk", -width/2, -height/2, width/2, height/2, wx, wy) - silkmark(P["silkmark"], -width/2, -height/2, (wx+wy)/3) - } - else if (bodysilk == "full") { - subc_rectangle("top-silk", -width/2, -height/2, width/2, height/2) - silkmark(P["silkmark"], -width/2, -height/2, (wx+wy)/2) - } - else if (bodysilk == "plcc") { - r = (width+height)/10 - subc_rectangle("top-silk", -width/2, -height/2, width/2, height/2, "arc,NE,SW,SE", r) - subc_line("top-silk", -width/2, -height/2+r, width/2, -height/2+r) - silkmark(P["silkmark"], 0, -height*0.2-r, height/40) - } - else if (bodysilk != "none") - error("invalid bodysilk parameter") - - dimension(-width/2, -height/2, +width/2, -height/2, "@0;" height*-0.8-ext_bloat, "width") - dimension(+width/2, -height/2, +width/2, +height/2, "@" (width * 1+ext_bloat) ";0", "height") - - dimension(-x_spacing/2, -height/2, +x_spacing/2, -height/2, "@0;" height*-1-ext_bloat, "x_spacing") - dimension(+width/2, -y_spacing/2, +width/2, +y_spacing/2, "@" (width * 1.2+ext_bloat) ";0", "y_spacing") - - subc_end() -} Index: trunk/pcblib/parametric/bga =================================================================== --- trunk/pcblib/parametric/bga (revision 34911) +++ trunk/pcblib/parametric/bga (nonexistent) @@ -1,74 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP - -#@@example bga(map=a1:a2:a3:#:b1:!:b3:#:c1:c2:!) - -#@@purpose Generate ball grid array - -#@@desc Generate a grid of circular pads for BGA chips - -#@@params nx,ny,spacing,balldia,silkmark,map,width,height,automap,automap2 - -#@@param:nx number of pins in the X direction -#@@optional:nx -#@@default:nx deduced from the map - -#@@param:ny number of pins in the Y direction -#@@optional:ny -#@@default:ny deduced from the map - -#@@param:spacing spacing between the pins -#@@dim:spacing -#@@default:spacing 0.5 mm - -#@@param:balldia diameter of a ball -#@@dim:balldia -#@@default:spacing 0.35 mm - -#@@include silkmark.help -#@@optional:silkmark -#@@default:silkmark square -#@@preview_args:silkmark 3,3 - -#@@param:map pin name map; a colon separated list of names, from left to right, rows first. If a name is empty or is a hash mark, a new row is started. If a name is a !, the given pin is missing and no pad is generated. -#@@optional:map - -#@@param:width width of the box (silk rectangle x size) -#@@dim:width -#@@optional:width -#@@default:width two columns wider than the array - -#@@param:height height of the box (silk rectangle y size) -#@@dim:height -#@@optional:height -#@@default:height two columns higher than the array - - -#@@param:automap assume a regular nx*ny array, automap (autonumber) the pins -#@@optional:automap -#@@enum:automap:none do not autonumber pins -#@@enum:automap:alnum number y rows from A..Z (then AA..AZ) from top to bottom, number x rows from 0..nx left to right -#@@default:none -#@@preview_args:automap 3,3 -#@@thumbsize:automap 3 -#@@thumbnum:automap 1 - -#@@param:automap2 change how automap behaves - multiple values separated by colon are accepted (e.g. automap2=pivot,reversex) -#@@enum:automap2:pivot swap x and y -#@@enum:automap2:reversex number x from right to left -#@@enum:automap2:reversey number y from bottom up -#@@preview_args:automap2 3,3,automap=alnum -#@@thumbsize:automap2 3 -#@@thumbnum:automap2 1 - -#@@param:alphabet the alphabet automap may use for rows; use A..Z if unspecified, else use the letters in this alphabet (in order). List letters without separator, e.g. ABCDEF -#@@preview_args:automap2 3,3,automap=alnum,alphabet=QDT -#@@thumbsize:automap2 3 -#@@thumbnum:automap2 1 - - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/bga.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/bga ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/silkmark_qf.help =================================================================== --- trunk/pcblib/parametric/silkmark_qf.help (revision 34911) +++ trunk/pcblib/parametric/silkmark_qf.help (nonexistent) @@ -1,11 +0,0 @@ -#@@param:silkmark how to mark pin 1 on the silk layer; multiple values can be listed separated with colons, e.g. "silkmark=externalx:angled"; ***NOTE***: drawn only if bodysilk is also drawn! -#@@enum:silkmark:square a rectangle around pin 1 -#@@enum:silkmark:externalx a little triangle placed outside of the box pointing in line with the first x row -#@@enum:silkmark:externaly a little triangle placed outside of the box pointing in line with the first y row -#@@enum:silkmark:external45 a little triangle placed outside of the box pointing at the corner in 45 degree -#@@enum:silkmark:external shorthand for externalx -#@@enum:silkmark:angled an angled line in the corner -#@@enum:silkmark:arc an external 270 degree arc -#@@enum:silkmark:circle a circle, 270 degrees external -#@@enum:silkmark:dot a small external dot -#@@enum:silkmark:none no mark Index: trunk/pcblib/parametric/plcc.awk =================================================================== --- trunk/pcblib/parametric/plcc.awk (revision 34911) +++ trunk/pcblib/parametric/plcc.awk (nonexistent) @@ -1,60 +0,0 @@ -function parri(A ,s,i) -{ - for(i in A) - s = s " " i - return s -} - -BEGIN { - base_unit_mm = 0 - - help_auto() - PT["50"] = "26mil" - set_arg(P, "?pitch", "50") - - proc_args(P, "pins,size,pitch,cpad_size,pad_thickness", "pins") - - pitch = P["pitch"] - sub("[.]0*$", "", pitch) - - if (!(args ~ "pad_thickness=")) { - if (!(pitch in PT)) - error("Unknown pitch (" pitch "), should be one of:" parri(PT)) - pt = PT[pitch] - } - else - pt = rev_mil(DEFAULT["pad_thickness"]) - - if (P["size"] == "") - P["size"] = int(P["pins"] * (pitch/4) + 140) - - split(P["size"], S, "x") - if (S[2] == "") - S[2] = S[1] - if (S[1] != S[2]) - error("need n*n size") - - pins = int(P["pins"]) - if (pins / 4 != int(pins / 4)) - error("number of pins must be divisible by 4") - - pins=pins/4 - - if ((pins % 2) != 1) - error("number of pins per side must be odd") - - S[1] -= 60 - S[2] -= 60 - args = args ",nx=" pins ",ny=" pins ",x_spacing=" S[1] "mil,y_spacing=" S[2] "mil,pad_spacing=" pitch "mil,pad_thickness=" pt - - args = args ",width=" S[1]-150 " mil,height=" S[2]-150 " mil" - - - if (P["cpad_size"] != "") - args = args ",cpad_width=" P["cpad_size"] "mil,cpad_height=" P["cpad_size"] "mil" - - args = args ",int_bloat=47mil,ext_bloat=47mil" - args = args ",?bodysilk=plcc,?silkmark=circle,pinoffs=" int(pins/2+0.5) - - -} Index: trunk/pcblib/parametric/so.awk =================================================================== --- trunk/pcblib/parametric/so.awk (revision 34911) +++ trunk/pcblib/parametric/so.awk (nonexistent) @@ -1,55 +0,0 @@ -BEGIN { - base_unit_mm = 0 - - help_auto() - set_arg(P, "?row_spacing", 250) - set_arg(P, "?pad_spacing", 50) - set_arg(P, "?ext_bloat", 10) - set_arg(P, "?int_bloat", 55) - - proc_args(P, "n,row_spacing,pad_spacing,ext_bloat,int_bloat", "n") - - P["n"] = int(P["n"]) - if ((P["n"] < 2) || ((P["n"] % 2) != 0)) - error("Number of pins have to be an even positive number") - - row_spacing=parse_dim(P["row_spacing"]) - pad_spacing=parse_dim(P["pad_spacing"]) - ext_bloat=parse_dim(P["ext_bloat"]) - int_bloat=parse_dim(P["int_bloat"]) - -# translate origin to the middle (int() and -0.5 rounds it for odd number of pins) - offs_x = -(row_spacing/2) - offs_y = -int((P["n"]/4-0.5) * pad_spacing) - - subc_begin(P["n"] "*" P["row_spacing"], "U1", -offs_x, mil(-100)-offs_y) - - proto = subc_proto_create_pad_sqline(-ext_bloat, int_bloat, pad_width) - - for(n = 1; n <= P["n"]/2; n++) { - y = (n-1) * pad_spacing - subc_pstk(proto, 0, y, 0, n) - subc_pstk(proto, row_spacing, y, 180, P["n"] - n + 1) - } - - silk_dist_x = either(parse_dim(P["silk_ext_x"]), pad_spacing/2) - silk_dist_y = either(parse_dim(P["silk_ext_y"]), pad_spacing/2) - rarc = either(parse_dim(P["rarc"]), pad_spacing/2) - - dip_outline("top-silk", -silk_dist_x-ext_bloat, -silk_dist_y, row_spacing + silk_dist_x+ext_bloat , (n-2) * pad_spacing + silk_dist_y, rarc) - - left_dim="@" -silk_dist_x-ext_bloat-pad_spacing ";0" - dimension(0, 0, 0, pad_spacing, left_dim, "pad_spacing") - dimension(0, 0, row_spacing, 0, (pad_spacing * 1.8), "row_spacing") - dimension(-ext_bloat, 0, 0, 0, (pad_spacing * 1.2), "ext_bloat") - dimension(row_spacing-int_bloat, 0, row_spacing, 0, (pad_spacing * 1.2), "int_bloat") - - th=DEFAULT["pad_thickness"] - y = (n-2) * pad_spacing - dimension(-ext_bloat-th/2, y, +int_bloat+th/2, y, (pad_spacing * -1.2), "") - dimension(0, y-th/2, 0, y+th/2, left_dim, "pad_thickness") - -# dimension(-silk_dist_x-ext_bloat, -silk_dist_y, row_spacing + silk_dist_x+ext_bloat, -silk_dist_y, pad_spacing*2.5, "") - - subc_end() -} Index: trunk/pcblib/parametric/qfn.awk =================================================================== --- trunk/pcblib/parametric/qfn.awk (revision 34911) +++ trunk/pcblib/parametric/qfn.awk (nonexistent) @@ -1,47 +0,0 @@ -function parri(A ,s,i) -{ - for(i in A) - s = s " " i - return s -} - -BEGIN { - help_auto() - PT["0.65"] = "0.35mm" - PT["0.5"] = "0.3mm" - PT["0.4"] = "0.2mm" - - proc_args(P, "pins,size,pitch,cpad_size,pad_thickness", "pins,size,pitch") - - pitch = P["pitch"] - sub("0*$", "", pitch) - - if (!(args ~ "pad_thickness=")) { - if (!(pitch in PT)) - error("Unknown pitch, should be one of:" parri(PT)) - pt = PT[pitch] - } - else - pt = rev_mm(DEFAULT["pad_thickness"]) "mm" - - split(P["size"], S, "x") - if (S[2] == "") - S[2] = S[1] - if (S[1] != S[2]) - error("need n*n size") - - pins = int(P["pins"]) - if (pins / 4 != int(pins / 4)) - error("number of pins must be divisible by 4") - - pins=pins/4 - - - args = args ",nx=" pins ",ny=" pins ",x_spacing=" S[1] "mm,y_spacing=" S[2] "mm,pad_spacing=" pitch "mm,pad_thickness=" pt - - if (P["cpad_size"] != "") - args = args ",cpad_width=" P["cpad_size"] "mm,cpad_height=" P["cpad_size"] "mm" - -# qf_globals("pins,size") - -} Index: trunk/pcblib/parametric/qfp.awk =================================================================== --- trunk/pcblib/parametric/qfp.awk (revision 34911) +++ trunk/pcblib/parametric/qfp.awk (nonexistent) @@ -1,52 +0,0 @@ -function parri(A ,s,i) -{ - for(i in A) - s = s " " i - return s -} - -BEGIN { - help_auto() - PT["0.8"] = "0.55mm" - PT["0.65"] = "0.35mm" - PT["0.5"] = "0.3mm" - PT["0.4"] = "0.2mm" - - proc_args(P, "pins,size,pitch,cpad_size,pad_thickness", "pins,size,pitch") - - pitch = P["pitch"] - sub("0*$", "", pitch) - - if (!(args ~ "pad_thickness=")) { - if (!(pitch in PT)) - error("Unknown pitch, should be one of:" parri(PT)) - pt = PT[pitch] - } - else - pt = rev_mm(DEFAULT["pad_thickness"]) "mm" - - split(P["size"], S, "x") - if (S[2] == "") - S[2] = S[1] - if (S[1] != S[2]) - error("need n*n size") - - pins = int(P["pins"]) - if (pins / 4 != int(pins / 4)) - error("number of pins must be divisible by 4") - - pins=pins/4 - - args = args ",width=" S[1] " mm,height=" S[2] " mm" - - S[1] += 1.45 - S[2] += 1.45 - args = args ",nx=" pins ",ny=" pins ",x_spacing=" S[1] "mm,y_spacing=" S[2] "mm,pad_spacing=" pitch "mm,pad_thickness=" pt "mm" - - - if (P["cpad_size"] != "") - args = args ",cpad_width=" P["cpad_size"] "mm,cpad_height=" P["cpad_size"] "mm" - - args = args ",int_bloat=0.5mm,ext_bloat=1.1mm" - args = args ",?bodysilk=full,?silkmark=circle" -} Index: trunk/pcblib/parametric/bga.awk =================================================================== --- trunk/pcblib/parametric/bga.awk (revision 34911) +++ trunk/pcblib/parametric/bga.awk (nonexistent) @@ -1,125 +0,0 @@ -function pinalpha(p, s) -{ - if (p >= alphabet_len) - s = pinalpha(int(p/alphabet_len)-1) - return s sprintf("%s", substr(alphabet, (p % alphabet_len)+1, 1)) -} - -function automap(algo, pivot, revx, revy ,xx,yy) -{ - if (algo == 1) { - for(y = 0; y < ny; y++) { - if (revy) - yy = ny - y - 1 - else - yy = y - for(x = 0; x < nx; x++) { - if (revx) - xx = nx - x - 1 - else - xx = x - if (pivot) - MAP[x,y] = pinalpha(xx) yy+1 - else - MAP[x,y] = pinalpha(yy) xx+1 - } - } - } -} - -BEGIN { - help_auto() - set_arg(P, "?spacing", "0.5mm") - set_arg(P, "?balldia", "0.35mm") - set_arg(P, "?silkmark", "arc") - - proc_args(P, "nx,ny,spacing,balldia,silkmark,map,width,height,automap,automap2,alphabet", "") - - step = parse_dim(P["spacing"]) - - half=step/2 - - nx = int(P["nx"]) - ny = int(P["ny"]) - - alphabet = P["alphabet"] - if (alphabet == "") - alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - alphabet_len = length(alphabet) - - if (P["map"] != "") { - v = split(P["map"], A, ":") - x = 0 - y = 0 - for(n = 1; n <= v; n++) { - if ((A[n] == "") || (A[n] == "#")) { - x = 0 - y++ - continue; - } - if (x > nx) - nx = x - if (y > ny) - ny = y - print x,y,A[n] > "/dev/stderr" - MAP[x, y] = A[n] - x++ - } - ny++; - nx++; - } - else { - if ((nx == "") || (ny == "")) - error("missing argument: need nx,ny or a map") - if (P["automap"] ~ "alnum") - automap(1, (P["automap2"] ~ "pivot"), (P["automap2"] ~ "reversex"), (P["automap2"] ~ "reversey")) - else if ((P["automap"] ~ "none") || (P["automap"] == "")) { - } - else - error("automap should be alnum or none") - } - - balldia = parse_dim(P["balldia"]) - bw = parse_dim(P["width"]) - bh = parse_dim(P["height"]) - - if (bw == "") - bw = (nx+1)*step - if (bh == "") - bh = (ny+1)*step - - xo = (nx-1)*step/2 - yo = (ny-1)*step/2 - - subc_begin(nx "*" ny, "U1", 0, -bh) - - proto = subc_proto_create_pad_circle(balldia) - - for(x = 0; x < nx; x++) { - for(y = 0; y < ny; y++) { - xx = x * step - xo - yy = y * step - yo - name = MAP[x,y] - if (name == "!") - continue - if (name == "") - name = "NC" - subc_pstk(proto, xx, yy, 0, name) - } - } - - dimension(-xo, -yo, -xo+step, -yo, bw/2, "spacing") - dimension(-xo-balldia/2, +yo, -xo+balldia/2, +yo, -bw*0.75, "balldia") - - - xx = -1 * (bw/2) - yy = -1 * (bh/2) - subc_rectangle("top-silk", xx, yy, bw/2, bh/2) - - dimension(xx, yy, bw/2, yy, bw/2, "width") - dimension(bw/2, yy, bw/2, bh/2, +bh/2, "height") - - silkmark(P["silkmark"], xx, yy, half*1.5) - - subc_end() -} Index: trunk/pcblib/parametric/acy =================================================================== --- trunk/pcblib/parametric/acy (revision 34911) +++ trunk/pcblib/parametric/acy (nonexistent) @@ -1,56 +0,0 @@ -#!/bin/sh - -#@@example acy(300) - -#@@purpose Generate axial lead through-hole component - -#@@desc Generate axial lead through-hole component with 2 pins (typical use: resistor) -#@@params spacing,type,pol,dia - -#@@param:spacing spacing between the two pins -#@@dim:spacing - -#@@param:type silk symbol type -#@@enum:type:block eu-style block resistor symbol -#@@enum:type:endcap block resistor with caps on the ends -#@@enum:type:zigzag us-style zigzag resistor symbol -#@@enum:type:line a single line (e.g. for jumper wires) -#@@enum:type:standing vertically aligned, body standing on pin 1, pin 2 bent back -#@@enum:type:coil wavy coil symbol -#@@enum:type:core wavy coil symbol with a parallel line -#@@enum:type:core2 wavy coil symbol with two parallel lines -#@@optional:type -#@@default:type block -#@@preview_args:type 300 - -#@@param:pol how to mark polarity -#@@enum:pol:none no marking -#@@enum:pol:sign + and - signs; pin 1 is + -#@@enum:pol:bar bar next to pin 1 -#@@enum:pol:dot dot next to pin 1 -#@@optional:pol -#@@default:pol none -#@@preview_args:pol 300 - -#@@param:dia body diameter - affects silk size -#@@dim:dia -#@@optional:dia -#@@default:dia spacing/6 - - -#@@param:wiper silk symbol wiper type -#@@enum:wiper:none no wiper -#@@enum:wiper:parrow perpendicular arrow, pointing inwards -#@@enum:wiper:aarrow angled arrow, pointing outwards -#@@enum:wiper:looparrow arrow starting at pin 2 looping back to point inwards on the body -#@@enum:wiper:thermistor wiper of a thermistor symbol -#@@optional:wiper -#@@default:wiper none -#@@preview_args:wiper 400 - -#@@thumbsize 2 - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/acy.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/acy ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/dip =================================================================== --- trunk/pcblib/parametric/dip (revision 34911) +++ trunk/pcblib/parametric/dip (nonexistent) @@ -1,21 +0,0 @@ -#!/bin/sh - -#@@example dip(18) - -#@@purpose Generate classic DIP packages. - -#@@desc Generate thru-hole DIP packages with variable number of pins and -#@@desc row spacing -#@@params n, spacing - -#@@param:n number of pins - -#@@param:spacing spacing between the two rows of pins -#@@dim:spacing -#@@optional:spacing -#@@default:spacing 100 mil - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/dip.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/dip ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/screw =================================================================== --- trunk/pcblib/parametric/screw (revision 34911) +++ trunk/pcblib/parametric/screw (nonexistent) @@ -1,35 +0,0 @@ -#!/bin/sh - -#@@example screw(3.2mm, 6mm, circle:hex) - -#@@purpose Generic screw. - -#@@desc Generate a "single pin" screw with optional head shapes -#@@params hole,head,shape,ring - -#@@param:hole hole diameter or name of a standard screw (e.g. M3) -#@@dim:hole - - -#@@param:head head outmost diameter (or optional head name for a standard screw: pan, button, cheese, flat-washer, internal-lock-washer) -#@@dim:head - -#@@param:ring copper ring outer diameter -#@@dim:ring -#@@optional:ring -#@@default:ring 80% of head diameter - - -#@@param:shape shape of the head drawn on silkmark; multiple values can be listed separated with colons, e.g. "shape=circle:hex" -#@@enum:shape:circle circle -#@@enum:shape:hex hexagon with straight line edges, size is from corner to corner -#@@enum:shape:tx "torx": hexagon with arced edges -#@@enum:shape:xzn "triple square" -#@@enum:shape:ph philips slot (cross) - useful together with circle -#@@enum:shape:slot a single straight line slot - useful together with circle -#@@default:shape circle -#@@preview_args:shape 3mm,6mm - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/screw.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" -v "genfull=$0" Property changes on: trunk/pcblib/parametric/screw ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/connector =================================================================== --- trunk/pcblib/parametric/connector (revision 34911) +++ trunk/pcblib/parametric/connector (nonexistent) @@ -1,53 +0,0 @@ -#!/bin/sh - -#@@example connector(2, 3, silkmark=external, spacing=100) - -#@@purpose Generate pin-array connectors (e.g. headers). - -#@@desc Generate thru-hole connectors that consits of an array of -#@@desc evenly spaced pins, a plain frame and some optional pin marks -#@@desc on the silk layer. - -#@@params nx, ny, spacing, silkmark, eshift, etrunc - -#@@param:nx number of pins in the X direction -#@@param:ny number of pins in the Y direction -#@@param:spacing spacing between the pins -#@@dim:spacing -#@@default:spacing 100 mil - -#@@include silkmark.help -#@@optional:silkmark -#@@default:silkmark square -#@@preview_args:silkmark 2,3 - -#@@param:eshift shift even rows or columns by half spacing (optional; default: don't shift) -#@@enum:eshift:x shift columns -#@@enum:eshift:y shift rows -#@@enum:eshift:none do not shift anything -#@@default:eshift none -#@@optional:eshift -#@@preview_args:eshift 2,3 - -#@@param:etrunc truncate the last pin of a shifted row or column -#@@bool:etrunc -#@@default:etrunc false -#@@optional:etrunc -#@@preview_args:etrunc 2,3,eshift=x - -#@@param:sequence pin numbering sequence -#@@enum:sequence:normal increase by y first, then by x -#@@enum:sequence:pivot increase by x first, then by y -#@@enum:sequence:zigzag "dip-style" numbering in zig-zag: number odd x rows by y ascending, even x rows by y descending -#@@preview_args:sequence 2,4 -#@@thumbsize:sequence 3 -#@@thumbnum:sequence 1 -#@@default:sequence normal -#@@optional:sequence - - - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/connector.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/connector ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/dip.awk =================================================================== --- trunk/pcblib/parametric/dip.awk (revision 34911) +++ trunk/pcblib/parametric/dip.awk (nonexistent) @@ -1,32 +0,0 @@ -BEGIN { - base_unit_mm = 0 - - help_auto() - set_arg(P, "?spacing", 300) - - proc_args(P, "n,spacing", "n") - - P["n"] = int(P["n"]) - if ((P["n"] < 2) || ((P["n"] % 2) != 0)) - error("Number of pins have to be an even positive number") - - spacing=parse_dim(P["spacing"]) - - subc_begin(P["n"] "*" P["spacing"], "U1", 0, mil(-100)) - - half = mil(50) - - pstk_s = subc_proto_create_pin_square() - pstk_r = subc_proto_create_pin_round() - - for(n = 1; n <= P["n"]/2; n++) { - subc_pstk((n == 1 ? pstk_s : pstk_r), 0, (n-1) * mil(100), 0, n) - subc_pstk(pstk_r, spacing, (n-1) * mil(100), 0, P["n"] - n + 1) - } - - dip_outline("top-silk", -half, -half, spacing + half , (n-2) * mil(100) + half, half) - - dimension(0, 0, spacing, 0, mil(100), "spacing") - - subc_end() -} Index: trunk/pcblib/parametric/rcy =================================================================== --- trunk/pcblib/parametric/rcy (revision 34911) +++ trunk/pcblib/parametric/rcy (nonexistent) @@ -1,32 +0,0 @@ -#!/bin/sh - -#@@example rcy(300,bar+) - -#@@purpose Generate radial lead through-hole component - -#@@desc Generate radial lead through-hole component with 2 pins (typical use: electrolytic caps) -#@@params spacing,pol,dia - -#@@param:spacing spacing between the two pins -#@@dim:spacing - -#@@param:pol how to mark polarity: (optional; default: sign) -#@@enum:pol:none no marking -#@@enum:pol:sign print + next to pin 1 and - next to pin 2 -#@@enum:pol:bar+ draw a bar inside the circle, around pin 2 -#@@enum:pol:bar- draw a bar inside the circle, around pin 1 -#@@enum:pol:bar same as bar+ -#@@enum:pol:bar+sign bar+ and sign combined -#@@enum:pol:bar-sign bar- and sign combined -#@@optional:pol -#@@default:pol sign -#@@preview_args:pol 300 - -#@@param:dia body diameter - affects the silk circle -#@@optional:dia -#@@default:dia spacing*2 - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/rcy.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/rcy ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/acy.awk =================================================================== --- trunk/pcblib/parametric/acy.awk (revision 34911) +++ trunk/pcblib/parametric/acy.awk (nonexistent) @@ -1,158 +0,0 @@ -function wave(type, repeat, step,x,y) -{ - step = len/repeat - for(x = sx1; x < sx2; x += step) { - if (type == 1) { - subc_arc("top-silk", x+step/2, 0, step/2, 0, -180) - } - else if (type == 2) { - y = dia - subc_line("top-silk", x, 0, x+step/4, -y) - subc_line("top-silk", x+step/4, -y, x+3*step/4, y) - subc_line("top-silk", x+3*step/4, y, x+step, 0) - - } - } -} - -BEGIN { - base_unit_mm = 0 - - help_auto() - set_arg(P, "?type", "block") - proc_args(P, "spacing,type,pol,dia", "spacing") - - spacing = parse_dim(P["spacing"]) - dia = either(parse_dim(P["dia"]), spacing/6) - -# oops, dia is a radius rather - dia=dia/2 - - offs_x = +spacing/2 - - subc_begin("acy" P["spacing"], "R1", -spacing/5, -mil(20), 0) - - proto_s = subc_proto_create_pin_square() - proto_r = subc_proto_create_pin_round() - - subc_pstk(proto_s, -spacing/2, 0, 0, 1) - subc_pstk(proto_r, +spacing/2, 0, 0, 2) - - dimension(-spacing/2, 0, +spacing/2, 0, dia*4, "spacing") - -# silk pins - if (P["type"] != "line") { - subc_line("top-silk", -spacing/2, 0, -spacing/4, 0) - subc_line("top-silk", +spacing/4, 0, +spacing/2, 0) - } - -# silk symbol - sx1 = -spacing/4 - sx2 = +spacing/4 - len = sx2-sx1 - if (P["type"] == "block") { - subc_rectangle("top-silk", sx1, -dia, sx2, +dia) - } - else if (P["type"] == "zigzag") { - wave(2, 3) - } - else if (P["type"] == "coil") { - wave(1, 4) - } - else if (P["type"] == "endcap") { - cl1 = len/9 - cl2 = len/8 - y1 = dia*1.2 - y2 = dia - rarc = dia/5 - subc_line("top-silk", sx1+cl2, y2, sx2-cl2, y2) - subc_line("top-silk", sx1+cl2, y2, sx1+cl1, y1) - subc_line("top-silk", sx2-cl2, y2, sx2-cl1, y1) - - subc_line("top-silk", sx1+cl2, -y2, sx2-cl2, -y2) - subc_line("top-silk", sx1+cl2, -y2, sx1+cl1, -y1) - subc_line("top-silk", sx2-cl2, -y2, sx2-cl1, -y1) - - subc_rectangle("top-silk", sx1, y1, sx1+cl1, -y1, "right,NE,SE", rarc) - subc_rectangle("top-silk", sx2-cl1, y1, sx2, -y1, "left,NW,SW", rarc) - } - else if (P["type"] ~ "^core") { - wave(1, 4) - nlines = P["type"] - sub("^core", "", nlines) - if (nlines == "") - nlines = 1 - - cdist = 3 * DEFAULT["line_thickness"] - y = -len/8 - for(nlines = int(nlines); nlines > 0; nlines--) { - y-=cdist - subc_line("top-silk", sx1, y, sx2, y) - } - } - else if (P["type"] == "line") { - subc_line("top-silk", -spacing/2, 0, +spacing/2, 0) - } - else if (P["type"] == "standing") { - r = dia*2 - if (r < DEFAULT["pin_ringdia"]/2*1.2) - r = DEFAULT["pin_ringdia"]/2*1.2 - subc_arc("top-silk", -spacing/2, 0, r, 0, 360) - subc_line("top-silk", -spacing/2, 0, +spacing/2, 0) - } - else { - error("Invalid type") - } - - dimension(sx2, -dia, sx2, dia, spacing/2, "dia") - -# silk wiper - if (P["wiper"] == "thermistor") { - x = len/3 - subc_line("top-silk", -4*x/4, dia*2, -2*x/4, dia*2) - subc_line("top-silk", -2*x/4, dia*2, +2*x/4, -dia*2) - } - else if (P["wiper"] == "aarrow") { - x = len/3 - subc_arrow("top-silk", -2*x/4, dia*2, +2*x/4, -dia*2-mil(30)) - } - else if (P["wiper"] == "parrow") { - subc_arrow("top-silk", 0, -dia*2-mil(30), 0, -dia) - } - else if (P["wiper"] == "looparrow") { - y = -dia*2-mil(30) - x = sx2+len/8 - subc_arrow("top-silk", 0, y, 0, -dia) - subc_line("top-silk", 0, y, x, y) - subc_line("top-silk", x, y, x, 0) - } - else if ((P["wiper"] != "none") && (P["wiper"] != "")) { - error("Invalid wiper") - } - -# silk sign - if (P["pol"] == "sign") { - size=mil(10) - - oy = size*2.2-offs_y - ox = DEFAULT["pin_ringdia"]/2+size*1.1-offs_x - subc_line("top-silk", ox-size, oy, ox+size, oy) - - ox = spacing - (DEFAULT["pin_ringdia"]/2+size*1.1)-offs_x - subc_line("top-silk", ox-size, oy, ox+size, oy) - subc_line("top-silk", ox, oy-size, ox, oy+size) - } - else if (P["pol"] == "bar") { - offs=DEFAULT["line_thickness"] - subc_rectangle("top-silk", -spacing/4-offs, -dia, -spacing/4+offs, +dia, DEFAULT["line_thickness"]*4) - } - else if (P["pol"] == "dot") { - r=2*DEFAULT["line_thickness"]/3 - subc_arc("top-silk", -spacing/4-r*3, -dia/2, r, 0, 360) - } - else if ((P["pol"] != "") && (P["pol"] != "none")) { - error("Invalid pol") - } - - subc_end() -} Index: trunk/pcblib/parametric/alf =================================================================== --- trunk/pcblib/parametric/alf (revision 34911) +++ trunk/pcblib/parametric/alf (nonexistent) @@ -1,37 +0,0 @@ -#!/bin/sh - -#@@example alf(300, schottky) - -#@@purpose Generate ALF: axial lead through-hole component for diodes - -#@@desc Generate axial lead through-hole component with 2 pin diodes -#@@params spacing,type,dia -#@@thumbsize 2 - -#@@param:spacing spacing between the two pins -#@@dim:spacing - -#@@param:type symbol type -#@@enum:type:normal -#@@enum:type:schottky -#@@enum:type:zener -#@@enum:type:tunnel -#@@enum:type:varactor -#@@optional:type -#@@default:type normal -#@@preview_args:type 300 - -#@@param:dia body diameter - affects silk symbol size -#@@dim:dia -#@@optional:dia -#@@default:dia spacing/12 - -#@@param:aspect silk symbol aspect: total width expressed as a portion of spacing -#@@optional:aspect -#@@default:aspect spacing/6 - - -#@@include common_subc.awk - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/alf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/alf ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/silkmark.help =================================================================== --- trunk/pcblib/parametric/silkmark.help (revision 34911) +++ trunk/pcblib/parametric/silkmark.help (nonexistent) @@ -1,11 +0,0 @@ -#@@param:silkmark how to mark pin 1 on the silk layer; multiple values can be listed separated with colons, e.g. "silkmark=externalx:angled" -#@@enum:silkmark:square a rectangle around pin 1 -#@@enum:silkmark:externalx a little triangle placed outside of the box pointing in line with the first x row -#@@enum:silkmark:externaly a little triangle placed outside of the box pointing in line with the first y row -#@@enum:silkmark:external45 a little triangle placed outside of the box pointing at the corner in 45 degree -#@@enum:silkmark:external shorthand for externalx -#@@enum:silkmark:angled an angled line in the corner -#@@enum:silkmark:arc an external 270 degree arc -#@@enum:silkmark:circle a circle, 270 degrees external -#@@enum:silkmark:dot a small external dot -#@@enum:silkmark:none no mark Index: trunk/pcblib/parametric/screw.awk =================================================================== --- trunk/pcblib/parametric/screw.awk (revision 34911) +++ trunk/pcblib/parametric/screw.awk (nonexistent) @@ -1,131 +0,0 @@ -function shp(r, edges, tx ,a,x,y,xl,yl,step,x1,y1,x2,y2,tx1,tx2,txs) -{ - step = 2*3.141592654/edges - if (tx == 1) { - tx1 = 0.7 - tx2 = 0.6 - txs = 5 - } - else if (tx == 2) { - tx1 = 0.85 - tx2 = 0.8 - txs = 5 - } - else if (tx == 3) { - tx1 = 0.2 - tx2 = 0.2 - txs = 3 - } - for(n = 0; n <= edges; n++) { - a += step - x = cos(a)*r - y = sin(a)*r - if (xl != "") { - if (tx) { - x1 = cos(a-(txs-1)*step/txs)*r*tx1 - y1 = sin(a-(txs-1)*step/txs)*r*tx1 - x2 = cos(a-step/txs)*r*tx1 - y2 = sin(a-step/txs)*r*tx1 - x3 = cos(a-step/2)*r*tx2 - y3 = sin(a-step/2)*r*tx2 - subc_line("top-silk", xl, yl, x1, y1) - subc_line("top-silk", x, y, x2, y2) - subc_line("top-silk", x3, y3, x1, y1) - subc_line("top-silk", x3, y3, x2, y2) - } - else - subc_line("top-silk", xl, yl, x, y) - } - xl = x - yl = y - } -} - -function round_up(num, to) -{ - if ((num/to) == int(num/to)) - return num - return int(num/to+1)*to -} - -BEGIN { - help_auto() - set_arg(P, "?shape", "circle") - proc_args(P, "hole,head,shape,ring", "hole") - - subc_begin("screw:" P["hole"] "," P["head"]"," P["shape"], "S1", 0, -mil(100), 0) - - if (P["hole"] ~ "^M") { - hole = P["hole"] - sub("^M", "", hole) - h = parse_dim(int(hole) "mm") - if ((hole ~ "tight") || (hole ~ "close.fit")) - hole = h * 1.05 - else - hole = h * 1.1 - hd = parse_dim(P["head"]) - if ((hd == 0) || (hd == "")) { - hd = P["head"] - if (hd == "button") - head = 1.9*h - else if (hd == "button") - head = 1.9*h - else if (hd == "cheese") - head = round_up(1.7*h, mm(0.5)) - else if (hd ~ "flat.washer") - head = round_up(2.1*h, mm(1)) - else if ((hd == "") || (hd == "pan") || (hd ~ "int.*.lock.washer")) - head = 2*h - else - error("Unknown standard head: " hd) - } - else - head = hd -# print hole, head > "/dev/stderr" - } - else { - hole = parse_dim(P["hole"]) - head = parse_dim(P["head"]) - } - - if (head == "") - error("need a standard screw name, e.g. M3, or a head diameter") - - if (head < hole) - error("head diameter must be larger than hole diameter") - - ring = parse_dim(P["ring"]) - - if (ring == "") - ring = head*0.8 - - - proto = subc_proto_create_pin_round(hole, ring) - subc_pstk(proto, 0, 0, 0, 1) - - - shape = ":" P["shape"] ":" - - if (shape ~ ":circle:") - subc_arc("top-silk", 0, 0, head/2, 0, 360) - - if (shape ~ ":hex:") - shp(head/2, 6, 0) - - if (shape ~ ":tx:") - shp(head/2, 6, 1) - - if (shape ~ ":xzn:") - shp(head/2, 12, 2) - - if (shape ~ ":ph:") - shp(head*0.4, 4, 3) - - if (shape ~ ":slot:") - subc_line("top-silk", -head/2, 0, head/2, 0) - - dimension(-head/2, 0, head/2, 0, head*0.7, "head") - dimension(-hole/2, 0, hole/2, 0, head*0.6, "hole") - - subc_end() -} Index: trunk/pcblib/parametric/qf =================================================================== --- trunk/pcblib/parametric/qf (revision 34911) +++ trunk/pcblib/parametric/qf (nonexistent) @@ -1,114 +0,0 @@ -#!/bin/sh - -#@@example qf(nx=4,ny=4,cpad_auto=1) - -#@@purpose Generate generic *qf* (e.g. tqfp, qfn) packages - -#@@desc Generate *qf* (e.g. tqfp, qfn) packages: smd pads around a square; this is the generic implementation, end users may want to use the specific ones, e.g. tqfp(), qfn(), etc. -#@@params nx,ny,x_spacing,y_spacing,pad_spacing,ext_bloat,int_bloat,width,height,cpad_width,cpad_height,cpad_auto,bodysilk,pinoffs,silkmark - -#@@param:nx number of pins along the horizontal sides - -#@@param:ny number of pins along the vertical sides -#@@optional:ny -#@@default:ny assume ny=nx - -#@@param:x_spacing spacing between the two vertical rows of pins -#@@dim:x_spacing -#@@optional:x_spacing -#@@default:x_spacing calculated using nx and pad_spacing - -#@@param:y_spacing spacing between the two vertical rows of pins -#@@dim:y_spacing -#@@optional:y_spacing -#@@default:y_spacing calculated using ny and pad_spacing - -#@@param:pad_spacing spacing between the centerlines of two adjacent pads (aka pitch) -#@@dim:pad_spacing -#@@optional:pad_spacing - -#@@param:ext_bloat how much longer the pad should extend outwards from the end-point of the pin -#@@dim:ext_bloat -#@@optional:ext_bloat -#@@default:ext_bloat 0.37 mm - -#@@param:int_bloat how much longer the pad should extend inwards from the end-point of the pin -#@@dim:int_bloat -#@@optional:int_bloat -#@@default:int_bloat 0.37 mm - -#@@param:width width (horizontal, x axis size) of the box drawn on silk -#@@dim:width -#@@optional:width -#@@default:width calculated from the pad row geometry - -#@@param:height height (vertical, y axis size) of the box drawn on silk -#@@dim:height -#@@optional:height -#@@default:height calculated from the pad row geometry - -#@@param:cpad_width width (horizontal, x axis size) of the central pad -#@@dim:cpad_width -#@@optional:cpad_width -#@@default:cpad_width empty, no central pad - -#@@param:cpad_height height (vertical, y axis size) of the central pad -#@@dim:cpad_height -#@@optional:cpad_height -#@@default:cpad_height empty, no central pad - -#@@param:cpad_auto when true, calculate central pad sizes automatically from the pad row geometry -#@@bool:cpad_auto -#@@optional:cpad_height -#@@default:cpad_height false, no central pad - -#@@param:cpm_nx central pad paste matrix, number of paste pads in x direction -#@@optional:cpm_nx -#@@default:cpm_nx 2 - -#@@param:cpm_ny central pad paste matrix, number of paste pads in y direction -#@@optional:cpm_ny -#@@default:cpm_ny 2 - -#@@param:cpm_width central pad paste matrix, paste pad width (dimension of each paste rectangle) -#@@dim:cpm_width -#@@optional:cpm_width -#@@default:cpm_width 1mm - -#@@param:cpm_height central pad paste matrix, paste pad height (dimension of each paste rectangle) -#@@dim:cpm_height -#@@optional:cpm_height -#@@default:cpm_height 1mm - -#@@param:cpad_mask center pad mask; if not specified, use the same gap as for the rows (pad_mask) -#@@dim:cpad_mask -#@@optional:cpad_mask - -#@@param:rpad_round when true, row pads are round -#@@bool:rpad_round -#@@optional:rpad_round -#@@default:rpad_round false, row pads are square - -#@@param:bodysilk how to draw body on the silk layer -#@@enum:bodysilk:none no drawing -#@@enum:bodysilk:corners draw the corners, silkmark is outside of the top-left corner -#@@enum:bodysilk:full draw a full rectanlge, silkmark of the top-left corner -#@@enum:bodysilk:plcc angled top-left corner, horizontal line on the top -#@@optional:bodysilk -#@@default:bodysilk corners - -#@@param:pinoffs rotate pins by this amount, CW -#@@optional:pinoffs -#@@default:pinoffs 0 - -#@@include silkmark_qf.help -#@@optional:silkmark -#@@default:silkmark square -#@@preview_args:silkmark 4,4 - -#@@default:silkmark dot -#@@include common_subc.awk - - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/qf ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/tssop =================================================================== --- trunk/pcblib/parametric/tssop (revision 34911) +++ trunk/pcblib/parametric/tssop (nonexistent) @@ -1,33 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), MSOP - -#@@example tssop(8) - -#@@purpose Generate TSSOP packages. - -#@@desc Generate TSSOP 4.4mm body packages with variable number of pins and -#@@desc row spacing - -#@@include so -#@@include common_subc.awk - -#@@over@default:pad_spacing 0.65 mm -#@@over@default:row_spacing 6.4 mm -#@@over@default:int_bloat 0.6 mm -#@@over@default:ext_bloat 0.4 mm -#@@over@default:pad_thickness 0.45 mm - -defaults="" -defaults="$defaults?pad_spacing=0.65mm," -defaults="$defaults?row_spacing=6.4mm," -defaults="$defaults?int_bloat=0.6mm," -defaults="$defaults?ext_bloat=0.4mm," -defaults="$defaults?rarc=25," -defaults="$defaults?silk_ext_x=18," -defaults="$defaults?silk_ext_y=22," -defaults="$defaults?pad_thickness=0.45mm" - - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/tssop ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/common.awk =================================================================== --- trunk/pcblib/parametric/common.awk (revision 34911) +++ trunk/pcblib/parametric/common.awk (nonexistent) @@ -1,645 +0,0 @@ -### DO NOT USE THIS FILE ### - -# This file is provided only for compatibility with old parametric footprints. -# New parametric footprints should use common_subc.awk because that uses lihata -# subcircuits instead of obsolete element format. - -#@@param:pin_ringdia pin's copper ring (annulus) outer diameter (in mil by default, mm suffix can be used) -#@@optional:pin_ringdia -#@@dim:pin_ringdia - -#@@param:pin_clearance pin's copper clearance diameter (in mil by default, mm suffix can be used) -#@@optional:pin_clearance -#@@dim:pin_clearance - -#@@param:pin_mask pin's solder mask diameter (in mil by default, mm suffix can be used) -#@@optional:pin_mask -#@@dim:pin_mask - -#@@param:pin_drill copper pin's drill diameter (in mil by default, mm suffix can be used) -#@@optional:pin_drill -#@@dim:pin_drill - -#@@param:pad_thickness width of pads (in mil by default, mm suffix can be used) -#@@optional:pad_thickness -#@@dim:pad_thickness - -#@@param:pad_clearance copper clearance around the pad (in mil by default, mm suffix can be used) -#@@optional:pad_clearance -#@@dim:pad_clearance - -#@@param:pad_mask pin's solder mask (in mil by default, mm suffix can be used) -#@@optional:pad_mask -#@@dim:pad_mask - -#@@param:line_thickness silk line thickness (in mil by default, mm suffix can be used) -#@@optional:line_thickness -#@@dim:line_thickness - -BEGIN { - q="\"" - - DEFAULT["pin_ringdia"] = 8000 - DEFAULT["pin_ringdia", "dim"] = 1 - - DEFAULT["pin_clearance"] = 5000 - DEFAULT["pin_clearance", "dim"] = 1 - - DEFAULT["pin_mask"] = 8600 - DEFAULT["pin_mask", "dim"] = 1 - - DEFAULT["pin_drill"] = 3937 - DEFAULT["pin_drill", "dim"] = 1 - - DEFAULT["line_thickness"] = 1000 - DEFAULT["line_thickness", "dim"] = 1 - - DEFAULT["pad_thickness"] = 2000 - DEFAULT["pad_thickness", "dim"] = 1 - DEFAULT["pad_clearance"] = 1000 - DEFAULT["pad_clearance", "dim"] = 1 - DEFAULT["pad_mask"] = 3000 - DEFAULT["pad_mask", "dim"] = 1 - - DEFAULT["pin_flags"] = "__auto" - - s_default=1 - s_weak=2 - s_explicit=3 - - offs_x = 0 - offs_y = 0 - - pi=3.141592654 -} - -# Throw an error and exit -function error(msg) -{ - print "Error: " msg > "/dev/stderr" - exit 1 -} - -# return a if it is not empty, else return b -function either(a, b) -{ - return a != "" ? a : b -} - -# strip leading/trailing whitespaces -function strip(s) -{ - sub("^[ \t\r\n]*", "", s) - sub("[ \t\r\n]*$", "", s) - return s -} - -# translate coordinates -function coord_x(x) { return int(x + offs_x) } -function coord_y(y) { return int(y + offs_y) } - -# generate an element header line; any argument may be empty -function element_begin(desc, name, value, cent_x, cent_y, text_x, text_y, text_dir, text_scale) -{ - if (desc == "") { - desc = gen "(" args ")" - gsub("[\r\n\t ]*[?][^,]*,[\r\n\t ]*", "", desc) - gsub("[\r\n\t]", " ", desc) - } - print "Element[" q q, q desc q, q name q, q value q, - int(either(cent_x, 0)), int(either(cent_y, 0)), - int(either(text_x, 0)), int(either(text_y, 0)), - int(either(text_dir, 0)), int(either(text_scale, 100)), q q "]" - print "(" -} - -# generate an element footer line -function element_end() -{ - print ")" -} - -# generate a pin; arguments from ringdia are optional (defaults are in global vars pin_*) -function element_pin(x, y, number, flags, ringdia, clearance, mask, drill, name) -{ - if (number == "") - number = ++pin_number - - flags = either(flags, DEFAULT["pin_flags"]) - - if (flags == "__auto") { - if (number == 1) - flags = "square" - else - flags = "" - } - - if (flags == "none") - flags = "" - - print " Pin[" coord_x(x), coord_y(y), - int(either(ringdia, DEFAULT["pin_ringdia"])), int(either(clearance, DEFAULT["pin_clearance"])), int(either(mask, DEFAULT["pin_mask"])), - int(either(drill, DEFAULT["pin_drill"])), q name q, q number q, q flags q "]" -} - -# draw element pad -function element_pad(x1, y1, x2, y2, thickness, number, flags, clearance, mask, name) -{ - print " Pad[", coord_x(x1), coord_y(y1), coord_x(x2), coord_y(y2), int(either(thickness, DEFAULT["pad_thickness"])), - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q flags q "]" -} - -# draw element pad - no thickness, but exact corner coordinates given -function element_pad_rectangle(x1, y1, x2, y2, number, flags, clearance, mask, name, th,dx,dy,cx,cy) -{ - if (x2 < x1) { - th = x2 - x2 = x1 - x1 = th - } - if (y2 < y1) { - th = y2 - y2 = y1 - y1 = th - } - - dx = x2-x1 - dy = y2-y1 - - if (dx >= dy) { - th = dy - cy = (y1+y2)/2 - - print " Pad[", coord_x(x1)+th/2, coord_y(cy), coord_x(x2)-th/2, coord_y(cy), th, - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q flags q "]" - } - else { - th = dx - cx = (x1+x2)/2 - - print " Pad[", coord_x(cx), coord_y(y1)+th/2, coord_x(cx), coord_y(y2)-th/2, th, - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q flags q "]" - } -} - -# draw a matrix of pads; top-left corner is x1;y1, there are nx*ny pads -# of w*h size. rows/cols of pads are drawn with ox and oy offset -function element_pad_matrix(x1, y1, nx, ny, w, h, ox, oy, number, flags, clearance, mask, name, ix,iy) -{ - for(iy = 0; iy < ny; iy++) - for(ix = 0; ix < nx; ix++) - element_pad_rectangle(x1+ix*ox, y1+iy*oy, x1+ix*ox+w, y1+iy*oy+h, number, flags, clearance, mask, name) -} - -# draw element pad circle -function element_pad_circle(x1, y1, radius, number, clearance, mask, name) -{ - print " Pad[", coord_x(x1), coord_y(y1), coord_x(x1), coord_y(y1), int(either(radius, DEFAULT["pad_thickness"])), - int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), - q name q, q number q, q "" q "]" -} - -# draw a line on silk; thickness is optional (default: line_thickness) -function element_line(x1, y1, x2, y2, thickness) -{ - print " ElementLine[" coord_x(x1), coord_y(y1), coord_x(x2), coord_y(y2), int(either(thickness, DEFAULT["line_thickness"])) "]" -} - -function element_arrow(x1, y1, x2, y2, asize, thickness ,vx,vy,nx,ny,len,xb,yb) -{ - element_line(x1, y1, x2,y2, thickness) - - if (asize == 0) - asize = mil(20) - - vx = x2-x1 - vy = y2-y1 - len = sqrt(vx*vx+vy*vy) - if (len != 0) { - vx /= len - vy /= len - nx = vy - ny = -vx - xb = x2 - vx*asize - yb = y2 - vy*asize -# element_line(x2, y2, xb + 1000, yb + 1000) - element_line(x2, y2, xb + nx*asize/2, yb + ny*asize/2) - element_line(x2, y2, xb - nx*asize/2, yb - ny*asize/2) - element_line(xb - nx*asize/2, yb - ny*asize/2, xb + nx*asize/2, yb + ny*asize/2) - } -} - -# draw a rectangle of silk lines -# omit sides as requested in omit -# if r is non-zero, round corners - omit applies as NW, NW, SW, SE -# if omit includes "arc", corners are "rounded" with lines -function element_rectangle(x1, y1, x2, y2, omit, r, thickness ,tmp,r1,r2) -{ -# order coords for round corners - if (x1 > x2) { - tmp = x1 - x1 = x2 - x2 = tmp - } - if (y1 > y2) { - tmp = y1 - y1 = y2 - y2 = tmp - } - - if (!(omit ~ "left")) { - r1 = (omit ~ "NW") ? 0 : r - r2 = (omit ~ "SW") ? 0 : r - element_line(x1, y1+r1, x1, y2-r2, thickness) - } - if (!(omit ~ "top")) { - r1 = (omit ~ "NW") ? 0 : r - r2 = (omit ~ "NE") ? 0 : r - element_line(x1+r1, y1, x2-r2, y1, thickness) - } - if (!(omit ~ "bottom")) { - r1 = (omit ~ "SE") ? 0 : r - r2 = (omit ~ "SW") ? 0 : r - element_line(x2-r1, y2, x1+r2, y2, thickness) - } - if (!(omit ~ "right")) { - r1 = (omit ~ "SE") ? 0 : r - r2 = (omit ~ "NE") ? 0 : r - element_line(x2, y2-r1, x2, y1+r2, thickness) - } - - if (r > 0) { - if (omit ~ "arc") { - if (!(omit ~ "NW")) - element_line(x1, y1+r, x1+r, y1) - if (!(omit ~ "SW")) - element_line(x1, y2-r, x1+r, y2) - if (!(omit ~ "NE")) - element_line(x2, y1+r, x2-r, y1) - if (!(omit ~ "SE")) - element_line(x2, y2-r, x2-r, y2) - } - else { - if (!(omit ~ "NW")) - element_arc(x1+r, y1+r, r, r, 270, 90) - if (!(omit ~ "SW")) - element_arc(x1+r, y2-r, r, r, 0, 90) - if (!(omit ~ "NE")) - element_arc(x2-r, y1+r, r, r, 180, 90) - if (!(omit ~ "SE")) - element_arc(x2-r, y2-r, r, r, 90, 90) - } - } -} - -# draw a rectangle corners of silk lines, wx and wy long in x and y directions -# omit sides as requested in omit: NW, NW, SW, SE -# corners are always sharp -function element_rectangle_corners(x1, y1, x2, y2, wx, wy, omit, thickness ,tmp) -{ - if (!(omit ~ "NW")) { - element_line(x1, y1, x1+wx, y1, thickness) - element_line(x1, y1, x1, y1+wy, thickness) - } - if (!(omit ~ "NE")) { - element_line(x2-wx, y1, x2, y1, thickness) - element_line(x2, y1, x2, y1+wy, thickness) - } - if (!(omit ~ "SW")) { - element_line(x1, y2, x1+wx, y2, thickness) - element_line(x1, y2-wy, x1, y2, thickness) - } - if (!(omit ~ "SE")) { - element_line(x2-wx, y2, x2, y2, thickness) - element_line(x2, y2-wy, x2, y2, thickness) - } -} - -# draw a line on silk; thickness is optional (default: line_thickness) -function element_arc(cx, cy, rx, ry, a_start, a_delta, thickness) -{ - print " ElementArc[" coord_x(cx), coord_y(cy), int(rx), int(ry), int(a_start), int(a_delta), int(either(thickness, DEFAULT["line_thickness"])) "]" -} - - -# convert coord given in mils to footprint units -function mil(coord) -{ - return coord * 100 -} - -# reverse mil(): converts footprint units back to mil -function rev_mil(coord) -{ - return coord/100 -} - - -# convert coord given in mm to footprint units -function mm(coord) -{ - return coord*3937 -} - -# reverse mm(): converts footprint units back to mm -function rev_mm(coord) -{ - return coord/3937 -} - - -function set_arg_(OUT, key, value, strength) -{ - if (OUT[key, "strength"] > strength) - return - - OUT[key] = value - OUT[key, "strength"] = strength -} - -# set parameter key=value with optioal strength (s_* consts) in array OUT[] -# set only if current strength is stronger than the original value -# if key starts with a "?", use s_weak -# if key is in DEFAULT[], use DEFAULT[] instead of OUT[] -function set_arg(OUT, key, value ,strength) -{ - if (strength == "") - strength = s_explicit - if (key ~ "^[?]") { - sub("^[?]", "", key) - strength = s_weak - } - - if (key in DEFAULT) { - if (DEFAULT[key, "dim"]) - value = parse_dim_(value, 0) - set_arg_(DEFAULT, key, value, strength) - } - else - set_arg_(OUT, key, value, strength) -} - -# Process a generator argument list from arg_names. Save the result in -# array OUT. If mandatory is specified, check whether all mandatory -# parameters are specified -# Both arg_names and mandatory are comma separated list of argument names -function proc_args(OUT, arg_names, mandatory, N,A,M,v,n,key,val,pos) -{ - gsub(" ", "", arg_names) - gsub(" ", "", mandatory) - split(arg_names, N, ",") - v = split(args, A, ",") - -# fill in all named and positional arguments - pos = 1 - for(n = 1; n <= v; n++) { - A[n] = strip(A[n]) - if (A[n] == "") - continue - if (A[n] ~ "=") { -# named - key=A[n] - val=A[n] - sub("=.*", "", key) - sub("^[^=]*=", "", val) - set_arg(OUT, key, val, s_explicit) - } - else { -# positional - if (N[pos] == "") { - error("too many positional arguments at " A[n]) - } - while((N[pos] in OUT) && (N[pos, "strength"] == s_explicit)) pos++ - set_arg(OUT, N[pos], A[n], s_explicit) - pos++ - } - } - -# check whether all mandatory arguments are specified - v = split(mandatory, M, ",") - for(n = 1; n <= v; n++) { - if (!(M[n] in OUT)) { - error("missing argument " M[n] " (or positional " n ")") - exit 1 - } - } -} - -function parse_dim_(h, fallback_mil) -{ - if (h == "") - return "" - if (h ~ "mm$") { - sub("mm", "", h) - return mm(h) - } - if (h ~ "um$") { - sub("um", "", h) - return mm(h)/1000 - } - if (h ~ "nm$") { - sub("nm", "", h) - return mm(h)/1000000 - } - if (h ~ "cm$") { - sub("cm", "", h) - return mm(h)*10 - } - if (h ~ "m$") { - sub("m", "", h) - return mm(h)*1000 - } - if (h ~ "km$") { - sub("km", "", h) - return mm(h)*1000000 - } - - if (h ~ "in$") { - sub("in", "", h) - return mil(h)*1000 - } - if (h ~ "dmil$") { - sub("dmil", "", h) - return mil(h)/10 - } - if (h ~ "cmil$") { - sub("cmil", "", h) - return mil(h)/100 - } - if (h ~ "mil$") { - sub("mil", "", h) - return mil(h) - } - if (fallback_mil) - return mil(h) - else - return h -} - -# Assume h is a dimension and convert it -function parse_dim(h) -{ - return parse_dim_(h, 1) -} - -# Draw a DIP outline: useful for any rectangular package with a little -# half circle centered on the top line -# arcr: radius of the half circle -# xhalf: optional coordinate where the circle should be put -function dip_outline(x1, y1, x2, y2, arcr ,xhalf) -{ - if (xhalf == "") - xhalf=(x1+x2)/2 - - element_rectangle(x1, y1, x2, y2, "top") - element_line(x1, y1, xhalf-arcr, y1) - element_line(xhalf+arcr, y1, x2, y1) - - element_arc(xhalf, y1, arcr, arcr, 0, 180) -} - -# decide whether x is true or false -# returns 1 if true -# returns 0 if false -function tobool(x) -{ - if (x == int(x)) - return (int(x) != 0) - - x = tolower(x) - return (x == "true") || (x == "yes") || (x == "on") -} - -# default pin1 mark on a box -# style: mark style, ":" separated list -# x,y: the coordinates of the origin corner (top-left) -# half: half the stepping of the pin grid - the size of the mark -# step: optional size of the external arrow or square (defaults to 2*half) -function silkmark(style, x, y, half, step, S,n,v) -{ - if (step == "") - step = half*2 - - v = split(style, S, ":") - - for(n = 1; n <= v; n++) { - if (S[n] == "angled") { - element_line(x+half, y, x, y+half) - } - else if (S[n] == "square") { - element_line(x, y+step, x+2*half, y+step) - element_line(x+step, y, x+2*half, y+step) - } - else if ((S[n] == "external") || (S[n] == "externalx")) { - element_line(x, y+half, x-step+half, y+half/2) - element_line(x, y+half, x-step+half, y+half*1.5) - element_line(x-step+half, y+half/2, x-step+half, y+half*1.5) - } - else if (S[n] == "externaly") { - element_line(x+half, y, x-half/2+half, y-step+half) - element_line(x+half, y, x+half/2+half, y-step+half) - element_line(x-half/2+half, y-step+half, x+half/2+half, y-step+half) - } - else if (S[n] == "external45") { - element_line(x, y, x-half, y-half/3) - element_line(x, y, x-half/3, y-half) - element_line(x-half, y-half/3, x-half/3, y-half) - } - else if (S[n] == "arc") { - element_arc(x, y, step/2, step/2, 180, 270) - } - else if (S[n] == "circle") { - element_arc(x, y, step/2, step/2, 0, 360) - } - else if (S[n] == "dot") { - element_arc(x-step/2, y-step/2, step/4, step/4, 0, 360) - } - else if ((S[n] != "none") && (S[n] != "")) { - error("invalid silkmark parameter: " S[n]) - } - } -} - -# output a dimension specification between x1;y1 and x2;y2, text distance at dist -# for a name,value pair -# if name is empty, only value is printed -# if value is empty, it's calculated -# if only name should be printed, value should be "!" -# if dist starts with a "@", it's the absolute coordinate of the center of the dim line (text base), else it's relative distance from the measured line -function dimension(x1, y1, x2, y2, dist, name, value, vx,vy) -{ - print "#dimension", coord_x(x1), coord_y(y1), coord_x(x2), coord_y(y2), dist, name, value -} - -function help_extract(SEEN, fn, dirn, OVER, IGN, WANT,tmp,key,val,i,skip) -{ - if (fn in SEEN) - return - SEEN[fn]++ - print "#@@info-gen-extract " fn - close(fn) - while((getline line < fn) > 0) { - if (line ~ "^#@@include") { - sub("^#@@include[ \t]*", "", line) - tmp = dirn "/" line - WANT[tmp]++ - } - else if (line ~ "^#@@over@ignore") { - key = line - sub("^#@@over@ignore:", "", key) - sub(" .*", "", key) - IGN[key] = 1 - } - else if (line ~ "^#@@over@") { - key = line - sub("^#@@over@", "", key) - val = "#@@" key - sub(" .*", "", key) - OVER[key] = val - } - else if (line ~ "^#@@") { - key = line - sub("^#@@", "", key) - sub(" .*", "", key) - skip = 0 - for(i in IGN) { - if (key ~ i) - skip = 1 - } - if (skip) - continue - if (key in OVER) { - print OVER[key] - OVER[key "::PRINTED"] = 1 - } - else - print line - } - } - close(fn) - for(tmp in WANT) - help_extract(SEEN, tmp, dirn, OVER, IGN) -} - -function help_print( SEEN, OVER, dirn, k) -{ - print "#@@info-generator pcblib common.awk" - dirn = genfull - sub("/[^/]*$", "", dirn) - help_extract(SEEN, genfull, dirn, OVER) - for(k in OVER) { - if (!(k ~ "::PRINTED$") && !((k "::PRINTED") in OVER)) - print OVER[k] - } -} - -function help_auto() -{ - if ((args ~ "^--help") || (args ~ ",[ \t]*--help")) { - help_print() - exit(0) - } -} Index: trunk/pcblib/parametric/connector.awk =================================================================== --- trunk/pcblib/parametric/connector.awk (revision 34911) +++ trunk/pcblib/parametric/connector.awk (nonexistent) @@ -1,93 +0,0 @@ -BEGIN { - base_unit_mm = 0 - - help_auto() - set_arg(P, "?spacing", 100) - set_arg(P, "?silkmark", "square") - set_arg(P, "?sequence", "normal") - - proc_args(P, "nx,ny,spacing,silkmark,eshift,etrunc", "nx,ny") - - - step = parse_dim(P["spacing"]) - - if (pin_ringdia > step*0.9) - pin_ringdia = step*0.9 - - if (pin_drill > pin_ringdia*0.9) - pin_drill = pin_ringdia*0.9 - - half=step/2 - - P["nx"] = int(P["nx"]) - P["ny"] = int(P["ny"]) - - eshift=tolower(P["eshift"]) - etrunc=tobool(P["etrunc"]) - if ((eshift != "x") && (eshift != "y") && (eshift != "") && (eshift != "none")) - error("eshift must be x or y or none (got: " eshift ")"); - - subc_begin(P["nx"] "*" P["ny"], "CONN1", 0, -step) - - proto_s = subc_proto_create_pin_square() - proto_r = subc_proto_create_pin_round() - - for(x = 0; x < P["nx"]; x++) { - if ((eshift == "x") && ((x % 2) == 1)) - yo = step/2 - else - yo = 0 - for(y = 0; y < P["ny"]; y++) { - if ((eshift == "y") && ((y % 2) == 1)) { - xo = step/2 - if ((etrunc) && (x == P["nx"]-1)) - continue - } - else { - xo = 0 - if ((etrunc) && (y == P["ny"]-1) && (yo != 0)) - continue - } - if (P["sequence"] == "normal") { - pinno++ - } - else if (P["sequence"] == "pivot") { - pinno = y * P["nx"] + x + 1 - } - else if (P["sequence"] == "zigzag") { - if (x % 2) { - pinno = (x+1) * P["ny"] - y - if ((etrunc) && (eshift == "x")) - pinno -= int(x/2)+1 - else if ((etrunc) && (eshift == "y")) - pinno += int(x/2) - } - else { - pinno = x * P["ny"] + y + 1 - if ((etrunc) && (eshift == "x")) - pinno -= x/2 - else if ((etrunc) && (eshift == "y")) - pinno += x/2-1 - } - } - subc_pstk(pinno == 1 ? proto_s : proto_r, x * step + xo, y * step + yo, 0, pinno) - } - } - - xo = 0 - yo = 0 - if (!etrunc) { - if (eshift == "y") - xo = step/2 - if (eshift == "x") - yo = step/2 - } - - subc_rectangle("top-silk", -half, -half, P["nx"] * step - half + xo, P["ny"] * step - half + yo) - - silkmark(P["silkmark"], -half, -half, half) - - dimension(0, step, step, step, step*2, "spacing") - - subc_end() -} Index: trunk/pcblib/parametric/msop =================================================================== --- trunk/pcblib/parametric/msop (revision 34911) +++ trunk/pcblib/parametric/msop (nonexistent) @@ -1,34 +0,0 @@ -#!/bin/sh - -# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), MSOP - -#@@example msop(8) - -#@@purpose Generate MSOP packages. - -#@@desc Generate MSOP packages with variable number of pins and -#@@desc row spacing - -#@@include so -#@@include common_subc.awk - -#@@over@default:pad_spacing 0.65 mm -#@@over@default:row_spacing 4.9 mm -#@@over@default:int_bloat 0.6 mm -#@@over@default:ext_bloat 0.6 mm -#@@over@default:pad_thickness 0.45 mm - - -defaults="" -defaults="$defaults?pad_spacing=0.65mm," -defaults="$defaults?row_spacing=4.9mm," -defaults="$defaults?int_bloat=0.6mm," -defaults="$defaults?ext_bloat=0.4mm," -defaults="$defaults?rarc=25," -defaults="$defaults?silk_ext_x=18," -defaults="$defaults?silk_ext_y=22," -defaults="$defaults?pad_thickness=0.45mm" - - -awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" - Property changes on: trunk/pcblib/parametric/msop ___________________________________________________________________ Deleted: svn:executable ## -1 +0,0 ## -* \ No newline at end of property Index: trunk/pcblib/parametric/rcy.awk =================================================================== --- trunk/pcblib/parametric/rcy.awk (revision 34911) +++ trunk/pcblib/parametric/rcy.awk (nonexistent) @@ -1,95 +0,0 @@ -function pol_sign( ox) -{ - size=mil(20) - - ox = dia/2+size*2 - subc_line("top-silk", ox-size, 0, ox+size, 0) - - ox = -dia/2-size*2 - subc_line("top-silk", ox-size, 0, ox+size, 0) - subc_line("top-silk", ox, -size, ox, size) -} - -BEGIN { - base_unit_mm = 0 - - help_auto() - set_arg(P, "?pol", "sign") - proc_args(P, "spacing,pol,dia", "spacing") - - spacing = parse_dim(P["spacing"]) - dia = either(parse_dim(P["dia"]), spacing*2) - - offs_x = +spacing/2 - - subc_begin("rcy" P["spacing"], "C1", -spacing/5, -mil(20), 0) - - proto_s = subc_proto_create_pin_square() - proto_r = subc_proto_create_pin_round() - - subc_pstk(proto_s, -spacing/2, 0, 0, 1) - subc_pstk(proto_r, +spacing/2, 0, 0, 2) - - dimension(-spacing/2, 0, +spacing/2, 0, dia*0.8, "spacing") - - -# silk rectangle and pins - subc_arc("top-silk", 0, 0, dia/2, 0, 360) - dimension(-dia/2, 0, +dia/2, 0, dia*-0.8, "dia") - - - if (P["pol"] == "sign") { - pol_sign() - } - else if (P["pol"] ~ "^bar") { -# determine bar side (default to -) - side=P["pol"] - sub("^bar", "", side) - if (side ~ "sign") { - pol_sign() - sub("sign", "", side) - } - if (side == "") - side = "-" - side = int(side "1") * -1 - - th = mm(1) - ystep = th/2 - r = dia/2-th/2 - xs = dia/8 - ring = DEFAULT["pin_ringdia"] - for(y = 0; y < dia/2; y+=ystep) { - x = r*r-y*y - if (x < 0) - break - x = sqrt(x) - if (x <= xs) - break - if (y > ring/2+th/2) { - subc_line("top-silk", side*xs, y, side*x, y, th) - if (y != 0) - subc_line("top-silk", side*xs, -y, side*x, -y, th) - } - else { -# keep out a rectangle around the pin - end1=spacing/2-ring - end2=spacing/2+ring - if (end1 > xs) - subc_line("top-silk", side*xs, y, side*end1, y, th) - if (end2 < x) - subc_line("top-silk", side*end2, y, side*x, y, th) - if (y != 0) { - if (end1 > xs) - subc_line("top-silk", side*xs, -y, side*end1, -y, th) - if (end2 < x) - subc_line("top-silk", side*end2, -y, side*x, -y, th) - } - } - } - } - else if ((P["pol"] != "") && (P["pol"] != "none")) { - error("Invalid pol") - } - - subc_end() -} Index: trunk/pcblib/connector/DB9M.fp =================================================================== --- trunk/pcblib/connector/DB9M.fp (revision 34911) +++ trunk/pcblib/connector/DB9M.fp (nonexistent) @@ -1,828 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.80 { - smirror = 0 - ha:attributes { - term = 11 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 2.092in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 2.092in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.092in - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.092in - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 2.032in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.032in - } - ha:line.28 { - clearance = 0.0 - y2 = 1.912in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.912in - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 1.862in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 1.862in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.862in - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.862in - } - ha:line.44 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.48 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.52 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.56 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.60 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.64 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:line.68 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.72 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.76 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 1.702in - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.81 { - clearance = 0.0 - y2 = 1.486in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.529309mm - x2 = 25.529309mm - ha:flags { - } - y1 = 1.486in - } - ha:line.84 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.87 { - clearance = 0.0 - y2 = 31.258mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.90 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 26.67mm - x2 = 25.67mm - ha:flags { - } - y1 = 1.27in - } - } - ha:combining { - } - } - } - } - uid = KO9hCrE+Bz6rQzxqYx8AAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB37M.fp =================================================================== --- trunk/pcblib/connector/DB37M.fp (revision 34911) +++ trunk/pcblib/connector/DB37M.fp (nonexistent) @@ -1,1668 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.81in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.918in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.026in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 54.2036mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.242in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.83 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.35in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.87 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.458in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.91 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 65.1764mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.95 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.674in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.99 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.782in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.103 { - smirror = 0 - ha:attributes { - term = 16 - name = 16 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.89in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.107 { - smirror = 0 - ha:attributes { - term = 17 - name = 17 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.998in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.111 { - smirror = 0 - ha:attributes { - term = 18 - name = 18 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 78.8924mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.115 { - smirror = 0 - ha:attributes { - term = 19 - name = 19 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 81.6356mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.119 { - smirror = 0 - ha:attributes { - term = 20 - name = 20 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.123 { - smirror = 0 - ha:attributes { - term = 21 - name = 21 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.127 { - smirror = 0 - ha:attributes { - term = 22 - name = 22 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.131 { - smirror = 0 - ha:attributes { - term = 23 - name = 23 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.135 { - smirror = 0 - ha:attributes { - term = 24 - name = 24 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.756in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.139 { - smirror = 0 - ha:attributes { - term = 25 - name = 25 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.864in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.143 { - smirror = 0 - ha:attributes { - term = 26 - name = 26 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.147 { - smirror = 0 - ha:attributes { - term = 27 - name = 27 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.08in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.151 { - smirror = 0 - ha:attributes { - term = 28 - name = 28 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.188in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.155 { - smirror = 0 - ha:attributes { - term = 29 - name = 29 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.296in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.159 { - smirror = 0 - ha:attributes { - term = 30 - name = 30 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 61.0616mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.163 { - smirror = 0 - ha:attributes { - term = 31 - name = 31 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.512in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.167 { - smirror = 0 - ha:attributes { - term = 32 - name = 32 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.62in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.171 { - smirror = 0 - ha:attributes { - term = 33 - name = 33 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.728in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.175 { - smirror = 0 - ha:attributes { - term = 34 - name = 34 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 72.0344mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.179 { - smirror = 0 - ha:attributes { - term = 35 - name = 35 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.944in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.183 { - smirror = 0 - ha:attributes { - term = 36 - name = 36 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 3.052in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.187 { - smirror = 0 - ha:attributes { - term = 37 - name = 37 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 3.16in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.191 { - smirror = 0 - ha:attributes { - term = 38 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.192 { - smirror = 0 - ha:attributes { - term = 39 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 3.484in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 3.604in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 3.604in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 3.604in - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 3.604in - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 3.544in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 3.544in - } - ha:line.28 { - clearance = 0.0 - y2 = 86.9696mm - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 86.9696mm - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 3.374in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 3.374in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 3.374in - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 3.374in - } - ha:line.44 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.48 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.52 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.56 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.60 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.64 { - clearance = 0.0 - y2 = 1.81in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.81in - } - ha:line.68 { - clearance = 0.0 - y2 = 1.918in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.918in - } - ha:line.72 { - clearance = 0.0 - y2 = 2.026in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.026in - } - ha:line.76 { - clearance = 0.0 - y2 = 54.2036mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 54.2036mm - } - ha:line.80 { - clearance = 0.0 - y2 = 2.242in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.242in - } - ha:line.84 { - clearance = 0.0 - y2 = 2.35in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.35in - } - ha:line.88 { - clearance = 0.0 - y2 = 2.458in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.458in - } - ha:line.92 { - clearance = 0.0 - y2 = 65.1764mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 65.1764mm - } - ha:line.96 { - clearance = 0.0 - y2 = 2.674in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.674in - } - ha:line.100 { - clearance = 0.0 - y2 = 2.782in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.782in - } - ha:line.104 { - clearance = 0.0 - y2 = 2.89in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.89in - } - ha:line.108 { - clearance = 0.0 - y2 = 2.998in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.998in - } - ha:line.112 { - clearance = 0.0 - y2 = 78.8924mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 78.8924mm - } - ha:line.116 { - clearance = 0.0 - y2 = 81.6356mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 81.6356mm - } - ha:line.120 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:line.124 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.128 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.132 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.136 { - clearance = 0.0 - y2 = 1.756in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.756in - } - ha:line.140 { - clearance = 0.0 - y2 = 1.864in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.864in - } - ha:line.144 { - clearance = 0.0 - y2 = 1.972in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.972in - } - ha:line.148 { - clearance = 0.0 - y2 = 2.08in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.08in - } - ha:line.152 { - clearance = 0.0 - y2 = 2.188in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.188in - } - ha:line.156 { - clearance = 0.0 - y2 = 2.296in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.296in - } - ha:line.160 { - clearance = 0.0 - y2 = 61.0616mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 61.0616mm - } - ha:line.164 { - clearance = 0.0 - y2 = 2.512in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.512in - } - ha:line.168 { - clearance = 0.0 - y2 = 2.62in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.62in - } - ha:line.172 { - clearance = 0.0 - y2 = 2.728in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.728in - } - ha:line.176 { - clearance = 0.0 - y2 = 72.0344mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 72.0344mm - } - ha:line.180 { - clearance = 0.0 - y2 = 2.944in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.944in - } - ha:line.184 { - clearance = 0.0 - y2 = 3.052in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 3.052in - } - ha:line.188 { - clearance = 0.0 - y2 = 3.16in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 3.16in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 81.6356mm - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.193 { - clearance = 0.0 - y2 = 2.242in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.436471mm - x2 = 25.436471mm - ha:flags { - } - y1 = 2.242in - } - ha:line.196 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.199 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 26.67mm - x2 = 27.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.202 { - clearance = 0.0 - y2 = 33.258mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - } - ha:combining { - } - } - } - } - uid = 4q1Up8irTZeVRbtKn8sAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB15F.fp =================================================================== --- trunk/pcblib/connector/DB15F.fp (revision 34911) +++ trunk/pcblib/connector/DB15F.fp (nonexistent) @@ -1,1008 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.026in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.918in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.81in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.864in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.83 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.756in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.87 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.91 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.95 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.99 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.103 { - smirror = 0 - ha:attributes { - term = 16 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.104 { - smirror = 0 - ha:attributes { - term = 17 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 2.296in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 61.3664mm - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 61.3664mm - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 61.3664mm - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 61.3664mm - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 59.8424mm - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 59.8424mm - } - ha:line.28 { - clearance = 0.0 - y2 = 2.236in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.236in - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 55.5244mm - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 55.5244mm - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 55.5244mm - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 55.5244mm - } - ha:line.44 { - clearance = 0.0 - y2 = 2.026in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.026in - } - ha:line.48 { - clearance = 0.0 - y2 = 1.918in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.918in - } - ha:line.52 { - clearance = 0.0 - y2 = 1.81in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.81in - } - ha:line.56 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.60 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.64 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.68 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.72 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.76 { - clearance = 0.0 - y2 = 1.972in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.972in - } - ha:line.80 { - clearance = 0.0 - y2 = 1.864in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.864in - } - ha:line.84 { - clearance = 0.0 - y2 = 1.756in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.756in - } - ha:line.88 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.92 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.96 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.100 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 2.026in - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.105 { - clearance = 0.0 - y2 = 1.648in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.48367mm - x2 = 25.48367mm - ha:flags { - } - y1 = 1.648in - } - ha:line.108 { - clearance = 0.0 - y2 = 2.026in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 2.026in - } - ha:line.111 { - clearance = 0.0 - y2 = 2.026in - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.056in - x2 = 25.8224mm - ha:flags { - } - y1 = 2.026in - } - ha:line.114 { - clearance = 0.0 - y2 = 50.4604mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 2.026in - } - } - ha:combining { - } - } - } - } - uid = mxLwtmLpMYT5EZjypDMAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/pwrjack.fp =================================================================== --- trunk/pcblib/connector/pwrjack.fp (revision 34911) +++ trunk/pcblib/connector/pwrjack.fp (nonexistent) @@ -1,300 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = power jack - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 2.999994mm - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 4.99999mm - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 4.99999mm - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 4.99999mm - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 5.15239mm - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 5.15239mm - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.7 { - smirror = 0 - ha:attributes { - term = 2 - } - proto = 0 - xmirror = 0 - x = 1.24016in - rot = 0.000000 - y = 35.999928mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.8 { - smirror = 0 - ha:attributes { - term = 1 - } - proto = 0 - xmirror = 0 - x = 1.24016in - rot = 0.000000 - y = 1.14173in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - ha:padstack_ref.9 { - smirror = 0 - ha:attributes { - term = 3 - } - proto = 0 - xmirror = 0 - x = 1.06299in - rot = 0.000000 - y = 1.27953in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 10.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.10 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.06299in - x2 = 1.06299in - ha:flags { - } - y1 = 21.999956mm - } - ha:line.13 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 10.0mil - ha:attributes { - } - x1 = 1.06299in - x2 = 35.999928mm - ha:flags { - } - y1 = 35.999928mm - } - ha:line.16 { - clearance = 0.0 - y2 = 21.999956mm - thickness = 10.0mil - ha:attributes { - } - x1 = 35.999928mm - x2 = 35.999928mm - ha:flags { - } - y1 = 35.999928mm - } - ha:line.19 { - clearance = 0.0 - y2 = 21.999956mm - thickness = 10.0mil - ha:attributes { - } - x1 = 35.999928mm - x2 = 1.06299in - ha:flags { - } - y1 = 21.999956mm - } - ha:line.22 { - clearance = 0.0 - y2 = 984.25mil - thickness = 10.0mil - ha:attributes { - } - x1 = 1.06299in - x2 = 35.999928mm - ha:flags { - } - y1 = 984.25mil - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 1.24016in - y = 35.999928mm - rot = 0.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.25 { - clearance = 0.0 - y2 = 32.499977mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 1.18110331in - x2 = 1.18110331in - ha:flags { - } - y1 = 32.499977mm - } - ha:line.28 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.24016in - x2 = 1.24016in - ha:flags { - } - y1 = 35.999928mm - } - ha:line.31 { - clearance = 0.0 - y2 = 34.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.24016in - x2 = 1.24016in - ha:flags { - } - y1 = 35.999928mm - } - ha:line.34 { - clearance = 0.0 - y2 = 35.999928mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.24016in - x2 = 30.500064mm - ha:flags { - } - y1 = 35.999928mm - } - } - ha:combining { - } - } - } - } - uid = N9dhMGRbIqPCtXUXD0MAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB25F.fp =================================================================== --- trunk/pcblib/connector/DB25F.fp (revision 34911) +++ trunk/pcblib/connector/DB25F.fp (nonexistent) @@ -1,1308 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 65.1764mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.458in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.35in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.242in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 54.2036mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.026in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.918in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.81in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.83 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.87 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.91 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.95 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.512in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.99 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 61.0616mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.103 { - smirror = 0 - ha:attributes { - term = 16 - name = 16 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.296in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.107 { - smirror = 0 - ha:attributes { - term = 17 - name = 17 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.188in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.111 { - smirror = 0 - ha:attributes { - term = 18 - name = 18 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.08in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.115 { - smirror = 0 - ha:attributes { - term = 19 - name = 19 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.119 { - smirror = 0 - ha:attributes { - term = 20 - name = 20 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.864in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.123 { - smirror = 0 - ha:attributes { - term = 21 - name = 21 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.756in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.127 { - smirror = 0 - ha:attributes { - term = 22 - name = 22 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.131 { - smirror = 0 - ha:attributes { - term = 23 - name = 23 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.135 { - smirror = 0 - ha:attributes { - term = 24 - name = 24 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.139 { - smirror = 0 - ha:attributes { - term = 25 - name = 25 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.143 { - smirror = 0 - ha:attributes { - term = 26 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.144 { - smirror = 0 - ha:attributes { - term = 27 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 72.0344mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 2.956in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 2.956in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.956in - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.956in - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 73.5584mm - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 73.5584mm - } - ha:line.28 { - clearance = 0.0 - y2 = 2.776in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.776in - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 2.726in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 2.726in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.726in - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.726in - } - ha:line.44 { - clearance = 0.0 - y2 = 65.1764mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 65.1764mm - } - ha:line.48 { - clearance = 0.0 - y2 = 2.458in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.458in - } - ha:line.52 { - clearance = 0.0 - y2 = 2.35in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.35in - } - ha:line.56 { - clearance = 0.0 - y2 = 2.242in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.242in - } - ha:line.60 { - clearance = 0.0 - y2 = 54.2036mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 54.2036mm - } - ha:line.64 { - clearance = 0.0 - y2 = 2.026in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.026in - } - ha:line.68 { - clearance = 0.0 - y2 = 1.918in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.918in - } - ha:line.72 { - clearance = 0.0 - y2 = 1.81in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.81in - } - ha:line.76 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.80 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.84 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.88 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.92 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.96 { - clearance = 0.0 - y2 = 2.512in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.512in - } - ha:line.100 { - clearance = 0.0 - y2 = 61.0616mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 61.0616mm - } - ha:line.104 { - clearance = 0.0 - y2 = 2.296in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.296in - } - ha:line.108 { - clearance = 0.0 - y2 = 2.188in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.188in - } - ha:line.112 { - clearance = 0.0 - y2 = 2.08in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.08in - } - ha:line.116 { - clearance = 0.0 - y2 = 1.972in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.972in - } - ha:line.120 { - clearance = 0.0 - y2 = 1.864in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.864in - } - ha:line.124 { - clearance = 0.0 - y2 = 1.756in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.756in - } - ha:line.128 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.132 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.136 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.140 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 65.1764mm - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.145 { - clearance = 0.0 - y2 = 1.918in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.452681mm - x2 = 25.452681mm - ha:flags { - } - y1 = 1.918in - } - ha:line.148 { - clearance = 0.0 - y2 = 65.1764mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 65.1764mm - } - ha:line.151 { - clearance = 0.0 - y2 = 65.1764mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.056in - x2 = 25.8224mm - ha:flags { - } - y1 = 65.1764mm - } - ha:line.154 { - clearance = 0.0 - y2 = 64.1764mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 65.1764mm - } - } - ha:combining { - } - } - } - } - uid = XgJ98fsHTDdEjKfSkLEAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB9F.fp =================================================================== --- trunk/pcblib/connector/DB9F.fp (revision 34911) +++ trunk/pcblib/connector/DB9F.fp (nonexistent) @@ -1,828 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.80 { - smirror = 0 - ha:attributes { - term = 11 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 2.092in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 2.092in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.092in - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.092in - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 2.032in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.032in - } - ha:line.28 { - clearance = 0.0 - y2 = 1.912in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.912in - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 1.862in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 1.862in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.862in - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.862in - } - ha:line.44 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.48 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.52 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.56 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.60 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.64 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.68 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.72 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.76 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 1.702in - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.81 { - clearance = 0.0 - y2 = 1.486in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.529309mm - x2 = 25.529309mm - ha:flags { - } - y1 = 1.486in - } - ha:line.84 { - clearance = 0.0 - y2 = 1.702in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 1.702in - } - ha:line.87 { - clearance = 0.0 - y2 = 1.702in - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.056in - x2 = 25.8224mm - ha:flags { - } - y1 = 1.702in - } - ha:line.90 { - clearance = 0.0 - y2 = 42.2308mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 1.702in - } - } - ha:combining { - } - } - } - } - uid = bMtrWJ4J7RopF+TYtuYAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB37F.fp =================================================================== --- trunk/pcblib/connector/DB37F.fp (revision 34911) +++ trunk/pcblib/connector/DB37F.fp (nonexistent) @@ -1,1668 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 81.6356mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 78.8924mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.998in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.89in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.782in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.674in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 65.1764mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.458in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.35in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.242in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.83 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 54.2036mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.87 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.026in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.91 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.918in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.95 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.81in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.99 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.103 { - smirror = 0 - ha:attributes { - term = 16 - name = 16 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.107 { - smirror = 0 - ha:attributes { - term = 17 - name = 17 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.111 { - smirror = 0 - ha:attributes { - term = 18 - name = 18 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.115 { - smirror = 0 - ha:attributes { - term = 19 - name = 19 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.119 { - smirror = 0 - ha:attributes { - term = 20 - name = 20 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 3.16in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.123 { - smirror = 0 - ha:attributes { - term = 21 - name = 21 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 3.052in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.127 { - smirror = 0 - ha:attributes { - term = 22 - name = 22 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.944in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.131 { - smirror = 0 - ha:attributes { - term = 23 - name = 23 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 72.0344mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.135 { - smirror = 0 - ha:attributes { - term = 24 - name = 24 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.728in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.139 { - smirror = 0 - ha:attributes { - term = 25 - name = 25 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.62in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.143 { - smirror = 0 - ha:attributes { - term = 26 - name = 26 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.512in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.147 { - smirror = 0 - ha:attributes { - term = 27 - name = 27 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 61.0616mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.151 { - smirror = 0 - ha:attributes { - term = 28 - name = 28 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.296in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.155 { - smirror = 0 - ha:attributes { - term = 29 - name = 29 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.188in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.159 { - smirror = 0 - ha:attributes { - term = 30 - name = 30 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.08in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.163 { - smirror = 0 - ha:attributes { - term = 31 - name = 31 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.167 { - smirror = 0 - ha:attributes { - term = 32 - name = 32 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.864in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.171 { - smirror = 0 - ha:attributes { - term = 33 - name = 33 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.756in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.175 { - smirror = 0 - ha:attributes { - term = 34 - name = 34 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.179 { - smirror = 0 - ha:attributes { - term = 35 - name = 35 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.183 { - smirror = 0 - ha:attributes { - term = 36 - name = 36 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.187 { - smirror = 0 - ha:attributes { - term = 37 - name = 37 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.191 { - smirror = 0 - ha:attributes { - term = 38 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.192 { - smirror = 0 - ha:attributes { - term = 39 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 3.484in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 3.604in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 3.604in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 3.604in - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 3.604in - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 3.544in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 3.544in - } - ha:line.28 { - clearance = 0.0 - y2 = 86.9696mm - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 86.9696mm - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 3.374in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 3.374in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 3.374in - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 3.374in - } - ha:line.44 { - clearance = 0.0 - y2 = 81.6356mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 81.6356mm - } - ha:line.48 { - clearance = 0.0 - y2 = 78.8924mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 78.8924mm - } - ha:line.52 { - clearance = 0.0 - y2 = 2.998in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.998in - } - ha:line.56 { - clearance = 0.0 - y2 = 2.89in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.89in - } - ha:line.60 { - clearance = 0.0 - y2 = 2.782in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.782in - } - ha:line.64 { - clearance = 0.0 - y2 = 2.674in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.674in - } - ha:line.68 { - clearance = 0.0 - y2 = 65.1764mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 65.1764mm - } - ha:line.72 { - clearance = 0.0 - y2 = 2.458in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.458in - } - ha:line.76 { - clearance = 0.0 - y2 = 2.35in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.35in - } - ha:line.80 { - clearance = 0.0 - y2 = 2.242in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.242in - } - ha:line.84 { - clearance = 0.0 - y2 = 54.2036mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 54.2036mm - } - ha:line.88 { - clearance = 0.0 - y2 = 2.026in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.026in - } - ha:line.92 { - clearance = 0.0 - y2 = 1.918in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.918in - } - ha:line.96 { - clearance = 0.0 - y2 = 1.81in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.81in - } - ha:line.100 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.104 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.108 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.112 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.116 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.120 { - clearance = 0.0 - y2 = 3.16in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 3.16in - } - ha:line.124 { - clearance = 0.0 - y2 = 3.052in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 3.052in - } - ha:line.128 { - clearance = 0.0 - y2 = 2.944in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.944in - } - ha:line.132 { - clearance = 0.0 - y2 = 72.0344mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 72.0344mm - } - ha:line.136 { - clearance = 0.0 - y2 = 2.728in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.728in - } - ha:line.140 { - clearance = 0.0 - y2 = 2.62in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.62in - } - ha:line.144 { - clearance = 0.0 - y2 = 2.512in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.512in - } - ha:line.148 { - clearance = 0.0 - y2 = 61.0616mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 61.0616mm - } - ha:line.152 { - clearance = 0.0 - y2 = 2.296in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.296in - } - ha:line.156 { - clearance = 0.0 - y2 = 2.188in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.188in - } - ha:line.160 { - clearance = 0.0 - y2 = 2.08in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.08in - } - ha:line.164 { - clearance = 0.0 - y2 = 1.972in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.972in - } - ha:line.168 { - clearance = 0.0 - y2 = 1.864in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.864in - } - ha:line.172 { - clearance = 0.0 - y2 = 1.756in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.756in - } - ha:line.176 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.180 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.184 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.188 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 81.6356mm - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.193 { - clearance = 0.0 - y2 = 2.242in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.436471mm - x2 = 25.436471mm - ha:flags { - } - y1 = 2.242in - } - ha:line.196 { - clearance = 0.0 - y2 = 81.6356mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 81.6356mm - } - ha:line.199 { - clearance = 0.0 - y2 = 81.6356mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.056in - x2 = 25.8224mm - ha:flags { - } - y1 = 81.6356mm - } - ha:line.202 { - clearance = 0.0 - y2 = 80.6356mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.056in - x2 = 1.056in - ha:flags { - } - y1 = 81.6356mm - } - } - ha:combining { - } - } - } - } - uid = RfWOhvAGP43wbRWBULgAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/BNC_LAY.fp =================================================================== --- trunk/pcblib/connector/BNC_LAY.fp (revision 34911) +++ trunk/pcblib/connector/BNC_LAY.fp (nonexistent) @@ -1,498 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = right angle BNC - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 81.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 100.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 106.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.19 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.651392mm - rot = 0.000000 - y = 7.493392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.20 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.651392mm - rot = 0.000000 - y = 4.953392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.21 { - smirror = 0 - ha:attributes { - term = 3 - name = m1 - } - proto = 2 - xmirror = 0 - x = 6.731392mm - rot = 0.000000 - y = 2.413392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.22 { - smirror = 0 - ha:attributes { - term = 4 - name = m2 - } - proto = 2 - xmirror = 0 - x = 6.731392mm - rot = 0.000000 - y = 12.573392mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 14.097392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.10 { - clearance = 0.0 - y2 = 14.859392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 14.097392mm - x2 = 14.097392mm - ha:flags { - } - y1 = 0.127392mm - } - ha:line.13 { - clearance = 0.0 - y2 = 14.859392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 14.097392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 14.859392mm - } - ha:line.16 { - clearance = 0.0 - y2 = 0.127392mm - thickness = 10.0mil - ha:attributes { - } - x1 = 0.127392mm - x2 = 0.127392mm - ha:flags { - } - y1 = 14.859392mm - } - ha:text.6 { - scale = 100 - ha:attributes { - } - x = 6.731392mm - y = 7.493392mm - rot = 270.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.23 { - clearance = 0.0 - y2 = 6.858392mm - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 4.191392mm - x2 = 4.191392mm - ha:flags { - } - y1 = 6.858392mm - } - ha:line.26 { - clearance = 0.0 - y2 = 7.493392mm - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 1.651392mm - x2 = 1.651392mm - ha:flags { - } - y1 = 7.493392mm - } - ha:line.29 { - clearance = 0.0 - y2 = 8.493392mm - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 1.651392mm - x2 = 1.651392mm - ha:flags { - } - y1 = 7.493392mm - } - ha:line.32 { - clearance = 0.0 - y2 = 7.493392mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 1.651392mm - x2 = 2.651392mm - ha:flags { - } - y1 = 7.493392mm - } - } - ha:combining { - } - } - } - } - uid = +z9SkkMpL7AE/DrmKxoAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB15M.fp =================================================================== --- trunk/pcblib/connector/DB15M.fp (revision 34911) +++ trunk/pcblib/connector/DB15M.fp (nonexistent) @@ -1,1008 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.81in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.918in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.026in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.83 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.87 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.91 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.756in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.95 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.864in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.99 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.103 { - smirror = 0 - ha:attributes { - term = 16 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.104 { - smirror = 0 - ha:attributes { - term = 17 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 2.296in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 61.3664mm - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 61.3664mm - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 61.3664mm - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 61.3664mm - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 59.8424mm - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 59.8424mm - } - ha:line.28 { - clearance = 0.0 - y2 = 2.236in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.236in - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 55.5244mm - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 55.5244mm - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 55.5244mm - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 55.5244mm - } - ha:line.44 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.48 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.52 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.56 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.60 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.64 { - clearance = 0.0 - y2 = 1.81in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.81in - } - ha:line.68 { - clearance = 0.0 - y2 = 1.918in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.918in - } - ha:line.72 { - clearance = 0.0 - y2 = 2.026in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.026in - } - ha:line.76 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:line.80 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.84 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.88 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.92 { - clearance = 0.0 - y2 = 1.756in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.756in - } - ha:line.96 { - clearance = 0.0 - y2 = 1.864in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.864in - } - ha:line.100 { - clearance = 0.0 - y2 = 1.972in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.972in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 2.026in - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.105 { - clearance = 0.0 - y2 = 1.648in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.48367mm - x2 = 25.48367mm - ha:flags { - } - y1 = 1.648in - } - ha:line.108 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.111 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 26.67mm - x2 = 27.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.114 { - clearance = 0.0 - y2 = 33.258mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - } - ha:combining { - } - } - } - } - uid = OJxv7uCiNEnjpBVb3PgAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/connector/DB25M.fp =================================================================== --- trunk/pcblib/connector/DB25M.fp (revision 34911) +++ trunk/pcblib/connector/DB25M.fp (nonexistent) @@ -1,1308 +0,0 @@ -li:pcb-rnd-subcircuit-v6 { - ha:subc.5 { - ha:attributes { - footprint = DSUB connector, female/male - } - ha:data { - li:padstack_prototypes { - ha:ps_proto_v6.0 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -30.0mil - -30.0mil - 30.0mil - -30.0mil - 30.0mil - 30.0mil - -30.0mil - 30.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - li:ps_poly { - -33.0mil - -33.0mil - 33.0mil - -33.0mil - 33.0mil - 33.0mil - -33.0mil - 33.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.1 { - htop = 0 - hdia = 35.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 60.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 66.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - ha:ps_proto_v6.2 { - htop = 0 - hdia = 125.0mil - li:shape { - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - top = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - bottom = 1 - copper = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 250.0mil - } - ha:layer_mask { - copper = 1 - intern = 1 - } - ha:combining { - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - top = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - ha:ps_shape_v4 { - clearance = 0.0 - ha:ps_circ { - x = 0.0 - y = 0.0 - dia = 256.0mil - } - ha:layer_mask { - bottom = 1 - mask = 1 - } - ha:combining { - sub = 1 - auto = 1 - } - } - } - hbottom = 0 - hplated = 1 - } - } - li:objects { - ha:padstack_ref.43 { - smirror = 0 - ha:attributes { - term = 1 - name = 1 - } - proto = 0 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.27in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.47 { - smirror = 0 - ha:attributes { - term = 2 - name = 2 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.378in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.51 { - smirror = 0 - ha:attributes { - term = 3 - name = 3 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.486in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.55 { - smirror = 0 - ha:attributes { - term = 4 - name = 4 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.594in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.59 { - smirror = 0 - ha:attributes { - term = 5 - name = 5 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.702in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.63 { - smirror = 0 - ha:attributes { - term = 6 - name = 6 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.81in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.67 { - smirror = 0 - ha:attributes { - term = 7 - name = 7 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 1.918in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.71 { - smirror = 0 - ha:attributes { - term = 8 - name = 8 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.026in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.75 { - smirror = 0 - ha:attributes { - term = 9 - name = 9 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 54.2036mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.79 { - smirror = 0 - ha:attributes { - term = 10 - name = 10 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.242in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.83 { - smirror = 0 - ha:attributes { - term = 11 - name = 11 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.35in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.87 { - smirror = 0 - ha:attributes { - term = 12 - name = 12 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 2.458in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.91 { - smirror = 0 - ha:attributes { - term = 13 - name = 13 - } - proto = 1 - xmirror = 0 - x = 1.056in - rot = 0.000000 - y = 65.1764mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.95 { - smirror = 0 - ha:attributes { - term = 14 - name = 14 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.324in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.99 { - smirror = 0 - ha:attributes { - term = 15 - name = 15 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 36.3728mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.103 { - smirror = 0 - ha:attributes { - term = 16 - name = 16 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.54in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.107 { - smirror = 0 - ha:attributes { - term = 17 - name = 17 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.648in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.111 { - smirror = 0 - ha:attributes { - term = 18 - name = 18 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.756in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.115 { - smirror = 0 - ha:attributes { - term = 19 - name = 19 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.864in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.119 { - smirror = 0 - ha:attributes { - term = 20 - name = 20 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 1.972in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.123 { - smirror = 0 - ha:attributes { - term = 21 - name = 21 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.08in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.127 { - smirror = 0 - ha:attributes { - term = 22 - name = 22 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.188in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.131 { - smirror = 0 - ha:attributes { - term = 23 - name = 23 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.296in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.135 { - smirror = 0 - ha:attributes { - term = 24 - name = 24 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 61.0616mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.139 { - smirror = 0 - ha:attributes { - term = 25 - name = 25 - } - proto = 1 - xmirror = 0 - x = 944.0mil - rot = 0.000000 - y = 2.512in - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.143 { - smirror = 0 - ha:attributes { - term = 26 - name = C1 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 1000.0mil - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - ha:padstack_ref.144 { - smirror = 0 - ha:attributes { - term = 27 - name = C2 - } - proto = 2 - xmirror = 0 - x = 1000.0mil - rot = 0.000000 - y = 72.0344mm - li:thermal { - } - ha:flags { - clearline = 1 - } - clearance = 15.0mil - } - } - li:layers { - ha:top-silk { - lid = 0 - ha:type { - silk = 1 - top = 1 - } - li:objects { - ha:line.7 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.10 { - clearance = 0.0 - y2 = 2.956in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 880.0mil - } - ha:line.13 { - clearance = 0.0 - y2 = 2.956in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.956in - } - ha:line.16 { - clearance = 0.0 - y2 = 880.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 635.0mil - ha:flags { - } - y1 = 2.956in - } - ha:line.19 { - clearance = 0.0 - y2 = 940.0mil - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 940.0mil - } - ha:line.22 { - clearance = 0.0 - y2 = 1.06in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 1.06in - } - ha:line.25 { - clearance = 0.0 - y2 = 73.5584mm - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 73.5584mm - } - ha:line.28 { - clearance = 0.0 - y2 = 2.776in - thickness = 10.0mil - ha:attributes { - } - x1 = 635.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.776in - } - ha:line.31 { - clearance = 0.0 - y2 = 1.11in - thickness = 20.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.34 { - clearance = 0.0 - y2 = 2.726in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.11in - } - ha:line.37 { - clearance = 0.0 - y2 = 2.726in - thickness = 20.0mil - ha:attributes { - } - x1 = 770.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.726in - } - ha:line.40 { - clearance = 0.0 - y2 = 1.11in - thickness = 10.0mil - ha:attributes { - } - x1 = 665.0mil - x2 = 665.0mil - ha:flags { - } - y1 = 2.726in - } - ha:line.44 { - clearance = 0.0 - y2 = 1.27in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.27in - } - ha:line.48 { - clearance = 0.0 - y2 = 1.378in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.378in - } - ha:line.52 { - clearance = 0.0 - y2 = 1.486in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.486in - } - ha:line.56 { - clearance = 0.0 - y2 = 1.594in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.594in - } - ha:line.60 { - clearance = 0.0 - y2 = 1.702in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.702in - } - ha:line.64 { - clearance = 0.0 - y2 = 1.81in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.81in - } - ha:line.68 { - clearance = 0.0 - y2 = 1.918in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 1.918in - } - ha:line.72 { - clearance = 0.0 - y2 = 2.026in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.026in - } - ha:line.76 { - clearance = 0.0 - y2 = 54.2036mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 54.2036mm - } - ha:line.80 { - clearance = 0.0 - y2 = 2.242in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.242in - } - ha:line.84 { - clearance = 0.0 - y2 = 2.35in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.35in - } - ha:line.88 { - clearance = 0.0 - y2 = 2.458in - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 2.458in - } - ha:line.92 { - clearance = 0.0 - y2 = 65.1764mm - thickness = 20.0mil - ha:attributes { - } - x1 = 1.016in - x2 = 770.0mil - ha:flags { - } - y1 = 65.1764mm - } - ha:line.96 { - clearance = 0.0 - y2 = 1.324in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.324in - } - ha:line.100 { - clearance = 0.0 - y2 = 36.3728mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 36.3728mm - } - ha:line.104 { - clearance = 0.0 - y2 = 1.54in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.54in - } - ha:line.108 { - clearance = 0.0 - y2 = 1.648in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.648in - } - ha:line.112 { - clearance = 0.0 - y2 = 1.756in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.756in - } - ha:line.116 { - clearance = 0.0 - y2 = 1.864in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.864in - } - ha:line.120 { - clearance = 0.0 - y2 = 1.972in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 1.972in - } - ha:line.124 { - clearance = 0.0 - y2 = 2.08in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.08in - } - ha:line.128 { - clearance = 0.0 - y2 = 2.188in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.188in - } - ha:line.132 { - clearance = 0.0 - y2 = 2.296in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.296in - } - ha:line.136 { - clearance = 0.0 - y2 = 61.0616mm - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 61.0616mm - } - ha:line.140 { - clearance = 0.0 - y2 = 2.512in - thickness = 20.0mil - ha:attributes { - } - x1 = 904.0mil - x2 = 770.0mil - ha:flags { - } - y1 = 2.512in - } - ha:text.6 { - scale = 150 - ha:attributes { - } - x = 1000.0mil - y = 65.1764mm - rot = 90.000000 - string = %a.parent.refdes% - fid = 0 - ha:flags { - dyntext = 1 - floater = 1 - } - } - } - ha:combining { - } - } - ha:subc-aux { - lid = 1 - ha:type { - top = 1 - misc = 1 - virtual = 1 - } - li:objects { - ha:line.145 { - clearance = 0.0 - y2 = 1.918in - thickness = 0.1mm - ha:attributes { - subc-role = pnp-origin - } - x1 = 25.452681mm - x2 = 25.452681mm - ha:flags { - } - y1 = 1.918in - } - ha:line.148 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = origin - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.151 { - clearance = 0.0 - y2 = 1.27in - thickness = 0.1mm - ha:attributes { - subc-role = x - } - x1 = 26.67mm - x2 = 27.67mm - ha:flags { - } - y1 = 1.27in - } - ha:line.154 { - clearance = 0.0 - y2 = 33.258mm - thickness = 0.1mm - ha:attributes { - subc-role = y - } - x1 = 26.67mm - x2 = 26.67mm - ha:flags { - } - y1 = 1.27in - } - } - ha:combining { - } - } - } - } - uid = mwT/lhqrRxvsA+MkDMwAAAAB - ha:flags { - } - } -} Index: trunk/pcblib/README =================================================================== --- trunk/pcblib/README (revision 34911) +++ trunk/pcblib/README (nonexistent) @@ -1,8 +0,0 @@ -This directory hosts the pcb-rnd's new footprint library. To avoid -confusuin with "newlib", which is in use in mainline, this one is called -pcblib. - -Some footprints are dynamically generated by scripts; they are -called parametric footprints and are in parametric/. Other footprints -are plain old data file footprints (static footpritns) in all the other -directories. Index: trunk/pcblib/Makefile =================================================================== --- trunk/pcblib/Makefile (revision 34911) +++ trunk/pcblib/Makefile (nonexistent) @@ -1,36 +0,0 @@ -# This Makefile is a plain old hand written one; all configuration settings -# are included from ../Makefile.conf which is scconfig generated - -ROOT=.. - -all: - -# NOTE: this rule is _not_ called from linstall -install_: - $(MKDIR) "$(DATADIR)/pcblib" - $(MKDIR) "$(DATADIR)/pcblib/connector" - $(CPC) "`pwd`/connector"/* "$(DATADIR)/pcblib/connector" - $(MKDIR) "$(DATADIR)/pcblib/parametric" - $(CPC) "`pwd`/parametric"/* "$(DATADIR)/pcblib/parametric" - $(MKDIR) "$(DATADIR)/pcblib/smd" - $(CPC) "`pwd`/smd"/* "$(DATADIR)/pcblib/smd" - $(MKDIR) "$(DATADIR)/pcblib/tru-hole" - $(CPC) "`pwd`/tru-hole"/* "$(DATADIR)/pcblib/tru-hole" - -install: - $(MAKE) install_ CPC="$(CP)" - -# hack: pcb's chdir() based approach gets fooled on symlinks because of "cd .." -# returns to the wrong dir - rather symlink the whole dir -linstall: - $(MAKE) uninstall - $(MKDIR) "$(DATADIR)" - $(LN) "`pwd`" "$(DATADIR)/pcblib" - -uninstall: - $(RM) "$(DATADIR)/pcblib" - -clean: - -include $(ROOT)/Makefile.conf - Index: trunk/Makefile =================================================================== --- trunk/Makefile (revision 34911) +++ trunk/Makefile (revision 34912) @@ -1,7 +1,7 @@ all: FORCE cd src && $(MAKE) cd util && $(MAKE) - cd pcblib && $(MAKE) + cd footprint && $(MAKE) # cd doc && $(MAKE) test: FORCE @@ -10,7 +10,7 @@ clean: FORCE cd src && $(MAKE) clean cd util && $(MAKE) clean - cd pcblib && $(MAKE) clean + cd footprint && $(MAKE) clean # cd doc && $(MAKE) clean cd tests && $(MAKE) clean cd src_3rd/libminuid && $(MAKE) clean ; true @@ -30,19 +30,19 @@ install: FORCE cd src && $(MAKE) install cd util && $(MAKE) install - cd pcblib && $(MAKE) install + cd footprint && $(MAKE) install cd doc && $(MAKE) install linstall: FORCE cd src && $(MAKE) linstall cd util && $(MAKE) linstall - cd pcblib && $(MAKE) linstall + cd footprint && $(MAKE) linstall cd doc && $(MAKE) linstall uninstall: FORCE cd src && $(MAKE) uninstall cd util && $(MAKE) uninstall - cd pcblib && $(MAKE) uninstall + cd footprint && $(MAKE) uninstall cd doc && $(MAKE) uninstall include Makefile.conf Index: trunk/README =================================================================== --- trunk/README (revision 34911) +++ trunk/README (revision 34912) @@ -20,7 +20,7 @@ pcb-rnd source distribution is organized into: doc/ documentation font/ stock vector font files that can be used on a PCB - pcblib/ a basic footprint library + footprint/ a basic footprint library scconfig/ ./configure implementation src/ a core program that deals with all of the internal database procedures Index: trunk/doc/TODO =================================================================== --- trunk/doc/TODO (revision 34911) +++ trunk/doc/TODO (revision 34912) @@ -1,8 +1,6 @@ 0. old, still waiting for ack 1. For the upcoming release =============================================================================== -- CLEANUP/FEATURE: version 3.0.0: - - rename pcblib to footprint-rnd! rename pcblib/tru-hole to fix the typo; update configs; update README - FEATURE: asm(): a config node (maybe query script); if a subc matches, omit it from the list; this is for DNP or build options [report: Majenko] - BUG: layer binding dialog: on the standard 4 layer board create a subc with a line on top copper; edit layer bindings of the subc; try to move it to each inner copper -> dialog box gets confused [report: Igor2] - BUG: cuvoodoo's netlength bug: bug_files/netlen1.lht; run {n l o} on the horizontal lines; it breaks because a short line segment is fully under the via causing multiple touching objects [report: cuvoodoo] (report to the mailing list) Index: trunk/doc/developer/lihata_format/examples/conf.lht =================================================================== --- trunk/doc/developer/lihata_format/examples/conf.lht (revision 34911) +++ trunk/doc/developer/lihata_format/examples/conf.lht (revision 34912) @@ -16,9 +16,9 @@ } ha:rc { li:library_search_paths { - ?../pcblib - ?~/pcblib/ - $(rc.path.share)/pcblib + ?../footprint + ?~/.pcb-rnd/footprint/ + $(rc.path.share)/footprint } backup_interval = { 60 } } Index: trunk/doc/developer/packaging/Changelog =================================================================== --- trunk/doc/developer/packaging/Changelog (revision 34911) +++ trunk/doc/developer/packaging/Changelog (revision 34912) @@ -8,7 +8,8 @@ TODO: librnd-dev: new file sharedir/plugin.state TODO: removed $LC and $LP (we are not installing any librnd related file) TODO: menu file rename -TODO: --confdir change +TODO: --confdir change; conf file renamed to conf_core.lht +TODO: pcblib/ to footprint/ rename Packaging changes between 2.3.2 and 2.4.0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Index: trunk/doc/developer/packaging/extra.digest =================================================================== --- trunk/doc/developer/packaging/extra.digest (revision 34911) +++ trunk/doc/developer/packaging/extra.digest (revision 34912) @@ -2,7 +2,7 @@ @appendfiles pcb-rnd-core $C/conf_core.lht $C/menu-default.lht @appendfiles pcb-rnd-core $PREFIX/share/pcb-rnd/default2.lht $PREFIX/share/pcb-rnd/default4.lht $PREFIX/share/pcb-rnd/default_font @appendfiles pcb-rnd-core $PREFIX/bin/fp2preview $PREFIX/bin/fp2subc $PREFIX/bin/pcb-prj2lht $PREFIX/share/man/man1/fp2preview.1 $PREFIX/share/man/man1/fp2subc.1 $PREFIX/share/man/man1/pcb-prj2lht.1 -@appendfiles pcb-rnd-core $PREFIX/share/pcb-rnd/pcblib/* +@appendfiles pcb-rnd-core $PREFIX/share/pcb-rnd/footprint/* @appendfiles pcb-rnd-io-alien $PREFIX/share/man/man1/txt2bxl.1 $PREFIX/share/man/man1/bxl2txt.1 @appendfiles pcb-rnd-io-alien $PREFIX/bin/txt2bxl $PREFIX/bin/bxl2txt @appendfiles pcb-rnd-export $PREFIX/bin/pcb-rnd-svg $PREFIX/share/man/man1/pcb-rnd-svg.1 Index: trunk/doc/developer/packaging/packages.html =================================================================== --- trunk/doc/developer/packaging/packages.html (revision 34911) +++ trunk/doc/developer/packaging/packages.html (revision 34912) @@ -36,7 +36,7 @@ pcb-rnd-lib-io $P/lib_netmap.pup $P/lib_netmap.so Support library for alien file formats. Provides generic, low level parsers (such as s-expression parser) for I/O plugins that need to deal with alien file formats. pcb-rnd-io-standard $P/io_pcb.pup $P/io_pcb.so $P/io_tedax.pup $P/io_tedax.so Commonly used non-native board and footprint file formats Plugins for tEDAx footprint format and the gEDA/PCB file formats (footprint and board). pcb-rnd-lib-gui $P/dialogs.pup $P/dialogs.so $P/draw_fontsel.pup $P/draw_fontsel.so $P/lib_hid_pcbui.pup $P/lib_hid_pcbui.so $C/adialogs.conf Support library for building the GUI. Provides pcb-rnd specific dialog boxes (e.g. fontsel) and top window GUI elements. -pcb-rnd-core $PREFIX/bin/pcb-rnd $PREFIX/share/man/man1/pcb-rnd.1 $C/conf_core.lht $C/menu-default.lht $PREFIX/share/pcb-rnd/default2.lht $PREFIX/share/pcb-rnd/default4.lht $PREFIX/share/pcb-rnd/default_font $PREFIX/bin/fp2preview $PREFIX/bin/fp2subc $PREFIX/bin/pcb-prj2lht $PREFIX/share/man/man1/fp2preview.1 $PREFIX/share/man/man1/fp2subc.1 $PREFIX/share/man/man1/pcb-prj2lht.1 $PREFIX/share/pcb-rnd/pcblib/* $C/ch_editpoint.conf $C/drc_query.conf $C/fp_fs.conf $C/show_netnames.conf pcb-rnd executable with the core functionality Includes the data model, the most common action commands, the native file format and the CLI (batch HID). Does not contain GUI. Can be used in headless mode or batch/scripted mode for automated processing. +pcb-rnd-core $PREFIX/bin/pcb-rnd $PREFIX/share/man/man1/pcb-rnd.1 $C/conf_core.lht $C/menu-default.lht $PREFIX/share/pcb-rnd/default2.lht $PREFIX/share/pcb-rnd/default4.lht $PREFIX/share/pcb-rnd/default_font $PREFIX/bin/fp2preview $PREFIX/bin/fp2subc $PREFIX/bin/pcb-prj2lht $PREFIX/share/man/man1/fp2preview.1 $PREFIX/share/man/man1/fp2subc.1 $PREFIX/share/man/man1/pcb-prj2lht.1 $PREFIX/share/pcb-rnd/footprint/* $C/ch_editpoint.conf $C/drc_query.conf $C/fp_fs.conf $C/show_netnames.conf pcb-rnd executable with the core functionality Includes the data model, the most common action commands, the native file format and the CLI (batch HID). Does not contain GUI. Can be used in headless mode or batch/scripted mode for automated processing. pcb-rnd-io-alien $P/io_autotrax.pup $P/io_autotrax.so $P/io_bxl.pup $P/io_bxl.so $P/io_dsn.pup $P/io_dsn.so $P/io_eagle.pup $P/io_eagle.so $P/io_hyp.pup $P/io_hyp.so $P/io_kicad.pup $P/io_kicad.so $P/io_kicad_legacy.pup $P/io_kicad_legacy.so $P/io_pads.pup $P/io_pads.so $PREFIX/share/man/man1/txt2bxl.1 $PREFIX/share/man/man1/bxl2txt.1 $PREFIX/bin/txt2bxl $PREFIX/bin/bxl2txt File format compatibility with other PCB layout designers. Load and/or save boards in file formats supported by other EDA tools, such as KiCAD, Eagle, protel/autotrax, etc. pcb-rnd-cloud $P/fp_wget.pup $P/fp_wget.so $C/fp_wget.conf Networking plugins. 'Cloud' footprint access plugin that integrates edakrill and gedasymbols.org. pcb-rnd-export-extra $P/export_fidocadj.pup $P/export_fidocadj.so $P/export_ipcd356.pup $P/export_ipcd356.so $P/export_lpr.pup $P/export_lpr.so $P/export_oldconn.pup $P/export_oldconn.so $P/export_stl.pup $P/export_stl.so Export formats: special/extra Less commonly used export formats: fidocadj, ipc-356-d, direct printing with lpr. Index: trunk/doc/user/03_data/index.html =================================================================== --- trunk/doc/user/03_data/index.html (revision 34911) +++ trunk/doc/user/03_data/index.html (revision 34912) @@ -66,7 +66,7 @@ plugin description library_search_paths example fp_fs list and load files from directories on the host file system - ~/my_lib
/usr/lib/company_lib
$(rc.path.share)/pcblib + ~/my_lib
/usr/lib/company_lib
$(rc.path.share)/footprint fp_board extract all footprints from an existing board file (given in any board format pcb-rnd can load) and use these footprints as Index: trunk/footprint/Makefile =================================================================== --- trunk/footprint/Makefile (nonexistent) +++ trunk/footprint/Makefile (revision 34912) @@ -0,0 +1,36 @@ +# This Makefile is a plain old hand written one; all configuration settings +# are included from ../Makefile.conf which is scconfig generated + +ROOT=.. + +all: + +# NOTE: this rule is _not_ called from linstall +install_: + $(MKDIR) "$(DATADIR)/footprint" + $(MKDIR) "$(DATADIR)/footprint/connector" + $(CPC) "`pwd`/connector"/* "$(DATADIR)/footprint/connector" + $(MKDIR) "$(DATADIR)/footprint/parametric" + $(CPC) "`pwd`/parametric"/* "$(DATADIR)/footprint/parametric" + $(MKDIR) "$(DATADIR)/footprint/smd" + $(CPC) "`pwd`/smd"/* "$(DATADIR)/footprint/smd" + $(MKDIR) "$(DATADIR)/footprint/tru-hole" + $(CPC) "`pwd`/tru-hole"/* "$(DATADIR)/footprint/tru-hole" + +install: + $(MAKE) install_ CPC="$(CP)" + +# hack: pcb's chdir() based approach gets fooled on symlinks because of "cd .." +# returns to the wrong dir - rather symlink the whole dir +linstall: + $(MAKE) uninstall + $(MKDIR) "$(DATADIR)" + $(LN) "`pwd`" "$(DATADIR)/footprint" + +uninstall: + $(RM) "$(DATADIR)/footprint" + +clean: + +include $(ROOT)/Makefile.conf + Index: trunk/footprint/README =================================================================== --- trunk/footprint/README (nonexistent) +++ trunk/footprint/README (revision 34912) @@ -0,0 +1,8 @@ +This directory hosts the pcb-rnd's new footprint library. To avoid +confusion with "newlib", which is in use in mainline, this one was called +pcblib - and got renamed to footprint/ for 3.0.0. + +Some footprints are dynamically generated by scripts; they are +called parametric footprints and are in parametric/. Other footprints +are plain old data file footprints (static footpritns) in all the other +directories. Index: trunk/footprint/connector/BNC_LAY.fp =================================================================== --- trunk/footprint/connector/BNC_LAY.fp (nonexistent) +++ trunk/footprint/connector/BNC_LAY.fp (revision 34912) @@ -0,0 +1,498 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = right angle BNC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 81.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.651392mm + rot = 0.000000 + y = 7.493392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.651392mm + rot = 0.000000 + y = 4.953392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = m1 + } + proto = 2 + xmirror = 0 + x = 6.731392mm + rot = 0.000000 + y = 2.413392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = m2 + } + proto = 2 + xmirror = 0 + x = 6.731392mm + rot = 0.000000 + y = 12.573392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 14.097392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 14.859392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 14.097392mm + x2 = 14.097392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 14.859392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 14.097392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 14.859392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 14.859392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.731392mm + y = 7.493392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 6.858392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.191392mm + x2 = 4.191392mm + ha:flags { + } + y1 = 6.858392mm + } + ha:line.26 { + clearance = 0.0 + y2 = 7.493392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.651392mm + x2 = 1.651392mm + ha:flags { + } + y1 = 7.493392mm + } + ha:line.29 { + clearance = 0.0 + y2 = 8.493392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.651392mm + x2 = 1.651392mm + ha:flags { + } + y1 = 7.493392mm + } + ha:line.32 { + clearance = 0.0 + y2 = 7.493392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.651392mm + x2 = 2.651392mm + ha:flags { + } + y1 = 7.493392mm + } + } + ha:combining { + } + } + } + } + uid = +z9SkkMpL7AE/DrmKxoAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB15F.fp =================================================================== --- trunk/footprint/connector/DB15F.fp (nonexistent) +++ trunk/footprint/connector/DB15F.fp (revision 34912) @@ -0,0 +1,1008 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.104 { + smirror = 0 + ha:attributes { + term = 17 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 59.8424mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 59.8424mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.236in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.236in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.44 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.72 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.80 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.88 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.96 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.100 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 2.026in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.105 { + clearance = 0.0 + y2 = 1.648in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.48367mm + x2 = 25.48367mm + ha:flags { + } + y1 = 1.648in + } + ha:line.108 { + clearance = 0.0 + y2 = 2.026in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 2.026in + } + ha:line.111 { + clearance = 0.0 + y2 = 2.026in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 2.026in + } + ha:line.114 { + clearance = 0.0 + y2 = 50.4604mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 2.026in + } + } + ha:combining { + } + } + } + } + uid = mxLwtmLpMYT5EZjypDMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB15M.fp =================================================================== --- trunk/footprint/connector/DB15M.fp (nonexistent) +++ trunk/footprint/connector/DB15M.fp (revision 34912) @@ -0,0 +1,1008 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.104 { + smirror = 0 + ha:attributes { + term = 17 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 59.8424mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 59.8424mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.236in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.236in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.80 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.84 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.88 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.96 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.100 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 2.026in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.105 { + clearance = 0.0 + y2 = 1.648in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.48367mm + x2 = 25.48367mm + ha:flags { + } + y1 = 1.648in + } + ha:line.108 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.111 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 27.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.114 { + clearance = 0.0 + y2 = 33.258mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = OJxv7uCiNEnjpBVb3PgAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB25F.fp =================================================================== --- trunk/footprint/connector/DB25F.fp (nonexistent) +++ trunk/footprint/connector/DB25F.fp (revision 34912) @@ -0,0 +1,1308 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.144 { + smirror = 0 + ha:attributes { + term = 27 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 73.5584mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 73.5584mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.776in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.776in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.44 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.48 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.52 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.56 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.60 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.64 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.80 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.88 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.96 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:line.100 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.104 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.108 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.112 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.116 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.120 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.124 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.128 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.132 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.136 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.140 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 65.1764mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.145 { + clearance = 0.0 + y2 = 1.918in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.452681mm + x2 = 25.452681mm + ha:flags { + } + y1 = 1.918in + } + ha:line.148 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 65.1764mm + } + ha:line.151 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 65.1764mm + } + ha:line.154 { + clearance = 0.0 + y2 = 64.1764mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 65.1764mm + } + } + ha:combining { + } + } + } + } + uid = XgJ98fsHTDdEjKfSkLEAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB25M.fp =================================================================== --- trunk/footprint/connector/DB25M.fp (nonexistent) +++ trunk/footprint/connector/DB25M.fp (revision 34912) @@ -0,0 +1,1308 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.144 { + smirror = 0 + ha:attributes { + term = 27 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 73.5584mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 73.5584mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.776in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.776in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.76 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.80 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.84 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.88 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.92 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.96 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.100 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.104 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.108 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.112 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.116 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.120 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.124 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.128 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.132 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.136 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.140 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 65.1764mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.145 { + clearance = 0.0 + y2 = 1.918in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.452681mm + x2 = 25.452681mm + ha:flags { + } + y1 = 1.918in + } + ha:line.148 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.151 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 27.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.154 { + clearance = 0.0 + y2 = 33.258mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = mwT/lhqrRxvsA+MkDMwAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB37F.fp =================================================================== --- trunk/footprint/connector/DB37F.fp (nonexistent) +++ trunk/footprint/connector/DB37F.fp (revision 34912) @@ -0,0 +1,1668 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 81.6356mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 78.8924mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.998in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.89in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.782in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.674in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.16in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.052in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.944in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.728in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.62in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = 26 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.147 { + smirror = 0 + ha:attributes { + term = 27 + name = 27 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.151 { + smirror = 0 + ha:attributes { + term = 28 + name = 28 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.155 { + smirror = 0 + ha:attributes { + term = 29 + name = 29 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.159 { + smirror = 0 + ha:attributes { + term = 30 + name = 30 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.163 { + smirror = 0 + ha:attributes { + term = 31 + name = 31 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.167 { + smirror = 0 + ha:attributes { + term = 32 + name = 32 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.171 { + smirror = 0 + ha:attributes { + term = 33 + name = 33 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.175 { + smirror = 0 + ha:attributes { + term = 34 + name = 34 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.179 { + smirror = 0 + ha:attributes { + term = 35 + name = 35 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.183 { + smirror = 0 + ha:attributes { + term = 36 + name = 36 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.187 { + smirror = 0 + ha:attributes { + term = 37 + name = 37 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.191 { + smirror = 0 + ha:attributes { + term = 38 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.192 { + smirror = 0 + ha:attributes { + term = 39 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 3.484in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 3.544in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.544in + } + ha:line.28 { + clearance = 0.0 + y2 = 86.9696mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 86.9696mm + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.44 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 81.6356mm + } + ha:line.48 { + clearance = 0.0 + y2 = 78.8924mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 78.8924mm + } + ha:line.52 { + clearance = 0.0 + y2 = 2.998in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.998in + } + ha:line.56 { + clearance = 0.0 + y2 = 2.89in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.89in + } + ha:line.60 { + clearance = 0.0 + y2 = 2.782in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.782in + } + ha:line.64 { + clearance = 0.0 + y2 = 2.674in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.674in + } + ha:line.68 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.72 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.76 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.80 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.84 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.88 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.96 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.100 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.104 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.108 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.112 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.116 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.120 { + clearance = 0.0 + y2 = 3.16in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.16in + } + ha:line.124 { + clearance = 0.0 + y2 = 3.052in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.052in + } + ha:line.128 { + clearance = 0.0 + y2 = 2.944in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.944in + } + ha:line.132 { + clearance = 0.0 + y2 = 72.0344mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 72.0344mm + } + ha:line.136 { + clearance = 0.0 + y2 = 2.728in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.728in + } + ha:line.140 { + clearance = 0.0 + y2 = 2.62in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.62in + } + ha:line.144 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:line.148 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.152 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.156 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.160 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.164 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.168 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.172 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.176 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.180 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.184 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.188 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 81.6356mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.193 { + clearance = 0.0 + y2 = 2.242in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.436471mm + x2 = 25.436471mm + ha:flags { + } + y1 = 2.242in + } + ha:line.196 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 81.6356mm + } + ha:line.199 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 81.6356mm + } + ha:line.202 { + clearance = 0.0 + y2 = 80.6356mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 81.6356mm + } + } + ha:combining { + } + } + } + } + uid = RfWOhvAGP43wbRWBULgAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB37M.fp =================================================================== --- trunk/footprint/connector/DB37M.fp (nonexistent) +++ trunk/footprint/connector/DB37M.fp (revision 34912) @@ -0,0 +1,1668 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.674in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.782in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.89in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.998in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 78.8924mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 81.6356mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = 26 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.147 { + smirror = 0 + ha:attributes { + term = 27 + name = 27 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.151 { + smirror = 0 + ha:attributes { + term = 28 + name = 28 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.155 { + smirror = 0 + ha:attributes { + term = 29 + name = 29 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.159 { + smirror = 0 + ha:attributes { + term = 30 + name = 30 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.163 { + smirror = 0 + ha:attributes { + term = 31 + name = 31 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.167 { + smirror = 0 + ha:attributes { + term = 32 + name = 32 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.62in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.171 { + smirror = 0 + ha:attributes { + term = 33 + name = 33 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.728in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.175 { + smirror = 0 + ha:attributes { + term = 34 + name = 34 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.179 { + smirror = 0 + ha:attributes { + term = 35 + name = 35 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.944in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.183 { + smirror = 0 + ha:attributes { + term = 36 + name = 36 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.052in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.187 { + smirror = 0 + ha:attributes { + term = 37 + name = 37 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.16in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.191 { + smirror = 0 + ha:attributes { + term = 38 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.192 { + smirror = 0 + ha:attributes { + term = 39 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 3.484in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 3.544in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.544in + } + ha:line.28 { + clearance = 0.0 + y2 = 86.9696mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 86.9696mm + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.76 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.80 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.84 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.88 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.92 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.96 { + clearance = 0.0 + y2 = 2.674in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.674in + } + ha:line.100 { + clearance = 0.0 + y2 = 2.782in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.782in + } + ha:line.104 { + clearance = 0.0 + y2 = 2.89in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.89in + } + ha:line.108 { + clearance = 0.0 + y2 = 2.998in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.998in + } + ha:line.112 { + clearance = 0.0 + y2 = 78.8924mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 78.8924mm + } + ha:line.116 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 81.6356mm + } + ha:line.120 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.124 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.128 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.132 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.136 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.140 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.144 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.148 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.152 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.156 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.160 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.164 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:line.168 { + clearance = 0.0 + y2 = 2.62in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.62in + } + ha:line.172 { + clearance = 0.0 + y2 = 2.728in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.728in + } + ha:line.176 { + clearance = 0.0 + y2 = 72.0344mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 72.0344mm + } + ha:line.180 { + clearance = 0.0 + y2 = 2.944in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.944in + } + ha:line.184 { + clearance = 0.0 + y2 = 3.052in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.052in + } + ha:line.188 { + clearance = 0.0 + y2 = 3.16in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.16in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 81.6356mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.193 { + clearance = 0.0 + y2 = 2.242in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.436471mm + x2 = 25.436471mm + ha:flags { + } + y1 = 2.242in + } + ha:line.196 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.199 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 27.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.202 { + clearance = 0.0 + y2 = 33.258mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = 4q1Up8irTZeVRbtKn8sAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB9F.fp =================================================================== --- trunk/footprint/connector/DB9F.fp (nonexistent) +++ trunk/footprint/connector/DB9F.fp (revision 34912) @@ -0,0 +1,828 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.80 { + smirror = 0 + ha:attributes { + term = 11 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 2.032in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.032in + } + ha:line.28 { + clearance = 0.0 + y2 = 1.912in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.912in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.72 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.76 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 1.702in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.81 { + clearance = 0.0 + y2 = 1.486in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.529309mm + x2 = 25.529309mm + ha:flags { + } + y1 = 1.486in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.702in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 1.702in + } + ha:line.87 { + clearance = 0.0 + y2 = 1.702in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 1.702in + } + ha:line.90 { + clearance = 0.0 + y2 = 42.2308mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 1.702in + } + } + ha:combining { + } + } + } + } + uid = bMtrWJ4J7RopF+TYtuYAAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/DB9M.fp =================================================================== --- trunk/footprint/connector/DB9M.fp (nonexistent) +++ trunk/footprint/connector/DB9M.fp (revision 34912) @@ -0,0 +1,828 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.80 { + smirror = 0 + ha:attributes { + term = 11 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 2.032in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.032in + } + ha:line.28 { + clearance = 0.0 + y2 = 1.912in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.912in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.68 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.72 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 1.702in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.81 { + clearance = 0.0 + y2 = 1.486in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.529309mm + x2 = 25.529309mm + ha:flags { + } + y1 = 1.486in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.87 { + clearance = 0.0 + y2 = 31.258mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.90 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 25.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = KO9hCrE+Bz6rQzxqYx8AAAAB + ha:flags { + } + } +} Index: trunk/footprint/connector/pwrjack.fp =================================================================== --- trunk/footprint/connector/pwrjack.fp (nonexistent) +++ trunk/footprint/connector/pwrjack.fp (revision 34912) @@ -0,0 +1,300 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = power jack + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 2.999994mm + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 4.99999mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 4.99999mm + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 4.99999mm + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 5.15239mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 5.15239mm + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 2 + } + proto = 0 + xmirror = 0 + x = 1.24016in + rot = 0.000000 + y = 35.999928mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 1 + } + proto = 0 + xmirror = 0 + x = 1.24016in + rot = 0.000000 + y = 1.14173in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + } + proto = 0 + xmirror = 0 + x = 1.06299in + rot = 0.000000 + y = 1.27953in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.06299in + x2 = 1.06299in + ha:flags { + } + y1 = 21.999956mm + } + ha:line.13 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.06299in + x2 = 35.999928mm + ha:flags { + } + y1 = 35.999928mm + } + ha:line.16 { + clearance = 0.0 + y2 = 21.999956mm + thickness = 10.0mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 35.999928mm + ha:flags { + } + y1 = 35.999928mm + } + ha:line.19 { + clearance = 0.0 + y2 = 21.999956mm + thickness = 10.0mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 1.06299in + ha:flags { + } + y1 = 21.999956mm + } + ha:line.22 { + clearance = 0.0 + y2 = 984.25mil + thickness = 10.0mil + ha:attributes { + } + x1 = 1.06299in + x2 = 35.999928mm + ha:flags { + } + y1 = 984.25mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.24016in + y = 35.999928mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.25 { + clearance = 0.0 + y2 = 32.499977mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.18110331in + x2 = 1.18110331in + ha:flags { + } + y1 = 32.499977mm + } + ha:line.28 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.24016in + x2 = 1.24016in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.31 { + clearance = 0.0 + y2 = 34.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.24016in + x2 = 1.24016in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.34 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.24016in + x2 = 30.500064mm + ha:flags { + } + y1 = 35.999928mm + } + } + ha:combining { + } + } + } + } + uid = N9dhMGRbIqPCtXUXD0MAAAAB + ha:flags { + } + } +} Index: trunk/footprint/parametric/acy =================================================================== --- trunk/footprint/parametric/acy (nonexistent) +++ trunk/footprint/parametric/acy (revision 34912) @@ -0,0 +1,56 @@ +#!/bin/sh + +#@@example acy(300) + +#@@purpose Generate axial lead through-hole component + +#@@desc Generate axial lead through-hole component with 2 pins (typical use: resistor) +#@@params spacing,type,pol,dia + +#@@param:spacing spacing between the two pins +#@@dim:spacing + +#@@param:type silk symbol type +#@@enum:type:block eu-style block resistor symbol +#@@enum:type:endcap block resistor with caps on the ends +#@@enum:type:zigzag us-style zigzag resistor symbol +#@@enum:type:line a single line (e.g. for jumper wires) +#@@enum:type:standing vertically aligned, body standing on pin 1, pin 2 bent back +#@@enum:type:coil wavy coil symbol +#@@enum:type:core wavy coil symbol with a parallel line +#@@enum:type:core2 wavy coil symbol with two parallel lines +#@@optional:type +#@@default:type block +#@@preview_args:type 300 + +#@@param:pol how to mark polarity +#@@enum:pol:none no marking +#@@enum:pol:sign + and - signs; pin 1 is + +#@@enum:pol:bar bar next to pin 1 +#@@enum:pol:dot dot next to pin 1 +#@@optional:pol +#@@default:pol none +#@@preview_args:pol 300 + +#@@param:dia body diameter - affects silk size +#@@dim:dia +#@@optional:dia +#@@default:dia spacing/6 + + +#@@param:wiper silk symbol wiper type +#@@enum:wiper:none no wiper +#@@enum:wiper:parrow perpendicular arrow, pointing inwards +#@@enum:wiper:aarrow angled arrow, pointing outwards +#@@enum:wiper:looparrow arrow starting at pin 2 looping back to point inwards on the body +#@@enum:wiper:thermistor wiper of a thermistor symbol +#@@optional:wiper +#@@default:wiper none +#@@preview_args:wiper 400 + +#@@thumbsize 2 + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/acy.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/acy ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/acy.awk =================================================================== --- trunk/footprint/parametric/acy.awk (nonexistent) +++ trunk/footprint/parametric/acy.awk (revision 34912) @@ -0,0 +1,158 @@ +function wave(type, repeat, step,x,y) +{ + step = len/repeat + for(x = sx1; x < sx2; x += step) { + if (type == 1) { + subc_arc("top-silk", x+step/2, 0, step/2, 0, -180) + } + else if (type == 2) { + y = dia + subc_line("top-silk", x, 0, x+step/4, -y) + subc_line("top-silk", x+step/4, -y, x+3*step/4, y) + subc_line("top-silk", x+3*step/4, y, x+step, 0) + + } + } +} + +BEGIN { + base_unit_mm = 0 + + help_auto() + set_arg(P, "?type", "block") + proc_args(P, "spacing,type,pol,dia", "spacing") + + spacing = parse_dim(P["spacing"]) + dia = either(parse_dim(P["dia"]), spacing/6) + +# oops, dia is a radius rather + dia=dia/2 + + offs_x = +spacing/2 + + subc_begin("acy" P["spacing"], "R1", -spacing/5, -mil(20), 0) + + proto_s = subc_proto_create_pin_square() + proto_r = subc_proto_create_pin_round() + + subc_pstk(proto_s, -spacing/2, 0, 0, 1) + subc_pstk(proto_r, +spacing/2, 0, 0, 2) + + dimension(-spacing/2, 0, +spacing/2, 0, dia*4, "spacing") + +# silk pins + if (P["type"] != "line") { + subc_line("top-silk", -spacing/2, 0, -spacing/4, 0) + subc_line("top-silk", +spacing/4, 0, +spacing/2, 0) + } + +# silk symbol + sx1 = -spacing/4 + sx2 = +spacing/4 + len = sx2-sx1 + if (P["type"] == "block") { + subc_rectangle("top-silk", sx1, -dia, sx2, +dia) + } + else if (P["type"] == "zigzag") { + wave(2, 3) + } + else if (P["type"] == "coil") { + wave(1, 4) + } + else if (P["type"] == "endcap") { + cl1 = len/9 + cl2 = len/8 + y1 = dia*1.2 + y2 = dia + rarc = dia/5 + subc_line("top-silk", sx1+cl2, y2, sx2-cl2, y2) + subc_line("top-silk", sx1+cl2, y2, sx1+cl1, y1) + subc_line("top-silk", sx2-cl2, y2, sx2-cl1, y1) + + subc_line("top-silk", sx1+cl2, -y2, sx2-cl2, -y2) + subc_line("top-silk", sx1+cl2, -y2, sx1+cl1, -y1) + subc_line("top-silk", sx2-cl2, -y2, sx2-cl1, -y1) + + subc_rectangle("top-silk", sx1, y1, sx1+cl1, -y1, "right,NE,SE", rarc) + subc_rectangle("top-silk", sx2-cl1, y1, sx2, -y1, "left,NW,SW", rarc) + } + else if (P["type"] ~ "^core") { + wave(1, 4) + nlines = P["type"] + sub("^core", "", nlines) + if (nlines == "") + nlines = 1 + + cdist = 3 * DEFAULT["line_thickness"] + y = -len/8 + for(nlines = int(nlines); nlines > 0; nlines--) { + y-=cdist + subc_line("top-silk", sx1, y, sx2, y) + } + } + else if (P["type"] == "line") { + subc_line("top-silk", -spacing/2, 0, +spacing/2, 0) + } + else if (P["type"] == "standing") { + r = dia*2 + if (r < DEFAULT["pin_ringdia"]/2*1.2) + r = DEFAULT["pin_ringdia"]/2*1.2 + subc_arc("top-silk", -spacing/2, 0, r, 0, 360) + subc_line("top-silk", -spacing/2, 0, +spacing/2, 0) + } + else { + error("Invalid type") + } + + dimension(sx2, -dia, sx2, dia, spacing/2, "dia") + +# silk wiper + if (P["wiper"] == "thermistor") { + x = len/3 + subc_line("top-silk", -4*x/4, dia*2, -2*x/4, dia*2) + subc_line("top-silk", -2*x/4, dia*2, +2*x/4, -dia*2) + } + else if (P["wiper"] == "aarrow") { + x = len/3 + subc_arrow("top-silk", -2*x/4, dia*2, +2*x/4, -dia*2-mil(30)) + } + else if (P["wiper"] == "parrow") { + subc_arrow("top-silk", 0, -dia*2-mil(30), 0, -dia) + } + else if (P["wiper"] == "looparrow") { + y = -dia*2-mil(30) + x = sx2+len/8 + subc_arrow("top-silk", 0, y, 0, -dia) + subc_line("top-silk", 0, y, x, y) + subc_line("top-silk", x, y, x, 0) + } + else if ((P["wiper"] != "none") && (P["wiper"] != "")) { + error("Invalid wiper") + } + +# silk sign + if (P["pol"] == "sign") { + size=mil(10) + + oy = size*2.2-offs_y + ox = DEFAULT["pin_ringdia"]/2+size*1.1-offs_x + subc_line("top-silk", ox-size, oy, ox+size, oy) + + ox = spacing - (DEFAULT["pin_ringdia"]/2+size*1.1)-offs_x + subc_line("top-silk", ox-size, oy, ox+size, oy) + subc_line("top-silk", ox, oy-size, ox, oy+size) + } + else if (P["pol"] == "bar") { + offs=DEFAULT["line_thickness"] + subc_rectangle("top-silk", -spacing/4-offs, -dia, -spacing/4+offs, +dia, DEFAULT["line_thickness"]*4) + } + else if (P["pol"] == "dot") { + r=2*DEFAULT["line_thickness"]/3 + subc_arc("top-silk", -spacing/4-r*3, -dia/2, r, 0, 360) + } + else if ((P["pol"] != "") && (P["pol"] != "none")) { + error("Invalid pol") + } + + subc_end() +} Index: trunk/footprint/parametric/alf =================================================================== --- trunk/footprint/parametric/alf (nonexistent) +++ trunk/footprint/parametric/alf (revision 34912) @@ -0,0 +1,37 @@ +#!/bin/sh + +#@@example alf(300, schottky) + +#@@purpose Generate ALF: axial lead through-hole component for diodes + +#@@desc Generate axial lead through-hole component with 2 pin diodes +#@@params spacing,type,dia +#@@thumbsize 2 + +#@@param:spacing spacing between the two pins +#@@dim:spacing + +#@@param:type symbol type +#@@enum:type:normal +#@@enum:type:schottky +#@@enum:type:zener +#@@enum:type:tunnel +#@@enum:type:varactor +#@@optional:type +#@@default:type normal +#@@preview_args:type 300 + +#@@param:dia body diameter - affects silk symbol size +#@@dim:dia +#@@optional:dia +#@@default:dia spacing/12 + +#@@param:aspect silk symbol aspect: total width expressed as a portion of spacing +#@@optional:aspect +#@@default:aspect spacing/6 + + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/alf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/alf ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/alf.awk =================================================================== --- trunk/footprint/parametric/alf.awk (nonexistent) +++ trunk/footprint/parametric/alf.awk (revision 34912) @@ -0,0 +1,71 @@ +BEGIN { + base_unit_mm = 0 + + help_auto() + set_arg(P, "?aspect", 6) + set_arg(P, "?type", "normal") + + proc_args(P, "spacing,type,dia,aspect", "spacing") + + spacing = parse_dim(P["spacing"]) + dia = either(parse_dim(P["dia"]), spacing/6) + aspect = P["aspect"] + + offs_x = +spacing/2 + + subc_begin("acy" P["spacing"], "D1", 2.2*spacing/3-offs_x,-mil(50)) + + proto_s = subc_proto_create_pin_square() + proto_r = subc_proto_create_pin_round() + + subc_pstk(proto_s, -spacing/2, 0, 0, 1) + subc_pstk(proto_r, +spacing/2, 0, 0, 2) + + dimension(-spacing/2, 0, +spacing/2, 0, dia*4, "spacing") + +# pins + subc_line("top-silk", -spacing/2, 0, -spacing/aspect, 0) + subc_line("top-silk", +spacing/aspect, 0, +spacing/2, 0) + +# triangle + subc_line("top-silk", +spacing/aspect, -dia, +spacing/aspect, +dia) + subc_line("top-silk", +spacing/aspect, -dia, -spacing/aspect, 0) + subc_line("top-silk", +spacing/aspect, +dia, -spacing/aspect, 0) + + dimension(+spacing/aspect, -dia, +spacing/aspect, dia, "@" spacing*1.2 ";0", "dia") + + +# front cross line with decoration + r = dia*0.3 + if (P["type"] == "normal") { + subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) + } + else if (P["type"] == "zener") { + subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) + subc_line("top-silk", -spacing/aspect, +dia, -spacing/aspect-r, +dia) + subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect+r, -dia) + } + else if (P["type"] == "tunnel") { + subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) + subc_line("top-silk", -spacing/aspect, +dia, -spacing/aspect+r, +dia) + subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect+r, -dia) + } + else if (P["type"] == "varactor") { + subc_line("top-silk", -spacing/aspect, -dia, -spacing/aspect, +dia) + subc_line("top-silk", -spacing/aspect-r, -dia, -spacing/aspect-r, +dia) + } + else if (P["type"] == "schottky") { + cx = -spacing/aspect + r + cy = -(dia-r) + subc_line("top-silk", -spacing/aspect, -(dia-r), -spacing/aspect, +dia-r) + subc_arc("top-silk", cx, cy, r, 0, -180) + cx = -spacing/aspect - r + cy = +(dia-r) + subc_arc("top-silk", cx, cy, r, 0, +180) + } + else if ((P["type"] != "") && (P["type"] != "none")) { + error("Invalid type") + } + + subc_end() +} Index: trunk/footprint/parametric/bga =================================================================== --- trunk/footprint/parametric/bga (nonexistent) +++ trunk/footprint/parametric/bga (revision 34912) @@ -0,0 +1,74 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP + +#@@example bga(map=a1:a2:a3:#:b1:!:b3:#:c1:c2:!) + +#@@purpose Generate ball grid array + +#@@desc Generate a grid of circular pads for BGA chips + +#@@params nx,ny,spacing,balldia,silkmark,map,width,height,automap,automap2 + +#@@param:nx number of pins in the X direction +#@@optional:nx +#@@default:nx deduced from the map + +#@@param:ny number of pins in the Y direction +#@@optional:ny +#@@default:ny deduced from the map + +#@@param:spacing spacing between the pins +#@@dim:spacing +#@@default:spacing 0.5 mm + +#@@param:balldia diameter of a ball +#@@dim:balldia +#@@default:spacing 0.35 mm + +#@@include silkmark.help +#@@optional:silkmark +#@@default:silkmark square +#@@preview_args:silkmark 3,3 + +#@@param:map pin name map; a colon separated list of names, from left to right, rows first. If a name is empty or is a hash mark, a new row is started. If a name is a !, the given pin is missing and no pad is generated. +#@@optional:map + +#@@param:width width of the box (silk rectangle x size) +#@@dim:width +#@@optional:width +#@@default:width two columns wider than the array + +#@@param:height height of the box (silk rectangle y size) +#@@dim:height +#@@optional:height +#@@default:height two columns higher than the array + + +#@@param:automap assume a regular nx*ny array, automap (autonumber) the pins +#@@optional:automap +#@@enum:automap:none do not autonumber pins +#@@enum:automap:alnum number y rows from A..Z (then AA..AZ) from top to bottom, number x rows from 0..nx left to right +#@@default:none +#@@preview_args:automap 3,3 +#@@thumbsize:automap 3 +#@@thumbnum:automap 1 + +#@@param:automap2 change how automap behaves - multiple values separated by colon are accepted (e.g. automap2=pivot,reversex) +#@@enum:automap2:pivot swap x and y +#@@enum:automap2:reversex number x from right to left +#@@enum:automap2:reversey number y from bottom up +#@@preview_args:automap2 3,3,automap=alnum +#@@thumbsize:automap2 3 +#@@thumbnum:automap2 1 + +#@@param:alphabet the alphabet automap may use for rows; use A..Z if unspecified, else use the letters in this alphabet (in order). List letters without separator, e.g. ABCDEF +#@@preview_args:automap2 3,3,automap=alnum,alphabet=QDT +#@@thumbsize:automap2 3 +#@@thumbnum:automap2 1 + + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/bga.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/bga ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/bga.awk =================================================================== --- trunk/footprint/parametric/bga.awk (nonexistent) +++ trunk/footprint/parametric/bga.awk (revision 34912) @@ -0,0 +1,125 @@ +function pinalpha(p, s) +{ + if (p >= alphabet_len) + s = pinalpha(int(p/alphabet_len)-1) + return s sprintf("%s", substr(alphabet, (p % alphabet_len)+1, 1)) +} + +function automap(algo, pivot, revx, revy ,xx,yy) +{ + if (algo == 1) { + for(y = 0; y < ny; y++) { + if (revy) + yy = ny - y - 1 + else + yy = y + for(x = 0; x < nx; x++) { + if (revx) + xx = nx - x - 1 + else + xx = x + if (pivot) + MAP[x,y] = pinalpha(xx) yy+1 + else + MAP[x,y] = pinalpha(yy) xx+1 + } + } + } +} + +BEGIN { + help_auto() + set_arg(P, "?spacing", "0.5mm") + set_arg(P, "?balldia", "0.35mm") + set_arg(P, "?silkmark", "arc") + + proc_args(P, "nx,ny,spacing,balldia,silkmark,map,width,height,automap,automap2,alphabet", "") + + step = parse_dim(P["spacing"]) + + half=step/2 + + nx = int(P["nx"]) + ny = int(P["ny"]) + + alphabet = P["alphabet"] + if (alphabet == "") + alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + alphabet_len = length(alphabet) + + if (P["map"] != "") { + v = split(P["map"], A, ":") + x = 0 + y = 0 + for(n = 1; n <= v; n++) { + if ((A[n] == "") || (A[n] == "#")) { + x = 0 + y++ + continue; + } + if (x > nx) + nx = x + if (y > ny) + ny = y + print x,y,A[n] > "/dev/stderr" + MAP[x, y] = A[n] + x++ + } + ny++; + nx++; + } + else { + if ((nx == "") || (ny == "")) + error("missing argument: need nx,ny or a map") + if (P["automap"] ~ "alnum") + automap(1, (P["automap2"] ~ "pivot"), (P["automap2"] ~ "reversex"), (P["automap2"] ~ "reversey")) + else if ((P["automap"] ~ "none") || (P["automap"] == "")) { + } + else + error("automap should be alnum or none") + } + + balldia = parse_dim(P["balldia"]) + bw = parse_dim(P["width"]) + bh = parse_dim(P["height"]) + + if (bw == "") + bw = (nx+1)*step + if (bh == "") + bh = (ny+1)*step + + xo = (nx-1)*step/2 + yo = (ny-1)*step/2 + + subc_begin(nx "*" ny, "U1", 0, -bh) + + proto = subc_proto_create_pad_circle(balldia) + + for(x = 0; x < nx; x++) { + for(y = 0; y < ny; y++) { + xx = x * step - xo + yy = y * step - yo + name = MAP[x,y] + if (name == "!") + continue + if (name == "") + name = "NC" + subc_pstk(proto, xx, yy, 0, name) + } + } + + dimension(-xo, -yo, -xo+step, -yo, bw/2, "spacing") + dimension(-xo-balldia/2, +yo, -xo+balldia/2, +yo, -bw*0.75, "balldia") + + + xx = -1 * (bw/2) + yy = -1 * (bh/2) + subc_rectangle("top-silk", xx, yy, bw/2, bh/2) + + dimension(xx, yy, bw/2, yy, bw/2, "width") + dimension(bw/2, yy, bw/2, bh/2, +bh/2, "height") + + silkmark(P["silkmark"], xx, yy, half*1.5) + + subc_end() +} Index: trunk/footprint/parametric/common.awk =================================================================== --- trunk/footprint/parametric/common.awk (nonexistent) +++ trunk/footprint/parametric/common.awk (revision 34912) @@ -0,0 +1,645 @@ +### DO NOT USE THIS FILE ### + +# This file is provided only for compatibility with old parametric footprints. +# New parametric footprints should use common_subc.awk because that uses lihata +# subcircuits instead of obsolete element format. + +#@@param:pin_ringdia pin's copper ring (annulus) outer diameter (in mil by default, mm suffix can be used) +#@@optional:pin_ringdia +#@@dim:pin_ringdia + +#@@param:pin_clearance pin's copper clearance diameter (in mil by default, mm suffix can be used) +#@@optional:pin_clearance +#@@dim:pin_clearance + +#@@param:pin_mask pin's solder mask diameter (in mil by default, mm suffix can be used) +#@@optional:pin_mask +#@@dim:pin_mask + +#@@param:pin_drill copper pin's drill diameter (in mil by default, mm suffix can be used) +#@@optional:pin_drill +#@@dim:pin_drill + +#@@param:pad_thickness width of pads (in mil by default, mm suffix can be used) +#@@optional:pad_thickness +#@@dim:pad_thickness + +#@@param:pad_clearance copper clearance around the pad (in mil by default, mm suffix can be used) +#@@optional:pad_clearance +#@@dim:pad_clearance + +#@@param:pad_mask pin's solder mask (in mil by default, mm suffix can be used) +#@@optional:pad_mask +#@@dim:pad_mask + +#@@param:line_thickness silk line thickness (in mil by default, mm suffix can be used) +#@@optional:line_thickness +#@@dim:line_thickness + +BEGIN { + q="\"" + + DEFAULT["pin_ringdia"] = 8000 + DEFAULT["pin_ringdia", "dim"] = 1 + + DEFAULT["pin_clearance"] = 5000 + DEFAULT["pin_clearance", "dim"] = 1 + + DEFAULT["pin_mask"] = 8600 + DEFAULT["pin_mask", "dim"] = 1 + + DEFAULT["pin_drill"] = 3937 + DEFAULT["pin_drill", "dim"] = 1 + + DEFAULT["line_thickness"] = 1000 + DEFAULT["line_thickness", "dim"] = 1 + + DEFAULT["pad_thickness"] = 2000 + DEFAULT["pad_thickness", "dim"] = 1 + DEFAULT["pad_clearance"] = 1000 + DEFAULT["pad_clearance", "dim"] = 1 + DEFAULT["pad_mask"] = 3000 + DEFAULT["pad_mask", "dim"] = 1 + + DEFAULT["pin_flags"] = "__auto" + + s_default=1 + s_weak=2 + s_explicit=3 + + offs_x = 0 + offs_y = 0 + + pi=3.141592654 +} + +# Throw an error and exit +function error(msg) +{ + print "Error: " msg > "/dev/stderr" + exit 1 +} + +# return a if it is not empty, else return b +function either(a, b) +{ + return a != "" ? a : b +} + +# strip leading/trailing whitespaces +function strip(s) +{ + sub("^[ \t\r\n]*", "", s) + sub("[ \t\r\n]*$", "", s) + return s +} + +# translate coordinates +function coord_x(x) { return int(x + offs_x) } +function coord_y(y) { return int(y + offs_y) } + +# generate an element header line; any argument may be empty +function element_begin(desc, name, value, cent_x, cent_y, text_x, text_y, text_dir, text_scale) +{ + if (desc == "") { + desc = gen "(" args ")" + gsub("[\r\n\t ]*[?][^,]*,[\r\n\t ]*", "", desc) + gsub("[\r\n\t]", " ", desc) + } + print "Element[" q q, q desc q, q name q, q value q, + int(either(cent_x, 0)), int(either(cent_y, 0)), + int(either(text_x, 0)), int(either(text_y, 0)), + int(either(text_dir, 0)), int(either(text_scale, 100)), q q "]" + print "(" +} + +# generate an element footer line +function element_end() +{ + print ")" +} + +# generate a pin; arguments from ringdia are optional (defaults are in global vars pin_*) +function element_pin(x, y, number, flags, ringdia, clearance, mask, drill, name) +{ + if (number == "") + number = ++pin_number + + flags = either(flags, DEFAULT["pin_flags"]) + + if (flags == "__auto") { + if (number == 1) + flags = "square" + else + flags = "" + } + + if (flags == "none") + flags = "" + + print " Pin[" coord_x(x), coord_y(y), + int(either(ringdia, DEFAULT["pin_ringdia"])), int(either(clearance, DEFAULT["pin_clearance"])), int(either(mask, DEFAULT["pin_mask"])), + int(either(drill, DEFAULT["pin_drill"])), q name q, q number q, q flags q "]" +} + +# draw element pad +function element_pad(x1, y1, x2, y2, thickness, number, flags, clearance, mask, name) +{ + print " Pad[", coord_x(x1), coord_y(y1), coord_x(x2), coord_y(y2), int(either(thickness, DEFAULT["pad_thickness"])), + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q flags q "]" +} + +# draw element pad - no thickness, but exact corner coordinates given +function element_pad_rectangle(x1, y1, x2, y2, number, flags, clearance, mask, name, th,dx,dy,cx,cy) +{ + if (x2 < x1) { + th = x2 + x2 = x1 + x1 = th + } + if (y2 < y1) { + th = y2 + y2 = y1 + y1 = th + } + + dx = x2-x1 + dy = y2-y1 + + if (dx >= dy) { + th = dy + cy = (y1+y2)/2 + + print " Pad[", coord_x(x1)+th/2, coord_y(cy), coord_x(x2)-th/2, coord_y(cy), th, + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q flags q "]" + } + else { + th = dx + cx = (x1+x2)/2 + + print " Pad[", coord_x(cx), coord_y(y1)+th/2, coord_x(cx), coord_y(y2)-th/2, th, + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q flags q "]" + } +} + +# draw a matrix of pads; top-left corner is x1;y1, there are nx*ny pads +# of w*h size. rows/cols of pads are drawn with ox and oy offset +function element_pad_matrix(x1, y1, nx, ny, w, h, ox, oy, number, flags, clearance, mask, name, ix,iy) +{ + for(iy = 0; iy < ny; iy++) + for(ix = 0; ix < nx; ix++) + element_pad_rectangle(x1+ix*ox, y1+iy*oy, x1+ix*ox+w, y1+iy*oy+h, number, flags, clearance, mask, name) +} + +# draw element pad circle +function element_pad_circle(x1, y1, radius, number, clearance, mask, name) +{ + print " Pad[", coord_x(x1), coord_y(y1), coord_x(x1), coord_y(y1), int(either(radius, DEFAULT["pad_thickness"])), + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q "" q "]" +} + +# draw a line on silk; thickness is optional (default: line_thickness) +function element_line(x1, y1, x2, y2, thickness) +{ + print " ElementLine[" coord_x(x1), coord_y(y1), coord_x(x2), coord_y(y2), int(either(thickness, DEFAULT["line_thickness"])) "]" +} + +function element_arrow(x1, y1, x2, y2, asize, thickness ,vx,vy,nx,ny,len,xb,yb) +{ + element_line(x1, y1, x2,y2, thickness) + + if (asize == 0) + asize = mil(20) + + vx = x2-x1 + vy = y2-y1 + len = sqrt(vx*vx+vy*vy) + if (len != 0) { + vx /= len + vy /= len + nx = vy + ny = -vx + xb = x2 - vx*asize + yb = y2 - vy*asize +# element_line(x2, y2, xb + 1000, yb + 1000) + element_line(x2, y2, xb + nx*asize/2, yb + ny*asize/2) + element_line(x2, y2, xb - nx*asize/2, yb - ny*asize/2) + element_line(xb - nx*asize/2, yb - ny*asize/2, xb + nx*asize/2, yb + ny*asize/2) + } +} + +# draw a rectangle of silk lines +# omit sides as requested in omit +# if r is non-zero, round corners - omit applies as NW, NW, SW, SE +# if omit includes "arc", corners are "rounded" with lines +function element_rectangle(x1, y1, x2, y2, omit, r, thickness ,tmp,r1,r2) +{ +# order coords for round corners + if (x1 > x2) { + tmp = x1 + x1 = x2 + x2 = tmp + } + if (y1 > y2) { + tmp = y1 + y1 = y2 + y2 = tmp + } + + if (!(omit ~ "left")) { + r1 = (omit ~ "NW") ? 0 : r + r2 = (omit ~ "SW") ? 0 : r + element_line(x1, y1+r1, x1, y2-r2, thickness) + } + if (!(omit ~ "top")) { + r1 = (omit ~ "NW") ? 0 : r + r2 = (omit ~ "NE") ? 0 : r + element_line(x1+r1, y1, x2-r2, y1, thickness) + } + if (!(omit ~ "bottom")) { + r1 = (omit ~ "SE") ? 0 : r + r2 = (omit ~ "SW") ? 0 : r + element_line(x2-r1, y2, x1+r2, y2, thickness) + } + if (!(omit ~ "right")) { + r1 = (omit ~ "SE") ? 0 : r + r2 = (omit ~ "NE") ? 0 : r + element_line(x2, y2-r1, x2, y1+r2, thickness) + } + + if (r > 0) { + if (omit ~ "arc") { + if (!(omit ~ "NW")) + element_line(x1, y1+r, x1+r, y1) + if (!(omit ~ "SW")) + element_line(x1, y2-r, x1+r, y2) + if (!(omit ~ "NE")) + element_line(x2, y1+r, x2-r, y1) + if (!(omit ~ "SE")) + element_line(x2, y2-r, x2-r, y2) + } + else { + if (!(omit ~ "NW")) + element_arc(x1+r, y1+r, r, r, 270, 90) + if (!(omit ~ "SW")) + element_arc(x1+r, y2-r, r, r, 0, 90) + if (!(omit ~ "NE")) + element_arc(x2-r, y1+r, r, r, 180, 90) + if (!(omit ~ "SE")) + element_arc(x2-r, y2-r, r, r, 90, 90) + } + } +} + +# draw a rectangle corners of silk lines, wx and wy long in x and y directions +# omit sides as requested in omit: NW, NW, SW, SE +# corners are always sharp +function element_rectangle_corners(x1, y1, x2, y2, wx, wy, omit, thickness ,tmp) +{ + if (!(omit ~ "NW")) { + element_line(x1, y1, x1+wx, y1, thickness) + element_line(x1, y1, x1, y1+wy, thickness) + } + if (!(omit ~ "NE")) { + element_line(x2-wx, y1, x2, y1, thickness) + element_line(x2, y1, x2, y1+wy, thickness) + } + if (!(omit ~ "SW")) { + element_line(x1, y2, x1+wx, y2, thickness) + element_line(x1, y2-wy, x1, y2, thickness) + } + if (!(omit ~ "SE")) { + element_line(x2-wx, y2, x2, y2, thickness) + element_line(x2, y2-wy, x2, y2, thickness) + } +} + +# draw a line on silk; thickness is optional (default: line_thickness) +function element_arc(cx, cy, rx, ry, a_start, a_delta, thickness) +{ + print " ElementArc[" coord_x(cx), coord_y(cy), int(rx), int(ry), int(a_start), int(a_delta), int(either(thickness, DEFAULT["line_thickness"])) "]" +} + + +# convert coord given in mils to footprint units +function mil(coord) +{ + return coord * 100 +} + +# reverse mil(): converts footprint units back to mil +function rev_mil(coord) +{ + return coord/100 +} + + +# convert coord given in mm to footprint units +function mm(coord) +{ + return coord*3937 +} + +# reverse mm(): converts footprint units back to mm +function rev_mm(coord) +{ + return coord/3937 +} + + +function set_arg_(OUT, key, value, strength) +{ + if (OUT[key, "strength"] > strength) + return + + OUT[key] = value + OUT[key, "strength"] = strength +} + +# set parameter key=value with optioal strength (s_* consts) in array OUT[] +# set only if current strength is stronger than the original value +# if key starts with a "?", use s_weak +# if key is in DEFAULT[], use DEFAULT[] instead of OUT[] +function set_arg(OUT, key, value ,strength) +{ + if (strength == "") + strength = s_explicit + if (key ~ "^[?]") { + sub("^[?]", "", key) + strength = s_weak + } + + if (key in DEFAULT) { + if (DEFAULT[key, "dim"]) + value = parse_dim_(value, 0) + set_arg_(DEFAULT, key, value, strength) + } + else + set_arg_(OUT, key, value, strength) +} + +# Process a generator argument list from arg_names. Save the result in +# array OUT. If mandatory is specified, check whether all mandatory +# parameters are specified +# Both arg_names and mandatory are comma separated list of argument names +function proc_args(OUT, arg_names, mandatory, N,A,M,v,n,key,val,pos) +{ + gsub(" ", "", arg_names) + gsub(" ", "", mandatory) + split(arg_names, N, ",") + v = split(args, A, ",") + +# fill in all named and positional arguments + pos = 1 + for(n = 1; n <= v; n++) { + A[n] = strip(A[n]) + if (A[n] == "") + continue + if (A[n] ~ "=") { +# named + key=A[n] + val=A[n] + sub("=.*", "", key) + sub("^[^=]*=", "", val) + set_arg(OUT, key, val, s_explicit) + } + else { +# positional + if (N[pos] == "") { + error("too many positional arguments at " A[n]) + } + while((N[pos] in OUT) && (N[pos, "strength"] == s_explicit)) pos++ + set_arg(OUT, N[pos], A[n], s_explicit) + pos++ + } + } + +# check whether all mandatory arguments are specified + v = split(mandatory, M, ",") + for(n = 1; n <= v; n++) { + if (!(M[n] in OUT)) { + error("missing argument " M[n] " (or positional " n ")") + exit 1 + } + } +} + +function parse_dim_(h, fallback_mil) +{ + if (h == "") + return "" + if (h ~ "mm$") { + sub("mm", "", h) + return mm(h) + } + if (h ~ "um$") { + sub("um", "", h) + return mm(h)/1000 + } + if (h ~ "nm$") { + sub("nm", "", h) + return mm(h)/1000000 + } + if (h ~ "cm$") { + sub("cm", "", h) + return mm(h)*10 + } + if (h ~ "m$") { + sub("m", "", h) + return mm(h)*1000 + } + if (h ~ "km$") { + sub("km", "", h) + return mm(h)*1000000 + } + + if (h ~ "in$") { + sub("in", "", h) + return mil(h)*1000 + } + if (h ~ "dmil$") { + sub("dmil", "", h) + return mil(h)/10 + } + if (h ~ "cmil$") { + sub("cmil", "", h) + return mil(h)/100 + } + if (h ~ "mil$") { + sub("mil", "", h) + return mil(h) + } + if (fallback_mil) + return mil(h) + else + return h +} + +# Assume h is a dimension and convert it +function parse_dim(h) +{ + return parse_dim_(h, 1) +} + +# Draw a DIP outline: useful for any rectangular package with a little +# half circle centered on the top line +# arcr: radius of the half circle +# xhalf: optional coordinate where the circle should be put +function dip_outline(x1, y1, x2, y2, arcr ,xhalf) +{ + if (xhalf == "") + xhalf=(x1+x2)/2 + + element_rectangle(x1, y1, x2, y2, "top") + element_line(x1, y1, xhalf-arcr, y1) + element_line(xhalf+arcr, y1, x2, y1) + + element_arc(xhalf, y1, arcr, arcr, 0, 180) +} + +# decide whether x is true or false +# returns 1 if true +# returns 0 if false +function tobool(x) +{ + if (x == int(x)) + return (int(x) != 0) + + x = tolower(x) + return (x == "true") || (x == "yes") || (x == "on") +} + +# default pin1 mark on a box +# style: mark style, ":" separated list +# x,y: the coordinates of the origin corner (top-left) +# half: half the stepping of the pin grid - the size of the mark +# step: optional size of the external arrow or square (defaults to 2*half) +function silkmark(style, x, y, half, step, S,n,v) +{ + if (step == "") + step = half*2 + + v = split(style, S, ":") + + for(n = 1; n <= v; n++) { + if (S[n] == "angled") { + element_line(x+half, y, x, y+half) + } + else if (S[n] == "square") { + element_line(x, y+step, x+2*half, y+step) + element_line(x+step, y, x+2*half, y+step) + } + else if ((S[n] == "external") || (S[n] == "externalx")) { + element_line(x, y+half, x-step+half, y+half/2) + element_line(x, y+half, x-step+half, y+half*1.5) + element_line(x-step+half, y+half/2, x-step+half, y+half*1.5) + } + else if (S[n] == "externaly") { + element_line(x+half, y, x-half/2+half, y-step+half) + element_line(x+half, y, x+half/2+half, y-step+half) + element_line(x-half/2+half, y-step+half, x+half/2+half, y-step+half) + } + else if (S[n] == "external45") { + element_line(x, y, x-half, y-half/3) + element_line(x, y, x-half/3, y-half) + element_line(x-half, y-half/3, x-half/3, y-half) + } + else if (S[n] == "arc") { + element_arc(x, y, step/2, step/2, 180, 270) + } + else if (S[n] == "circle") { + element_arc(x, y, step/2, step/2, 0, 360) + } + else if (S[n] == "dot") { + element_arc(x-step/2, y-step/2, step/4, step/4, 0, 360) + } + else if ((S[n] != "none") && (S[n] != "")) { + error("invalid silkmark parameter: " S[n]) + } + } +} + +# output a dimension specification between x1;y1 and x2;y2, text distance at dist +# for a name,value pair +# if name is empty, only value is printed +# if value is empty, it's calculated +# if only name should be printed, value should be "!" +# if dist starts with a "@", it's the absolute coordinate of the center of the dim line (text base), else it's relative distance from the measured line +function dimension(x1, y1, x2, y2, dist, name, value, vx,vy) +{ + print "#dimension", coord_x(x1), coord_y(y1), coord_x(x2), coord_y(y2), dist, name, value +} + +function help_extract(SEEN, fn, dirn, OVER, IGN, WANT,tmp,key,val,i,skip) +{ + if (fn in SEEN) + return + SEEN[fn]++ + print "#@@info-gen-extract " fn + close(fn) + while((getline line < fn) > 0) { + if (line ~ "^#@@include") { + sub("^#@@include[ \t]*", "", line) + tmp = dirn "/" line + WANT[tmp]++ + } + else if (line ~ "^#@@over@ignore") { + key = line + sub("^#@@over@ignore:", "", key) + sub(" .*", "", key) + IGN[key] = 1 + } + else if (line ~ "^#@@over@") { + key = line + sub("^#@@over@", "", key) + val = "#@@" key + sub(" .*", "", key) + OVER[key] = val + } + else if (line ~ "^#@@") { + key = line + sub("^#@@", "", key) + sub(" .*", "", key) + skip = 0 + for(i in IGN) { + if (key ~ i) + skip = 1 + } + if (skip) + continue + if (key in OVER) { + print OVER[key] + OVER[key "::PRINTED"] = 1 + } + else + print line + } + } + close(fn) + for(tmp in WANT) + help_extract(SEEN, tmp, dirn, OVER, IGN) +} + +function help_print( SEEN, OVER, dirn, k) +{ + print "#@@info-generator pcb-rnd common.awk" + dirn = genfull + sub("/[^/]*$", "", dirn) + help_extract(SEEN, genfull, dirn, OVER) + for(k in OVER) { + if (!(k ~ "::PRINTED$") && !((k "::PRINTED") in OVER)) + print OVER[k] + } +} + +function help_auto() +{ + if ((args ~ "^--help") || (args ~ ",[ \t]*--help")) { + help_print() + exit(0) + } +} Index: trunk/footprint/parametric/common_subc.awk =================================================================== --- trunk/footprint/parametric/common_subc.awk (nonexistent) +++ trunk/footprint/parametric/common_subc.awk (revision 34912) @@ -0,0 +1,1205 @@ +#@@param:pin_ringdia pin's copper ring (annulus) outer diameter (in mil by default, mm suffix can be used) +#@@optional:pin_ringdia +#@@dim:pin_ringdia + +#@@param:pin_clearance pin's copper clearance diameter (in mil by default, mm suffix can be used) +#@@optional:pin_clearance +#@@dim:pin_clearance + +#@@param:pin_mask pin's solder mask diameter (in mil by default, mm suffix can be used) +#@@optional:pin_mask +#@@dim:pin_mask + +#@@param:pin_mask_offs how much bigger (+) or smaller (-) the mask opening should be compared to copper (in mil by default, mm suffix can be used) +#@@optional:pin_mask_offs +#@@dim:pin_mask_offs + +#@@param:pin_mask_ratio pin mask opening should be copper size * this ratio (numbers larger than 1 mean opening with a gap, 1.00 means exactly as big as the copper shape) +#@@optional:pin_mask_ratio +#@@dim:pin_mask_ratio + +#@@param:pin_drill copper pin's drill diameter (in mil by default, mm suffix can be used) +#@@optional:pin_drill +#@@dim:pin_drill + +#@@param:pad_thickness width of pads (in mil by default, mm suffix can be used) +#@@optional:pad_thickness +#@@dim:pad_thickness + +#@@param:pad_clearance copper clearance around the pad (in mil by default, mm suffix can be used) +#@@optional:pad_clearance +#@@dim:pad_clearance + +#@@param:pad_mask pin's solder mask (in mil by default, mm suffix can be used) +#@@optional:pad_mask +#@@dim:pad_mask + +#@@param:pad_mask_offs how much bigger (+) or smaller (-) the mask opening should be compared to copper (in mil by default, mm suffix can be used) +#@@optional:pad_mask_offs +#@@dim:pad_mask_offs + +#@@param:pad_mask_ratio pad mask opening should be copper size * this ratio (numbers larger than 1 mean opening with a gap, 1.00 means exactly as big as the copper shape) +#@@optional:pad_mask_ratio +#@@dim:pad_mask_ratio + +#@@param:pad_paste pad's paste line thickness (in mil by default, mm suffix can be used) +#@@optional:pad_paste +#@@dim:pad_paste + +#@@param:pad_paste_offs how much bigger (+) or smaller (-) the paste should be compared to copper (in mil by default, mm suffix can be used) +#@@optional:pad_paste_offs +#@@dim:pad_paste_offs + +#@@param:pad_paste_ratio pad paste should be copper size * this ratio (numbers smaller than 1 mean smaller paste, 1.00 means exactly as big as the copper shape) +#@@optional:pad_paste_ratio +#@@dim:pad_paste_ratio + +#@@param:line_thickness silk line thickness (in mil by default, mm suffix can be used) +#@@optional:line_thickness +#@@dim:line_thickness + +BEGIN { + q="\"" + + DEFAULT["pin_ringdia"] = mil(80) + DEFAULT["pin_ringdia", "dim"] = 1 + + DEFAULT["pin_clearance"] = mil(50) + DEFAULT["pin_clearance", "dim"] = 1 + + DEFAULT["pin_mask"] = mil(86) + DEFAULT["pin_mask", "dim"] = 1 + DEFAULT["pin_mask_offs"] = "" # use copper size + DEFAULT["pin_mask_offs", "dim"] = 1 + DEFAULT["pin_mask_ratio"] = "" # use copper size + + DEFAULT["pin_drill"] = mm(1) + DEFAULT["pin_drill", "dim"] = 1 + + DEFAULT["line_thickness"] = mil(10) + DEFAULT["line_thickness", "dim"] = 1 + + DEFAULT["pad_thickness"] = mil(20) + DEFAULT["pad_thickness", "dim"] = 1 + DEFAULT["pad_clearance"] = mil(10) + DEFAULT["pad_clearance", "dim"] = 1 + DEFAULT["pad_mask"] = mil(30) + DEFAULT["pad_mask", "dim"] = 1 + DEFAULT["pad_mask_offs"] = "" # use copper size + DEFAULT["pad_mask_offs", "dim"] = 1 + DEFAULT["pad_mask_ratio"] = "" # use copper size + DEFAULT["pad_paste"] = "" # use copper size + DEFAULT["pad_paste", "dim"] = 1 + DEFAULT["pad_paste_offs"] = "" # use copper size + DEFAULT["pad_paste_offs", "dim"] = 1 + DEFAULT["pad_paste_ratio"] = "" # use copper size + + DEFAULT["pin_flags"] = "__auto" + + s_default=1 + s_weak=2 + s_explicit=3 + + offs_x = 0 + offs_y = 0 + objid = 1 + proto_next_id = 0 + + pi=3.141592654 + + NL = "\n" + +# minuid + for(n = 32; n < 127; n++) + ORD[sprintf("%c", n)] = n + BASE64 = "ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz0123456789+/" +} + +function minuid_add(SUM, s ,n,v,c1,c2) +{ + v = length(s) + for(n = 1; n <= v; n++) + SUM[(n-1) % 20] += ORD[substr(s, n, 1)]-32 +} + +function minuid_str(SUM, s ,n) +{ + s = "Prm/" + for(n = 0; n < 20; n++) + s = s substr(BASE64, SUM[n] % 64, 1) + return s +} + +# Throw an error and exit +function error(msg) +{ + print "Error: " msg > "/dev/stderr" + exit 1 +} + +# return a if it is not empty, else return b +function either(a, b) +{ + return a != "" ? a : b +} + +# strip leading/trailing whitespaces +function strip(s) +{ + sub("^[ \t\r\n]*", "", s) + sub("[ \t\r\n]*$", "", s) + return s +} + +function lht_str(s) +{ + if (s ~ "[^A-Za-z0-9 _-]") { + gsub("}", "\\}", s) + return "{" s "}" + } + return s +} + +function unit(coord) +{ + if (coord == "") + coord = 0 + if (base_unit_mm) + return coord "mm" + return coord "mil" +} + +function subc_text(layer, x, y, str, scale, rot, flags, attributes ,s) +{ + + s = s " ha:text." (++objid) "{" NL + s = s " scale = " either(scale, 100) NL + if (attributes != "") + s = s " ha:attributes {" attributes "}" NL + s = s " x = " unit(x) NL + s = s " y = " unit(y) NL + s = s " rot = " either(rot, 0) NL + if (str == "") + str = "%a.parent.refdes%" + s = s " string = " str NL + s = s " fid = 0" NL + s = s " ha:flags {" flags "}" NL + s = s " }" NL + + LAYER[layer] = LAYER[layer] NL s +} + +function subc_line(layer, x1, y1, x2, y2, thick, clr, flags, attributes ,s) +{ + s = s " ha:line." (++objid) " {" NL + s = s " x1 = " unit(x1) NL + s = s " y1 = " unit(y1) NL + s = s " x2 = " unit(x2) NL + s = s " y2 = " unit(y2) NL + s = s " thickness = " unit(either(thick, DEFAULT["line_thickness"])) NL + s = s " clearance = " unit(either(clr, 0)) NL + if (attributes != "") + s = s " ha:attributes {" attributes "}" NL + s = s " ha:flags {" flags "}" NL + s = s " }" NL + + LAYER[layer] = LAYER[layer] NL s +} + +function subc_arc(layer, cx, cy, r, a_start, a_delta, thick, clr, flags, attributes ,s) +{ + s = s " ha:arc." (++objid) " {" NL + s = s " x = " unit(cx) NL + s = s " y = " unit(cy) NL + s = s " astart = " a_start NL + s = s " adelta = " a_delta NL + s = s " thickness = " unit(either(thick, DEFAULT["line_thickness"])) NL + s = s " clearance = " unit(either(clr, 0)) NL + s = s " width = " unit(r) NL + s = s " height = " unit(r) NL + if (attributes != "") + s = s " ha:attributes {" attributes "}" NL + s = s " ha:flags {" flags "}" NL + s = s " }" NL + + LAYER[layer] = LAYER[layer] NL s +} + +function subc_rect(layer, x1, y1, x2, y2, clearance, flags, attributes ,s) +{ + w = w/2 + h = h/2 + s = s " ha:polygon." (++objid) " {" NL + s = s " clearance=" unit(clearance) NL + s = s " li:geometry {" NL + s = s " ta:contour {" NL + s = s " { " unit(x1) "; " unit(y1) " }" NL + s = s " { " unit(x2) "; " unit(y1) " }" NL + s = s " { " unit(x2) "; " unit(y2) " }" NL + s = s " { " unit(x1) "; " unit(y2) " }" NL + s = s " }" NL + s = s " }" NL + s = s " ha:attributes {" attributes "}" NL + s = s " ha:flags {" flags "}" NL + s = s " }" NL + + LAYER[layer] = LAYER[layer] NL s +} + +# POLY[] is an array indexed between 0 to 2*N-1 for a polygon of N +# vertices, packed as x0;y0;x1;y1;x2;y2 ... xN;yN. The usual pcb-rnd +# polygon rules apply: at least 3 vertices, no self-intersection. This +# call does not make any attempt on cheking polygon validity. +function subc_poly(layer, POLY, clearance, flags, attributes ,s,n) +{ + w = w/2 + h = h/2 + s = s " ha:polygon." (++objid) " {" NL + s = s " clearance=" unit(clearance) NL + s = s " li:geometry {" NL + s = s " ta:contour {" NL + for(n = 0; (n in POLY); n += 2) + s = s " { " unit(POLY[n]) "; " unit(POLY[n+1]) " }" NL + s = s " }" NL + s = s " }" NL + s = s " ha:attributes {" attributes "}" NL + s = s " ha:flags {" flags "}" NL + s = s " }" NL + + LAYER[layer] = LAYER[layer] NL s +} + +# reset a polygon so it has no vertices +function poly_reset(POLY ,n) +{ + for(n = 0; (n in POLY); n += 2) + delete POLY[n] + POLY["len"] = 0 +} + +# append x;y to the end of a polygon's vertex list +function poly_append(POLY, x, y) +{ + POLY[POLY["len"]++] = x; + POLY[POLY["len"]++] = y; +} + +# start generating a subcircuit +function subc_begin(footprint, refdes, refdes_x, refdes_y, refdes_dir, ATTR ,a) +{ + print "li:pcb-rnd-subcircuit-v6 {" + print " ha:subc." (++objid) "{" + print " ha:attributes {" + print " footprint = " lht_str(footprint) + if (refdes != "") + print " refdes = " lht_str(refdes) + for(a in ATTR) + print " " a " = " lht_str(ATTR[a]); + print " }" + + + subc_text("top-silk", refdes_x, refdes_y, "%a.parent.refdes%", 100, text_dir, "dyntext = 1;floater=1;") + LAYER_TYPE["subc-aux"] = "top-misc-virtual" + subc_line("subc-aux", -offs_x, -offs_y, -offs_x + mm(1), -offs_y, mm(0.1), 0, "", "subc-role = x"); + subc_line("subc-aux", -offs_x, -offs_y, -offs_x, -offs_y + mm(1), mm(0.1), 0, "", "subc-role = y"); + subc_line("subc-aux", -offs_x, -offs_y, -offs_x, -offs_y, mm(0.1), 0, "", "subc-role = origin"); +} + +# generate subcircuit footers +function subc_end( layer,n,v,L,lt,UID) +{ + minuid_add(UID, tolower(gen)) + for(n in P) { + minuid_add(UID, tolower(n)) + minuid_add(UID, " " P[n]) + } + print " ha:data {" + print " li:padstack_prototypes {" + for(n = 0; n < proto_next_id; n++) { + if (PROTO_COMMENT[n] != "") + print PROTO_COMMENT[n] + print " ha:ps_proto_v6." n " {" + print PROTO[n] + print " }" + } + print " }" + +# global objects (padstack refs) + print " li:objects {" + print globals + print " }" + +# layers and layer objects + print " li:layers {" + for(layer in LAYER) { + lt = either(LAYER_TYPE[layer], layer) + v = split(lt, L, "-") + print " ha:" layer " {" + print " lid = 0" + print " ha:type {" + for(n = 1; n <= v; n++) + print " " L[n] " = 1" + print " }" + print " li:objects {" + print LAYER[layer] + print " }" + print " ha:combining {" + print " }" + print " }" + } + print " }" + print " }" + print " uid = " minuid_str(UID) + print " }" + print "}" +} + +function subc_proto_alloc() +{ + return proto_next_id++ +} + +function subc_pstk_add_hole(proto, dia, plated, htop, hbottom ,s) +{ + s = s " hdia = " unit(dia) NL + s = s " hplated = " int(plated) NL + s = s " htop = " int(htop) NL + s = s " hbottom = " int(hbottom) NL + PROTO[proto] = PROTO[proto] s + PROTO_HOLE[proto] = dia +} + +function subc_pstk_no_hole(proto ,s) +{ + s = s " hdia = 0; hplated = 0; htop = 0; hbottom = 0" NL + PROTO[proto] = PROTO[proto] s +} + +function subc_pstk_shape_layer(layer ,s,L,v,n) +{ + v = split(layer, L, "-") + s = s " ha:layer_mask {" NL + for(n = 1; n <= v; n++) + s = s " " L[n] " = 1" NL + s = s " }" NL + s = s " ha:combining {" NL + if (layer ~ "mask") + s = s " sub = 1" NL + if ((layer ~ "mask") || (layer ~ "paste")) + s = s " auto = 1" NL + s = s " }" NL + return s +} + +function subc_pstk_add_shape_circ(proto, layer, x, y, dia ,s) +{ + s = s " ha:ps_shape_v4 {" NL + s = s " clearance = 0" NL + s = s " ha:ps_circ {" NL + s = s " x = " unit(x) NL + s = s " y = " unit(y) NL + s = s " dia = " unit(dia) NL + s = s " }" NL + s = s subc_pstk_shape_layer(layer) + s = s " }" NL + PROTO[proto] = PROTO[proto] s +} + +function subc_pstk_add_shape_square(proto, layer, x, y, sx, sy ,s) +{ + sx = sx / 2 + sy = sy / 2 + s = s " ha:ps_shape_v4 {" NL + s = s " clearance = 0" NL + s = s " li:ps_poly {" NL + s = s " " unit(x - sx) ";" unit(y - sy) "; " unit(x + sx) ";" unit(y - sy) ";" NL + s = s " " unit(x + sx) ";" unit(y + sy) "; " unit(x - sx) ";" unit(y + sy) ";" NL + s = s " }" NL + s = s subc_pstk_shape_layer(layer) + s = s " }" NL + PROTO[proto] = PROTO[proto] s +} + +function subc_pstk_add_shape_square_corners(proto, layer, x1, y1, x2, y2 ,s) +{ + sx = sx / 2 + sy = sy / 2 + s = s " ha:ps_shape_v4 {" NL + s = s " clearance = 0" NL + s = s " li:ps_poly {" NL + s = s " " unit(x1) ";" unit(y1) "; " unit(x2) ";" unit(y1) ";" NL + s = s " " unit(x2) ";" unit(y2) "; " unit(x1) ";" unit(y2) ";" NL + s = s " }" NL + s = s subc_pstk_shape_layer(layer) + s = s " }" NL + PROTO[proto] = PROTO[proto] s +} + +function subc_pstk_add_shape_line(proto, layer, x1, y1, x2, y2, thick ,s) +{ + s = s " ha:ps_shape_v4 {" NL + s = s " clearance = 0" NL + s = s " ha:ps_line {" NL + s = s " x1=" unit(x1) "; y1=" unit(y1) "; x2=" unit(x2) "; y2=" unit(y2) ";" NL + s = s " thickness=" unit(thick) "; square=0" NL + s = s " }" NL + s = s subc_pstk_shape_layer(layer) + s = s " }" NL + PROTO[proto] = PROTO[proto] s +} + +# POLY[] is an array indexed between 0 to 2*N-1 for a polygon of N +# vertices, packed as x0;y0;x1;y1;x2;y2 ... xN;yN. The usual pcb-rnd +# polygon rules apply: at least 3 vertices, no self-intersection. This +# call does not make any attempt on cheking polygon validity. +function subc_pstk_add_shape_poly(proto, layer, POLY ,s,n) +{ + s = s " ha:ps_shape_v4 {" NL + s = s " clearance = 0" NL + s = s " li:ps_poly {" NL + for(n = 0; (n in POLY); n += 2) + s = s " { " unit(POLY[n]) "; " unit(POLY[n+1]) " }" NL + s = s " }" NL + s = s subc_pstk_shape_layer(layer) + s = s " }" NL + PROTO[proto] = PROTO[proto] s +} + +function subc_proto_create_pin_round(drill_dia, ring_dia, mask_dia ,proto) +{ + proto = subc_proto_alloc() + subc_pstk_add_hole(proto, either(drill_dia, DEFAULT["pin_drill"]), 1) + + PROTO_COMMENT[proto] = "# Round plated through hole " unit(ring_dia) "/" unit(drill_dia) + PROTO[proto] = PROTO[proto] " li:shape {" NL + + ring_dia = either(ring_dia, DEFAULT["pin_ringdia"]) + subc_pstk_add_shape_circ(proto, "top-copper", x, y, ring_dia) + subc_pstk_add_shape_circ(proto, "intern-copper", x, y, ring_dia) + subc_pstk_add_shape_circ(proto, "bottom-copper", x, y, ring_dia) + + mask_dia = pin_mask(ring_dia, mask_dia) + subc_pstk_add_shape_circ(proto, "top-mask", x, y, mask_dia) + subc_pstk_add_shape_circ(proto, "bottom-mask", x, y, mask_dia) + + PROTO[proto] = PROTO[proto] " }" NL + return proto +} + +function subc_proto_create_pin_square(drill_dia, ring_span, mask_span ,proto) +{ + proto = subc_proto_alloc() + subc_pstk_add_hole(proto, either(drill_dia, DEFAULT["pin_drill"]), 1) + + PROTO_COMMENT[proto] = "# Square plated through hole " unit(ring_dia) "/" unit(drill_dia) + PROTO[proto] = PROTO[proto] " li:shape {" NL + + ring_span = either(ring_span, DEFAULT["pin_ringdia"]) + subc_pstk_add_shape_square(proto, "top-copper", x, y, ring_span, ring_span) + subc_pstk_add_shape_square(proto, "intern-copper", x, y, ring_span, ring_span) + subc_pstk_add_shape_square(proto, "bottom-copper", x, y, ring_span, ring_span) + + mask_span = pin_mask(ring_span, mask_dia) + subc_pstk_add_shape_square(proto, "top-mask", x, y, mask_span, mask_span) + subc_pstk_add_shape_square(proto, "bottom-mask", x, y, mask_span, mask_span) + PROTO[proto] = PROTO[proto] " }" NL + + return proto +} + +function paste_or_mask_abs(copper, absval, offsval, ratio, prefix) +{ + if (absval != "") + return absval + if (offsval != 0) + return copper+offsval + if (ratio != 0) + return copper*ratio + if ((DEFAULT[prefix] != "") && (DEFAULT[prefix] != "-")) + return DEFAULT[prefix] + if (DEFAULT[prefix "_offs"] != "") + return copper+DEFAULT[prefix "_offs"]*2 + if (DEFAULT[prefix "_ratio"] != "") + return copper*DEFAULT[prefix "_ratio"] + return copper +} + +function pad_paste(copper, absval, offsval, ratio) +{ + return paste_or_mask_abs(copper, absval, offsval, ratio, "pad_paste") +} + +function pad_mask(copper, absval, offsval, ratio) +{ + return paste_or_mask_abs(copper, absval, offsval, ratio, "pad_mask") +} + +function pin_mask(copper, absval, offsval, ratio) +{ + return paste_or_mask_abs(copper, absval, offsval, ratio, "pin_mask") +} + +function pad_paste_offs(offsval ,copper) +{ + copper = DEFAULT["pad_thickness"] + return paste_or_mask_abs(copper, "", offsval, "", "pad_paste") - copper +} + +function pad_mask_offs(offsval ,copper) +{ + copper = DEFAULT["pad_thickness"] + return paste_or_mask_abs(copper, "", offsval, "", "pad_mask") - copper +} + + +function subc_proto_create_pad_sqline(x1, x2, thick, mask, paste ,proto,m,p) +{ + proto = subc_proto_alloc() + + thick = either(thick, DEFAULT["pad_thickness"]) + + subc_pstk_no_hole(proto) + + PROTO_COMMENT[proto] = "# Square smd pad " x2-x1 " * " thick + PROTO[proto] = PROTO[proto] " li:shape {" NL + + subc_pstk_add_shape_square_corners(proto, "top-copper", x1-thick/2, -thick/2, x2+thick/2, thick/2) + + m = (pad_mask(thick, mask)-thick)/2 + subc_pstk_add_shape_square_corners(proto, "top-mask", x1-thick/2-m, -thick/2-m, x2+thick/2+m, thick/2+m) + + p = (pad_paste(thick, paste)-thick)/2 + subc_pstk_add_shape_square_corners(proto, "top-paste", x1-thick/2-p, -thick/2-p, x2+thick/2+p, thick/2+p) + + PROTO[proto] = PROTO[proto] " }" NL + + return proto +} + +function subc_proto_create_pad_line(x1, x2, thick, mask, paste ,proto,m,p) +{ + proto = subc_proto_alloc() + + thick = either(thick, parse_dim(DEFAULT["pad_thickness"])) + + subc_pstk_no_hole(proto) + + PROTO_COMMENT[proto] = "# Square smd pad " x2-x1 " * " thick + PROTO[proto] = PROTO[proto] " li:shape {" NL + + subc_pstk_add_shape_line(proto, "top-copper", x1, 0, x2, 0, thick) + subc_pstk_add_shape_line(proto, "top-mask", x1, 0, x2, 0, pad_mask(thick, mask)) + subc_pstk_add_shape_line(proto, "top-paste", x1, 0, x2, 0, pad_paste(thick, paste)) + + PROTO[proto] = PROTO[proto] " }" NL + + return proto +} + +function subc_proto_create_pad_rect(w, h, mask_offs, paste_offs ,proto,m,p) +{ + proto = subc_proto_alloc() + + subc_pstk_no_hole(proto) + + PROTO_COMMENT[proto] = "# Square smd pad " w " * " h + PROTO[proto] = PROTO[proto] " li:shape {" NL + + w = w/2 + h = h/2 + + subc_pstk_add_shape_square_corners(proto, "top-copper", -w, -h, +w, +h) + + if (mask_offs != "none") { + m = pad_paste_offs(w, mask_offs) / 2 + subc_pstk_add_shape_square_corners(proto, "top-mask", -w-m, -h-m, +w+m, +h+m) + } + + if (paste_offs != "none") { + p = pad_paste_offs(w, paste_offs) / 2 + subc_pstk_add_shape_square_corners(proto, "top-paste", -w-p, -h-p, +w+p, +h+p) + } + + PROTO[proto] = PROTO[proto] " }" NL + + return proto +} + + +function subc_proto_create_pad_circle(dia, mask_dia, paste_dia ,proto) +{ + proto = subc_proto_alloc() + subc_pstk_no_hole(proto) + + dia = either(dia, DEFAULT["pad_dia"]) + + PROTO_COMMENT[proto] = "# Circular smd pad " unit(dia) + PROTO[proto] = PROTO[proto] " li:shape {" NL + + subc_pstk_add_shape_circ(proto, "top-copper", 0, 0, dia) + + mask_dia = either(mask_dia, DEFAULT["pad_mask_dia"]) + subc_pstk_add_shape_circ(proto, "top-mask", 0, 0, mask_dia) + + paste_dia = either(mask_dia, DEFAULT["pad_paste_dia"]) + subc_pstk_add_shape_circ(proto, "top-mask", 0, 0, paste_dia) + + PROTO[proto] = PROTO[proto] " }" NL + return proto +} + +# generate a padstack reference +function subc_pstk(proto, x, y, rot, termid, name, clearance, s) +{ + if (termid == "") + termid = ++pin_number + + s = s " ha:padstack_ref." (++objid) " {" NL + s = s " proto = " proto NL + s = s " x = " unit(x) NL + s = s " y = " unit(y) NL + s = s " rot = " rot+0 NL + s = s " smirror = 0; xmirror = 0" NL + s = s " clearance = " unit(either(clearance, (PROTO_HOLE[proto] > 0 ? DEFAULT["pin_clearance"] : DEFAULT["pad_clearance"]))/2) NL + s = s " ha:attributes {" NL + s = s " term = " termid NL + if (name != "") + s = s " name = 1" NL + s = s " }" NL + s = s " li:thermal { }" NL + s = s " ha:flags { clearline = 1; }" NL + s = s " }" NL + + globals = globals NL s +} + +# draw element pad +function subc_pad(x1, y1, x2, y2, thickness, number, flags, clearance, mask, name) +{ + print " Pad[", x1, y1, x2, y2, int(either(thickness, DEFAULT["pad_thickness"])), + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q flags q "]" +} + +# draw element pad - no thickness, but exact corner coordinates given +function subc_pad_rectangle(x1, y1, x2, y2, number, flags, clearance, mask, name, th,dx,dy,cx,cy) +{ + if (x2 < x1) { + th = x2 + x2 = x1 + x1 = th + } + if (y2 < y1) { + th = y2 + y2 = y1 + y1 = th + } + + dx = x2-x1 + dy = y2-y1 + + if (dx >= dy) { + th = dy + cy = (y1+y2)/2 + + print " Pad[", x1+th/2, cy, x2-th/2, cy, th, + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q flags q "]" + } + else { + th = dx + cx = (x1+x2)/2 + + print " Pad[", cx, y1+th/2, cx, y2-th/2, th, + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q flags q "]" + } +} + +# draw element pad circle +function subc_pad_circle(x1, y1, radius, number, clearance, mask, name) +{ + print " Pad[", x1, y1, x1, y1, int(either(radius, DEFAULT["pad_thickness"])), + int(either(clearance, DEFAULT["pad_clearance"])), int(either(mask, DEFAULT["pad_mask"])), + q name q, q number q, q "" q "]" +} + +function subc_arrow(layer, x1, y1, x2, y2, asize, thickness ,vx,vy,nx,ny,len,xb,yb) +{ + subc_line(layer, x1, y1, x2,y2, thickness) + + if (asize == 0) + asize = mil(20) + + vx = x2-x1 + vy = y2-y1 + len = sqrt(vx*vx+vy*vy) + if (len != 0) { + vx /= len + vy /= len + nx = vy + ny = -vx + xb = x2 - vx*asize + yb = y2 - vy*asize +# subc_line(layer, x2, y2, xb + 1000, yb + 1000) + subc_line(layer, x2, y2, xb + nx*asize/2, yb + ny*asize/2) + subc_line(layer, x2, y2, xb - nx*asize/2, yb - ny*asize/2) + subc_line(layer, xb - nx*asize/2, yb - ny*asize/2, xb + nx*asize/2, yb + ny*asize/2) + } +} + +# draw a rectangle of silk lines +# omit sides as requested in omit +# if r is non-zero, round corners - omit applies as NW, NW, SW, SE +# if omit includes "arc", corners are "rounded" with lines +function subc_rectangle(layer, x1, y1, x2, y2, omit, r, thickness ,tmp,r1,r2) +{ +# order coords for round corners + if (x1 > x2) { + tmp = x1 + x1 = x2 + x2 = tmp + } + if (y1 > y2) { + tmp = y1 + y1 = y2 + y2 = tmp + } + + if (!(omit ~ "left")) { + r1 = (omit ~ "NW") ? 0 : r + r2 = (omit ~ "SW") ? 0 : r + subc_line(layer, x1, y1+r1, x1, y2-r2, thickness) + } + if (!(omit ~ "top")) { + r1 = (omit ~ "NW") ? 0 : r + r2 = (omit ~ "NE") ? 0 : r + subc_line(layer, x1+r1, y1, x2-r2, y1, thickness) + } + if (!(omit ~ "bottom")) { + r1 = (omit ~ "SE") ? 0 : r + r2 = (omit ~ "SW") ? 0 : r + subc_line(layer, x2-r1, y2, x1+r2, y2, thickness) + } + if (!(omit ~ "right")) { + r1 = (omit ~ "SE") ? 0 : r + r2 = (omit ~ "NE") ? 0 : r + subc_line(layer, x2, y2-r1, x2, y1+r2, thickness) + } + + if (r > 0) { + if (omit ~ "arc") { + if (!(omit ~ "NW")) + subc_line(layer, x1, y1+r, x1+r, y1) + if (!(omit ~ "SW")) + subc_line(layer, x1, y2-r, x1+r, y2) + if (!(omit ~ "NE")) + subc_line(layer, x2, y1+r, x2-r, y1) + if (!(omit ~ "SE")) + subc_line(layer, x2, y2-r, x2-r, y2) + } + else { + if (!(omit ~ "NW")) + subc_arc(layer, x1+r, y1+r, r, 270, 90) + if (!(omit ~ "SW")) + subc_arc(layer, x1+r, y2-r, r, 0, 90) + if (!(omit ~ "NE")) + subc_arc(layer, x2-r, y1+r, r, 180, 90) + if (!(omit ~ "SE")) + subc_arc(layer, x2-r, y2-r, r, 90, 90) + } + } +} + +# draw a rectangle corners of silk lines, wx and wy long in x and y directions +# omit sides as requested in omit: NW, NW, SW, SE +# corners are always sharp +function subc_rectangle_corners(layer, x1, y1, x2, y2, wx, wy, omit, thickness ,tmp) +{ + if (!(omit ~ "NW")) { + subc_line(layer, x1, y1, x1+wx, y1, thickness) + subc_line(layer, x1, y1, x1, y1+wy, thickness) + } + if (!(omit ~ "NE")) { + subc_line(layer, x2-wx, y1, x2, y1, thickness) + subc_line(layer, x2, y1, x2, y1+wy, thickness) + } + if (!(omit ~ "SW")) { + subc_line(layer, x1, y2, x1+wx, y2, thickness) + subc_line(layer, x1, y2-wy, x1, y2, thickness) + } + if (!(omit ~ "SE")) { + subc_line(layer, x2-wx, y2, x2, y2, thickness) + subc_line(layer, x2, y2-wy, x2, y2, thickness) + } +} + +# convert coord given in mils to footprint units +function mil(coord) +{ + if (base_unit_mm) + return coord / 39.3701 + else + return coord +} + +# reverse mil(): converts footprint units back to mil +function rev_mil(coord) +{ + if (base_unit_mm) + return coord * 39.3701 + else + return coord +} + + +# convert coord given in mm to footprint units +function mm(coord) +{ + if (base_unit_mm) + return coord + else + return coord * 39.3701 +} + +# reverse mm(): converts footprint units back to mm +function rev_mm(coord) +{ + if (base_unit_mm) + return coord + else + return coord / 39.3701 +} + + +function set_arg_(OUT, key, value, strength) +{ + if (OUT[key, "strength"] > strength) + return + + OUT[key] = value + OUT[key, "strength"] = strength +} + +# set parameter key=value with optioal strength (s_* consts) in array OUT[] +# set only if current strength is stronger than the original value +# if key starts with a "?", use s_weak +# if key is in DEFAULT[], use DEFAULT[] instead of OUT[] +function set_arg(OUT, key, value ,strength) +{ + if (strength == "") + strength = s_explicit + if (key ~ "^[?]") { + sub("^[?]", "", key) + strength = s_weak + } + + if (key in DEFAULT) { + if (DEFAULT[key, "dim"]) + value = parse_dim_(value, 0) + set_arg_(DEFAULT, key, value, strength) + } + else + set_arg_(OUT, key, value, strength) +} + +# Process a generator argument list from arg_names. Save the result in +# array OUT. If mandatory is specified, check whether all mandatory +# parameters are specified +# Both arg_names and mandatory are comma separated list of argument names +function proc_args(OUT, arg_names, mandatory, N,A,M,v,n,key,val,pos) +{ + gsub(" ", "", arg_names) + gsub(" ", "", mandatory) + split(arg_names, N, ",") + v = split(args, A, ",") + +# fill in all named and positional arguments + pos = 1 + for(n = 1; n <= v; n++) { + A[n] = strip(A[n]) + if (A[n] == "") + continue + if (A[n] ~ "=") { +# named + key=A[n] + val=A[n] + sub("=.*", "", key) + sub("^[^=]*=", "", val) + set_arg(OUT, key, val, s_explicit) + } + else { +# positional + if (N[pos] == "") { + error("too many positional arguments at " A[n]) + } + while((N[pos] in OUT) && (N[pos, "strength"] == s_explicit)) pos++ + set_arg(OUT, N[pos], A[n], s_explicit) + pos++ + } + } + +# check whether all mandatory arguments are specified + v = split(mandatory, M, ",") + for(n = 1; n <= v; n++) { + if (!(M[n] in OUT)) { + error("missing argument " M[n] " (or positional " n ")") + exit 1 + } + } +} + +function parse_dim_(h, fallback_mil) +{ + if (h == "") + return "" + if (h ~ "mm$") { + sub("mm", "", h) + return mm(h) + } + if (h ~ "um$") { + sub("um", "", h) + return mm(h)/1000 + } + if (h ~ "nm$") { + sub("nm", "", h) + return mm(h)/1000000 + } + if (h ~ "cm$") { + sub("cm", "", h) + return mm(h)*10 + } + if (h ~ "m$") { + sub("m", "", h) + return mm(h)*1000 + } + if (h ~ "km$") { + sub("km", "", h) + return mm(h)*1000000 + } + + if (h ~ "in$") { + sub("in", "", h) + return mil(h)*1000 + } + if (h ~ "dmil$") { + sub("dmil", "", h) + return mil(h)/10 + } + if (h ~ "cmil$") { + sub("cmil", "", h) + return mil(h)/100 + } + if (h ~ "mil$") { + sub("mil", "", h) + return mil(h) + } + if (fallback_mil) + return mil(h) + else + return h +} + +# Assume h is a dimension and convert it +function parse_dim(h) +{ + return parse_dim_(h, 1) +} + +# Draw a DIP outline: useful for any rectangular package with a little +# half circle centered on the top line +# arcr: radius of the half circle +# xhalf: optional coordinate where the circle should be put +function dip_outline(layer, x1, y1, x2, y2, arcr ,xhalf) +{ + if (xhalf == "") + xhalf=(x1+x2)/2 + + subc_rectangle(layer, x1, y1, x2, y2, "top") + subc_line(layer, x1, y1, xhalf-arcr, y1) + subc_line(layer, xhalf+arcr, y1, x2, y1) + + subc_arc(layer, xhalf, y1, arcr, 0, 180) +} + +# decide whether x is true or false +# returns 1 if true +# returns 0 if false +function tobool(x) +{ + if (x == int(x)) + return (int(x) != 0) + + x = tolower(x) + return (x == "true") || (x == "yes") || (x == "on") +} + +# default pin1 mark on a box +# style: mark style, ":" separated list +# x,y: the coordinates of the origin corner (top-left) +# half: half the stepping of the pin grid - the size of the mark +# step: optional size of the external arrow or square (defaults to 2*half) +function silkmark(style, x, y, half, step, S,n,v,r) +{ + if (step == "") + step = half*2 + r = step + if (r < 5) r = 5; + + v = split(style, S, ":") + + for(n = 1; n <= v; n++) { + if (S[n] == "angled") { + subc_line("top-silk", x+half, y, x, y+half) + } + else if (S[n] == "square") { + subc_line("top-silk", x, y+step, x+2*half, y+step) + subc_line("top-silk", x+step, y, x+2*half, y+step) + } + else if ((S[n] == "external") || (S[n] == "externalx")) { + subc_line("top-silk", x, y+half, x-step+half, y+half/2) + subc_line("top-silk", x, y+half, x-step+half, y+half*1.5) + subc_line("top-silk", x-step+half, y+half/2, x-step+half, y+half*1.5) + } + else if (S[n] == "externaly") { + subc_line("top-silk", x+half, y, x-half/2+half, y-step+half) + subc_line("top-silk", x+half, y, x+half/2+half, y-step+half) + subc_line("top-silk", x-half/2+half, y-step+half, x+half/2+half, y-step+half) + } + else if (S[n] == "external45") { + subc_line("top-silk", x, y, x-half, y-half/3) + subc_line("top-silk", x, y, x-half/3, y-half) + subc_line("top-silk", x-half, y-half/3, x-half/3, y-half) + } + else if (S[n] == "arc") { + subc_arc("top-silk", x, y, r/2, 180, 270) + } + else if (S[n] == "circle") { + subc_arc("top-silk", x, y, r/2, 0, 360) + } + else if (S[n] == "dot") { + subc_arc("top-silk", x-step/2, y-step/2, r/4, 0, 360) + } + else if ((S[n] != "none") && (S[n] != "")) { + error("invalid silkmark parameter: " S[n]) + } + } +} + +function center_pad_init() +{ + cpm_width = parse_dim(P["cpm_width"]) + cpm_height = parse_dim(P["cpm_height"]) + cpm_nx = int(P["cpm_nx"]) + cpm_ny = int(P["cpm_ny"]) +} + +# draw a matrix of paste rectangles; top-left corner is x1;y1, there are nx*ny +# rectangles of w*h size. rows/cols of pads are drawn with ox and oy offset +function paste_matrix(x1, y1, nx, ny, w, h, ox, oy, flags, attrbiutes, clearance, ix,iy) +{ + for(iy = 0; iy < ny; iy++) + for(ix = 0; ix < nx; ix++) + subc_rect("top-paste", x1+ix*ox, y1+iy*oy, x1+ix*ox+w, y1+iy*oy+h, clearance, flags, attributes) +} + +function center_pad(cpadid, cpx, cpy) +{ + if ((cpad_width != "") && (cpad_height != "")) { +# center pad paste matrix + if ((cpm_nx > 0) && (cpm_ny > 0)) { + ox = (cpad_width - (cpm_nx*cpm_width)) / (cpm_nx - 1) + oy = (cpad_height - (cpm_ny*cpm_height)) / (cpm_ny - 1) + paste_matrix(cpx-cpad_width/2, xpy-cpad_height/2, cpm_nx,cpm_ny, cpm_width,cpm_height, + ox+cpm_width,oy+cpm_height, "", "termid=" cpadid ";", 0) + } + +# center pad + cpad_proto = subc_proto_create_pad_rect(cpad_width, cpad_height, cpad_mask == "" ? 0 : cpad_mask, "none") + subc_pstk(cpad_proto, cpx, cpy, 0, cpadid) + dimension(cpx-cpad_width/2, cpy-cpad_height/2, cpx+cpad_width/2, cpy-cpad_height/2, "@0;" (height * -0.6-ext_bloat), "cpad_width") + dimension(cpx+cpad_width/2, cpy-cpad_height/2, cpx+cpad_width/2, cpy+cpad_height/2, "@" (width * 0.8+ext_bloat) ";0", "cpad_height") + } + +} + +# output a dimension specification between x1;y1 and x2;y2, text distance at dist +# for a name,value pair +# if name is empty, only value is printed +# if value is empty, it's calculated +# if only name should be printed, value should be "!" +# if dist starts with a "@", it's the absolute coordinate of the center of the dim line (text base), else it's relative distance from the measured line +function dimension(x1, y1, x2, y2, dist, name, value, vx,vy) +{ + print "#dimension", x1, y1, x2, y2, dist, name, value +} + +function help_extract(SEEN, fn, dirn, OVER, IGN, WANT,tmp,key,val,i,skip) +{ + if (fn in SEEN) + return + SEEN[fn]++ + print "#@@info-gen-extract " fn + close(fn) + while((getline line < fn) > 0) { + if (line ~ "^#@@include") { + sub("^#@@include[ \t]*", "", line) + tmp = dirn "/" line + WANT[tmp]++ + } + else if (line ~ "^#@@over@ignore") { + key = line + sub("^#@@over@ignore:", "", key) + sub(" .*", "", key) + IGN[key] = 1 + } + else if (line ~ "^#@@over@") { + key = line + sub("^#@@over@", "", key) + val = "#@@" key + sub(" .*", "", key) + OVER[key] = val + } + else if (line ~ "^#@@") { + key = line + sub("^#@@", "", key) + sub(" .*", "", key) + skip = 0 + for(i in IGN) { + if (key ~ i) + skip = 1 + } + if (skip) + continue + if (key in OVER) { + print OVER[key] + OVER[key "::PRINTED"] = 1 + } + else + print line + } + } + close(fn) + for(tmp in WANT) + help_extract(SEEN, tmp, dirn, OVER, IGN) +} + +function help_print( SEEN, OVER, dirn, k) +{ + print "#@@info-generator pcb-rnd common_subc.awk" + dirn = genfull + sub("/[^/]*$", "", dirn) + help_extract(SEEN, genfull, dirn, OVER) + for(k in OVER) { + if (!(k ~ "::PRINTED$") && !((k "::PRINTED") in OVER)) + print OVER[k] + } +} + +function help_auto() +{ + if ((args ~ "^--help") || (args ~ ",[ \t]*--help")) { + help_print() + exit(0) + } +} Index: trunk/footprint/parametric/connector =================================================================== --- trunk/footprint/parametric/connector (nonexistent) +++ trunk/footprint/parametric/connector (revision 34912) @@ -0,0 +1,53 @@ +#!/bin/sh + +#@@example connector(2, 3, silkmark=external, spacing=100) + +#@@purpose Generate pin-array connectors (e.g. headers). + +#@@desc Generate thru-hole connectors that consits of an array of +#@@desc evenly spaced pins, a plain frame and some optional pin marks +#@@desc on the silk layer. + +#@@params nx, ny, spacing, silkmark, eshift, etrunc + +#@@param:nx number of pins in the X direction +#@@param:ny number of pins in the Y direction +#@@param:spacing spacing between the pins +#@@dim:spacing +#@@default:spacing 100 mil + +#@@include silkmark.help +#@@optional:silkmark +#@@default:silkmark square +#@@preview_args:silkmark 2,3 + +#@@param:eshift shift even rows or columns by half spacing (optional; default: don't shift) +#@@enum:eshift:x shift columns +#@@enum:eshift:y shift rows +#@@enum:eshift:none do not shift anything +#@@default:eshift none +#@@optional:eshift +#@@preview_args:eshift 2,3 + +#@@param:etrunc truncate the last pin of a shifted row or column +#@@bool:etrunc +#@@default:etrunc false +#@@optional:etrunc +#@@preview_args:etrunc 2,3,eshift=x + +#@@param:sequence pin numbering sequence +#@@enum:sequence:normal increase by y first, then by x +#@@enum:sequence:pivot increase by x first, then by y +#@@enum:sequence:zigzag "dip-style" numbering in zig-zag: number odd x rows by y ascending, even x rows by y descending +#@@preview_args:sequence 2,4 +#@@thumbsize:sequence 3 +#@@thumbnum:sequence 1 +#@@default:sequence normal +#@@optional:sequence + + + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/connector.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/connector ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/connector.awk =================================================================== --- trunk/footprint/parametric/connector.awk (nonexistent) +++ trunk/footprint/parametric/connector.awk (revision 34912) @@ -0,0 +1,93 @@ +BEGIN { + base_unit_mm = 0 + + help_auto() + set_arg(P, "?spacing", 100) + set_arg(P, "?silkmark", "square") + set_arg(P, "?sequence", "normal") + + proc_args(P, "nx,ny,spacing,silkmark,eshift,etrunc", "nx,ny") + + + step = parse_dim(P["spacing"]) + + if (pin_ringdia > step*0.9) + pin_ringdia = step*0.9 + + if (pin_drill > pin_ringdia*0.9) + pin_drill = pin_ringdia*0.9 + + half=step/2 + + P["nx"] = int(P["nx"]) + P["ny"] = int(P["ny"]) + + eshift=tolower(P["eshift"]) + etrunc=tobool(P["etrunc"]) + if ((eshift != "x") && (eshift != "y") && (eshift != "") && (eshift != "none")) + error("eshift must be x or y or none (got: " eshift ")"); + + subc_begin(P["nx"] "*" P["ny"], "CONN1", 0, -step) + + proto_s = subc_proto_create_pin_square() + proto_r = subc_proto_create_pin_round() + + for(x = 0; x < P["nx"]; x++) { + if ((eshift == "x") && ((x % 2) == 1)) + yo = step/2 + else + yo = 0 + for(y = 0; y < P["ny"]; y++) { + if ((eshift == "y") && ((y % 2) == 1)) { + xo = step/2 + if ((etrunc) && (x == P["nx"]-1)) + continue + } + else { + xo = 0 + if ((etrunc) && (y == P["ny"]-1) && (yo != 0)) + continue + } + if (P["sequence"] == "normal") { + pinno++ + } + else if (P["sequence"] == "pivot") { + pinno = y * P["nx"] + x + 1 + } + else if (P["sequence"] == "zigzag") { + if (x % 2) { + pinno = (x+1) * P["ny"] - y + if ((etrunc) && (eshift == "x")) + pinno -= int(x/2)+1 + else if ((etrunc) && (eshift == "y")) + pinno += int(x/2) + } + else { + pinno = x * P["ny"] + y + 1 + if ((etrunc) && (eshift == "x")) + pinno -= x/2 + else if ((etrunc) && (eshift == "y")) + pinno += x/2-1 + } + } + subc_pstk(pinno == 1 ? proto_s : proto_r, x * step + xo, y * step + yo, 0, pinno) + } + } + + xo = 0 + yo = 0 + if (!etrunc) { + if (eshift == "y") + xo = step/2 + if (eshift == "x") + yo = step/2 + } + + subc_rectangle("top-silk", -half, -half, P["nx"] * step - half + xo, P["ny"] * step - half + yo) + + silkmark(P["silkmark"], -half, -half, half) + + dimension(0, step, step, step, step*2, "spacing") + + subc_end() +} Index: trunk/footprint/parametric/dip =================================================================== --- trunk/footprint/parametric/dip (nonexistent) +++ trunk/footprint/parametric/dip (revision 34912) @@ -0,0 +1,21 @@ +#!/bin/sh + +#@@example dip(18) + +#@@purpose Generate classic DIP packages. + +#@@desc Generate thru-hole DIP packages with variable number of pins and +#@@desc row spacing +#@@params n, spacing + +#@@param:n number of pins + +#@@param:spacing spacing between the two rows of pins +#@@dim:spacing +#@@optional:spacing +#@@default:spacing 100 mil + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/dip.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/dip ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/dip.awk =================================================================== --- trunk/footprint/parametric/dip.awk (nonexistent) +++ trunk/footprint/parametric/dip.awk (revision 34912) @@ -0,0 +1,32 @@ +BEGIN { + base_unit_mm = 0 + + help_auto() + set_arg(P, "?spacing", 300) + + proc_args(P, "n,spacing", "n") + + P["n"] = int(P["n"]) + if ((P["n"] < 2) || ((P["n"] % 2) != 0)) + error("Number of pins have to be an even positive number") + + spacing=parse_dim(P["spacing"]) + + subc_begin(P["n"] "*" P["spacing"], "U1", 0, mil(-100)) + + half = mil(50) + + pstk_s = subc_proto_create_pin_square() + pstk_r = subc_proto_create_pin_round() + + for(n = 1; n <= P["n"]/2; n++) { + subc_pstk((n == 1 ? pstk_s : pstk_r), 0, (n-1) * mil(100), 0, n) + subc_pstk(pstk_r, spacing, (n-1) * mil(100), 0, P["n"] - n + 1) + } + + dip_outline("top-silk", -half, -half, spacing + half , (n-2) * mil(100) + half, half) + + dimension(0, 0, spacing, 0, mil(100), "spacing") + + subc_end() +} Index: trunk/footprint/parametric/msop =================================================================== --- trunk/footprint/parametric/msop (nonexistent) +++ trunk/footprint/parametric/msop (revision 34912) @@ -0,0 +1,34 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), MSOP + +#@@example msop(8) + +#@@purpose Generate MSOP packages. + +#@@desc Generate MSOP packages with variable number of pins and +#@@desc row spacing + +#@@include so +#@@include common_subc.awk + +#@@over@default:pad_spacing 0.65 mm +#@@over@default:row_spacing 4.9 mm +#@@over@default:int_bloat 0.6 mm +#@@over@default:ext_bloat 0.6 mm +#@@over@default:pad_thickness 0.45 mm + + +defaults="" +defaults="$defaults?pad_spacing=0.65mm," +defaults="$defaults?row_spacing=4.9mm," +defaults="$defaults?int_bloat=0.6mm," +defaults="$defaults?ext_bloat=0.4mm," +defaults="$defaults?rarc=25," +defaults="$defaults?silk_ext_x=18," +defaults="$defaults?silk_ext_y=22," +defaults="$defaults?pad_thickness=0.45mm" + + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/msop ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/plcc =================================================================== --- trunk/footprint/parametric/plcc (nonexistent) +++ trunk/footprint/parametric/plcc (revision 34912) @@ -0,0 +1,29 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP + +#@@example plcc(20) + +#@@purpose Generate PLCC packages +#@@desc Generate square PLCC packages - a simplified frontend to qf() - +#@@desc only the number of pins is really needed for a square PLCC footprint! +#@@desc NOTE: some of the qf() parameters can be also used; PLCC32 is non-square, and can not be properly generated using this generator. + +#@@params pins,size,pitch,cpad_size + +#@@param:pins total number of pins (leads); must be divisible by 4 + +#@@param:size a single integer N or NxN or NxNxH; outmost dimensions (width or height of the package, leads included) in mil +#@@optional:size +#@@default:size calculated from total number of pins and pitch + +#@@param:pitch lead pitch (distance between the centerline of two adjacent leads), in mil; must be 50 for now +#@@optional:pitch +#@@default:pitch 50mil + +#@@param:cpad_size width (and height) of the central pad, in mil +#@@optional:cpad_size +#@@default:cpad_size empty, there's no central pad + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/plcc.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/plcc ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/plcc.awk =================================================================== --- trunk/footprint/parametric/plcc.awk (nonexistent) +++ trunk/footprint/parametric/plcc.awk (revision 34912) @@ -0,0 +1,60 @@ +function parri(A ,s,i) +{ + for(i in A) + s = s " " i + return s +} + +BEGIN { + base_unit_mm = 0 + + help_auto() + PT["50"] = "26mil" + set_arg(P, "?pitch", "50") + + proc_args(P, "pins,size,pitch,cpad_size,pad_thickness", "pins") + + pitch = P["pitch"] + sub("[.]0*$", "", pitch) + + if (!(args ~ "pad_thickness=")) { + if (!(pitch in PT)) + error("Unknown pitch (" pitch "), should be one of:" parri(PT)) + pt = PT[pitch] + } + else + pt = rev_mil(DEFAULT["pad_thickness"]) + + if (P["size"] == "") + P["size"] = int(P["pins"] * (pitch/4) + 140) + + split(P["size"], S, "x") + if (S[2] == "") + S[2] = S[1] + if (S[1] != S[2]) + error("need n*n size") + + pins = int(P["pins"]) + if (pins / 4 != int(pins / 4)) + error("number of pins must be divisible by 4") + + pins=pins/4 + + if ((pins % 2) != 1) + error("number of pins per side must be odd") + + S[1] -= 60 + S[2] -= 60 + args = args ",nx=" pins ",ny=" pins ",x_spacing=" S[1] "mil,y_spacing=" S[2] "mil,pad_spacing=" pitch "mil,pad_thickness=" pt + + args = args ",width=" S[1]-150 " mil,height=" S[2]-150 " mil" + + + if (P["cpad_size"] != "") + args = args ",cpad_width=" P["cpad_size"] "mil,cpad_height=" P["cpad_size"] "mil" + + args = args ",int_bloat=47mil,ext_bloat=47mil" + args = args ",?bodysilk=plcc,?silkmark=circle,pinoffs=" int(pins/2+0.5) + + +} Index: trunk/footprint/parametric/qf =================================================================== --- trunk/footprint/parametric/qf (nonexistent) +++ trunk/footprint/parametric/qf (revision 34912) @@ -0,0 +1,114 @@ +#!/bin/sh + +#@@example qf(nx=4,ny=4,cpad_auto=1) + +#@@purpose Generate generic *qf* (e.g. tqfp, qfn) packages + +#@@desc Generate *qf* (e.g. tqfp, qfn) packages: smd pads around a square; this is the generic implementation, end users may want to use the specific ones, e.g. tqfp(), qfn(), etc. +#@@params nx,ny,x_spacing,y_spacing,pad_spacing,ext_bloat,int_bloat,width,height,cpad_width,cpad_height,cpad_auto,bodysilk,pinoffs,silkmark + +#@@param:nx number of pins along the horizontal sides + +#@@param:ny number of pins along the vertical sides +#@@optional:ny +#@@default:ny assume ny=nx + +#@@param:x_spacing spacing between the two vertical rows of pins +#@@dim:x_spacing +#@@optional:x_spacing +#@@default:x_spacing calculated using nx and pad_spacing + +#@@param:y_spacing spacing between the two vertical rows of pins +#@@dim:y_spacing +#@@optional:y_spacing +#@@default:y_spacing calculated using ny and pad_spacing + +#@@param:pad_spacing spacing between the centerlines of two adjacent pads (aka pitch) +#@@dim:pad_spacing +#@@optional:pad_spacing + +#@@param:ext_bloat how much longer the pad should extend outwards from the end-point of the pin +#@@dim:ext_bloat +#@@optional:ext_bloat +#@@default:ext_bloat 0.37 mm + +#@@param:int_bloat how much longer the pad should extend inwards from the end-point of the pin +#@@dim:int_bloat +#@@optional:int_bloat +#@@default:int_bloat 0.37 mm + +#@@param:width width (horizontal, x axis size) of the box drawn on silk +#@@dim:width +#@@optional:width +#@@default:width calculated from the pad row geometry + +#@@param:height height (vertical, y axis size) of the box drawn on silk +#@@dim:height +#@@optional:height +#@@default:height calculated from the pad row geometry + +#@@param:cpad_width width (horizontal, x axis size) of the central pad +#@@dim:cpad_width +#@@optional:cpad_width +#@@default:cpad_width empty, no central pad + +#@@param:cpad_height height (vertical, y axis size) of the central pad +#@@dim:cpad_height +#@@optional:cpad_height +#@@default:cpad_height empty, no central pad + +#@@param:cpad_auto when true, calculate central pad sizes automatically from the pad row geometry +#@@bool:cpad_auto +#@@optional:cpad_height +#@@default:cpad_height false, no central pad + +#@@param:cpm_nx central pad paste matrix, number of paste pads in x direction +#@@optional:cpm_nx +#@@default:cpm_nx 2 + +#@@param:cpm_ny central pad paste matrix, number of paste pads in y direction +#@@optional:cpm_ny +#@@default:cpm_ny 2 + +#@@param:cpm_width central pad paste matrix, paste pad width (dimension of each paste rectangle) +#@@dim:cpm_width +#@@optional:cpm_width +#@@default:cpm_width 1mm + +#@@param:cpm_height central pad paste matrix, paste pad height (dimension of each paste rectangle) +#@@dim:cpm_height +#@@optional:cpm_height +#@@default:cpm_height 1mm + +#@@param:cpad_mask center pad mask; if not specified, use the same gap as for the rows (pad_mask) +#@@dim:cpad_mask +#@@optional:cpad_mask + +#@@param:rpad_round when true, row pads are round +#@@bool:rpad_round +#@@optional:rpad_round +#@@default:rpad_round false, row pads are square + +#@@param:bodysilk how to draw body on the silk layer +#@@enum:bodysilk:none no drawing +#@@enum:bodysilk:corners draw the corners, silkmark is outside of the top-left corner +#@@enum:bodysilk:full draw a full rectanlge, silkmark of the top-left corner +#@@enum:bodysilk:plcc angled top-left corner, horizontal line on the top +#@@optional:bodysilk +#@@default:bodysilk corners + +#@@param:pinoffs rotate pins by this amount, CW +#@@optional:pinoffs +#@@default:pinoffs 0 + +#@@include silkmark_qf.help +#@@optional:silkmark +#@@default:silkmark square +#@@preview_args:silkmark 4,4 + +#@@default:silkmark dot +#@@include common_subc.awk + + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/qf ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/qf.awk =================================================================== --- trunk/footprint/parametric/qf.awk (nonexistent) +++ trunk/footprint/parametric/qf.awk (revision 34912) @@ -0,0 +1,163 @@ +function qf_globals(pre_args, post_args ,reqs) +{ + DEFAULT["cpad_mask", "dim"] = 1 + + if (hook_spc_conv == "") + hook_spc_conv = 1.8 + if (hook_cpad_mult == "") + hook_cpad_mult = 1 + + if (!qf_no_defaults) { + set_arg(P, "?pad_spacing", "0.5mm") + set_arg(P, "?ext_bloat", "0.37mm") + set_arg(P, "?int_bloat", "0.37mm") + set_arg(P, "?pad_thickness", "0.3mm") + set_arg(P, "?silkmark", "dot") + set_arg(P, "?line_thickness", "0.1mm") + set_arg(P, "?cpm_width", "1mm") + set_arg(P, "?cpm_height", "1mm") + set_arg(P, "?cpm_nx", "2") + set_arg(P, "?cpm_ny", "2") + } + + reqs = "nx,ny" + + if (pre_args != "") + reqs="" + + if ((post_args != "") && (!(post_args ~ "^,"))) + post_args = "," post_args + + if ((pre_args != "") && (!(pre_args ~ ",$"))) + pre_args = pre_args "," + + proc_args(P, pre_args "nx,ny,x_spacing,y_spacing,pad_spacing,ext_bloat,int_bloat,width,height,cpad_width,cpad_height,cpad_auto,cpm_nx,cpm_ny,cpm_width,cpm_height,cpad_mask,rpad_round,bodysilk,pinoffs,silkmark" post_args, reqs) + + nx = int(P["nx"]) + ny = int(P["ny"]) + + if (P["ny"] == "") + ny = nx + + if ((nx < 2) || (ny < 2)) + error("Number of pins have to be more than 2 in both directions") + + x_spacing=parse_dim(P["x_spacing"]) + y_spacing=parse_dim(P["y_spacing"]) + pad_spacing=parse_dim(P["pad_spacing"]) + pt = DEFAULT["pad_thickness"] + ext_bloat=parse_dim(P["ext_bloat"]) - pt/2 + int_bloat=parse_dim(P["int_bloat"]) - pt/2 + width=parse_dim(P["width"]) + height=parse_dim(P["height"]) + pinoffs = int(P["pinoffs"]) + + if (x_spacing == "") + x_spacing = (nx+hook_spc_conv) * pad_spacing + if (y_spacing == "") + y_spacing = (ny+hook_spc_conv) * pad_spacing + + cpad_width=parse_dim(P["cpad_width"]) + cpad_height=parse_dim(P["cpad_height"]) + + if (P["cpad_mask"] != "") + cpad_mask=parse_dim(P["cpad_mask"]) + + + if (tobool(P["cpad_auto"]) || hook_cpad_auto) { + if (cpad_width == "") + cpad_width = (x_spacing*0.85 - int_bloat*2 - pt) * hook_cpad_mult + if (cpad_height == "") + cpad_height = (y_spacing*0.85 - int_bloat*2 - pt) * hook_cpad_mult + } + + + if (width == "") + width = x_spacing + if (height == "") + height = y_spacing + + pinmax=(nx+ny)*2 + + if (!tobool(P["rpad_round"])) + rpad_round = "square" + else + rpad_round = "" + + center_pad_init() +} + +function pinnum(num) +{ + return ((num-1) + pinoffs) % (pinmax)+1 +} + +BEGIN { + base_unit_mm = 0 + + help_auto() + qf_globals() + + subc_begin("", "U1", -width/2 - mm(1), -height/2 - mm(2), 0) + + cx = (nx+1)/2 + cy = (ny+1)/2 + if (rpad_round == "square") + proto = subc_proto_create_pad_sqline(-ext_bloat, int_bloat, pad_width) + else + proto = subc_proto_create_pad_line(-ext_bloat, int_bloat, pad_width) + + for(n = 1; n <= ny; n++) { + y = (-cy + n) * pad_spacing + x1 = -x_spacing/2 + x2 = x_spacing/2 + subc_pstk(proto, x1, y, 0, pinnum(n)) + subc_pstk(proto, x2, y, 180, pinnum(nx+2*ny-n+1)) + if (n == 1) + y1 = y + if (n == 2) + dimension(x1, y1, x1, y, (ext_bloat * -3), "pad_spacing") + } + + dimension(x1, y-pt/2, x1, y+pt/2, (ext_bloat * -3), "pad_thickness") + + for(n = 1; n <= nx; n++) { + x = (-cx + n) * pad_spacing + y1 = -y_spacing/2 + y2 = y_spacing/2 + subc_pstk(proto, x, y1, 270, pinnum(nx*2+ny*2-n+1)) + subc_pstk(proto, x, y2, 90, pinnum(n+ny)) + } + + + center_pad(2*nx+2*ny+1, 0, 0) + + wx = (width - nx * pad_spacing) / 3.5 + wy = (height - ny * pad_spacing) / 3.5 + + bodysilk = P["bodysilk"] + if ((bodysilk == "corners") || (bodysilk == "")) { + subc_rectangle_corners("top-silk", -width/2, -height/2, width/2, height/2, wx, wy) + silkmark(P["silkmark"], -width/2, -height/2, (wx+wy)/3) + } + else if (bodysilk == "full") { + subc_rectangle("top-silk", -width/2, -height/2, width/2, height/2) + silkmark(P["silkmark"], -width/2, -height/2, (wx+wy)/2) + } + else if (bodysilk == "plcc") { + r = (width+height)/10 + subc_rectangle("top-silk", -width/2, -height/2, width/2, height/2, "arc,NE,SW,SE", r) + subc_line("top-silk", -width/2, -height/2+r, width/2, -height/2+r) + silkmark(P["silkmark"], 0, -height*0.2-r, height/40) + } + else if (bodysilk != "none") + error("invalid bodysilk parameter") + + dimension(-width/2, -height/2, +width/2, -height/2, "@0;" height*-0.8-ext_bloat, "width") + dimension(+width/2, -height/2, +width/2, +height/2, "@" (width * 1+ext_bloat) ";0", "height") + + dimension(-x_spacing/2, -height/2, +x_spacing/2, -height/2, "@0;" height*-1-ext_bloat, "x_spacing") + dimension(+width/2, -y_spacing/2, +width/2, +y_spacing/2, "@" (width * 1.2+ext_bloat) ";0", "y_spacing") + + subc_end() +} Index: trunk/footprint/parametric/qfn =================================================================== --- trunk/footprint/parametric/qfn (nonexistent) +++ trunk/footprint/parametric/qfn (revision 34912) @@ -0,0 +1,24 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP + +#@@example qfn(16,3x3,0.5) + +#@@purpose Generate QFN packages +#@@desc Generate QFN packages - a simplified frontend to qf() - +#@@desc look up 3..4 data in the datasheet and get a regular QFN footprint! +#@@desc Should work for QFN, TQFN, etc. +#@@desc NOTE: some of the qf() parameters can be also used. + +#@@params pins,size,pitch,cpad_size + +#@@param:pins total number of pins (leads); must be divisible by 4 +#@@param:size a single integer N or NxN or NxNxH; the pad spacing dimension (outer dimension, lead-to-lead) in mm +#@@param:pitch lead pitch (distance between the centerline of two adjacent leads), in mm; must be one of 0.4, 0.5, 0.65 + +#@@param:cpad_size width (and height) of the central pad, in mm +#@@optional:cpad_size +#@@default:cpad_size empty, there's no central pad + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/qfn.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/qfn ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/qfn.awk =================================================================== --- trunk/footprint/parametric/qfn.awk (nonexistent) +++ trunk/footprint/parametric/qfn.awk (revision 34912) @@ -0,0 +1,47 @@ +function parri(A ,s,i) +{ + for(i in A) + s = s " " i + return s +} + +BEGIN { + help_auto() + PT["0.65"] = "0.35mm" + PT["0.5"] = "0.3mm" + PT["0.4"] = "0.2mm" + + proc_args(P, "pins,size,pitch,cpad_size,pad_thickness", "pins,size,pitch") + + pitch = P["pitch"] + sub("0*$", "", pitch) + + if (!(args ~ "pad_thickness=")) { + if (!(pitch in PT)) + error("Unknown pitch, should be one of:" parri(PT)) + pt = PT[pitch] + } + else + pt = rev_mm(DEFAULT["pad_thickness"]) "mm" + + split(P["size"], S, "x") + if (S[2] == "") + S[2] = S[1] + if (S[1] != S[2]) + error("need n*n size") + + pins = int(P["pins"]) + if (pins / 4 != int(pins / 4)) + error("number of pins must be divisible by 4") + + pins=pins/4 + + + args = args ",nx=" pins ",ny=" pins ",x_spacing=" S[1] "mm,y_spacing=" S[2] "mm,pad_spacing=" pitch "mm,pad_thickness=" pt + + if (P["cpad_size"] != "") + args = args ",cpad_width=" P["cpad_size"] "mm,cpad_height=" P["cpad_size"] "mm" + +# qf_globals("pins,size") + +} Index: trunk/footprint/parametric/qfp =================================================================== --- trunk/footprint/parametric/qfp (nonexistent) +++ trunk/footprint/parametric/qfp (revision 34912) @@ -0,0 +1,24 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP + +#@@example qfp(32,7x7,0.8) + +#@@purpose Generate QFP packages +#@@desc Generate QFP packages - a simplified frontend to qf() - +#@@desc look up 3..4 data in the datasheet and get a regular QFP footprint! +#@@desc NOTE: some of the qf() parameters can be also used. +#@@desc Should work for QFP, TQFP, LQFP, etc. + +#@@params pins,size,pitch,cpad_size + +#@@param:pins total number of pins (leads); must be divisible by 4 +#@@param:size a single integer N or NxN or NxNxH; body dimension (width or height of the plastic body) in mm +#@@param:pitch lead pitch (distance between the centerline of two adjacent leads), in mm; must be one of 0.4, 0.5, 0.65 + +#@@param:cpad_size width (and height) of the central pad, in mm +#@@optional:cpad_size +#@@default:cpad_size empty, there's no central pad + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/qfp.awk -f `dirname $0`/qf.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/qfp ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/qfp.awk =================================================================== --- trunk/footprint/parametric/qfp.awk (nonexistent) +++ trunk/footprint/parametric/qfp.awk (revision 34912) @@ -0,0 +1,52 @@ +function parri(A ,s,i) +{ + for(i in A) + s = s " " i + return s +} + +BEGIN { + help_auto() + PT["0.8"] = "0.55mm" + PT["0.65"] = "0.35mm" + PT["0.5"] = "0.3mm" + PT["0.4"] = "0.2mm" + + proc_args(P, "pins,size,pitch,cpad_size,pad_thickness", "pins,size,pitch") + + pitch = P["pitch"] + sub("0*$", "", pitch) + + if (!(args ~ "pad_thickness=")) { + if (!(pitch in PT)) + error("Unknown pitch, should be one of:" parri(PT)) + pt = PT[pitch] + } + else + pt = rev_mm(DEFAULT["pad_thickness"]) "mm" + + split(P["size"], S, "x") + if (S[2] == "") + S[2] = S[1] + if (S[1] != S[2]) + error("need n*n size") + + pins = int(P["pins"]) + if (pins / 4 != int(pins / 4)) + error("number of pins must be divisible by 4") + + pins=pins/4 + + args = args ",width=" S[1] " mm,height=" S[2] " mm" + + S[1] += 1.45 + S[2] += 1.45 + args = args ",nx=" pins ",ny=" pins ",x_spacing=" S[1] "mm,y_spacing=" S[2] "mm,pad_spacing=" pitch "mm,pad_thickness=" pt "mm" + + + if (P["cpad_size"] != "") + args = args ",cpad_width=" P["cpad_size"] "mm,cpad_height=" P["cpad_size"] "mm" + + args = args ",int_bloat=0.5mm,ext_bloat=1.1mm" + args = args ",?bodysilk=full,?silkmark=circle" +} Index: trunk/footprint/parametric/qsop =================================================================== --- trunk/footprint/parametric/qsop (nonexistent) +++ trunk/footprint/parametric/qsop (revision 34912) @@ -0,0 +1,33 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), QSOP + +#@@example qsop(14) + +#@@purpose Generate QSOP packages. + +#@@desc Generate QSOP packages with variable number of pins and +#@@desc row spacing + +#@@include so +#@@include common_subc.awk + +#@@over@default:pad_spacing 25 mil +#@@over@default:row_spacing 213 mil +#@@over@default:int_vloat 22 mil +#@@over@default:ext_bloat 23 mil +#@@over@default:pad_thickness 16 mil + +defaults="" +defaults="$defaults?pad_spacing=25mil," +defaults="$defaults?row_spacing=213mil," +defaults="$defaults?int_bloat=22mil," +defaults="$defaults?ext_bloat=23mil," +defaults="$defaults?rarc=25," +defaults="$defaults?silk_ext_x=18," +defaults="$defaults?silk_ext_y=22," +defaults="$defaults?pad_thickness=16mil" + + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/qsop ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/rcy =================================================================== --- trunk/footprint/parametric/rcy (nonexistent) +++ trunk/footprint/parametric/rcy (revision 34912) @@ -0,0 +1,32 @@ +#!/bin/sh + +#@@example rcy(300,bar+) + +#@@purpose Generate radial lead through-hole component + +#@@desc Generate radial lead through-hole component with 2 pins (typical use: electrolytic caps) +#@@params spacing,pol,dia + +#@@param:spacing spacing between the two pins +#@@dim:spacing + +#@@param:pol how to mark polarity: (optional; default: sign) +#@@enum:pol:none no marking +#@@enum:pol:sign print + next to pin 1 and - next to pin 2 +#@@enum:pol:bar+ draw a bar inside the circle, around pin 2 +#@@enum:pol:bar- draw a bar inside the circle, around pin 1 +#@@enum:pol:bar same as bar+ +#@@enum:pol:bar+sign bar+ and sign combined +#@@enum:pol:bar-sign bar- and sign combined +#@@optional:pol +#@@default:pol sign +#@@preview_args:pol 300 + +#@@param:dia body diameter - affects the silk circle +#@@optional:dia +#@@default:dia spacing*2 + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/rcy.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/rcy ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/rcy.awk =================================================================== --- trunk/footprint/parametric/rcy.awk (nonexistent) +++ trunk/footprint/parametric/rcy.awk (revision 34912) @@ -0,0 +1,95 @@ +function pol_sign( ox) +{ + size=mil(20) + + ox = dia/2+size*2 + subc_line("top-silk", ox-size, 0, ox+size, 0) + + ox = -dia/2-size*2 + subc_line("top-silk", ox-size, 0, ox+size, 0) + subc_line("top-silk", ox, -size, ox, size) +} + +BEGIN { + base_unit_mm = 0 + + help_auto() + set_arg(P, "?pol", "sign") + proc_args(P, "spacing,pol,dia", "spacing") + + spacing = parse_dim(P["spacing"]) + dia = either(parse_dim(P["dia"]), spacing*2) + + offs_x = +spacing/2 + + subc_begin("rcy" P["spacing"], "C1", -spacing/5, -mil(20), 0) + + proto_s = subc_proto_create_pin_square() + proto_r = subc_proto_create_pin_round() + + subc_pstk(proto_s, -spacing/2, 0, 0, 1) + subc_pstk(proto_r, +spacing/2, 0, 0, 2) + + dimension(-spacing/2, 0, +spacing/2, 0, dia*0.8, "spacing") + + +# silk rectangle and pins + subc_arc("top-silk", 0, 0, dia/2, 0, 360) + dimension(-dia/2, 0, +dia/2, 0, dia*-0.8, "dia") + + + if (P["pol"] == "sign") { + pol_sign() + } + else if (P["pol"] ~ "^bar") { +# determine bar side (default to -) + side=P["pol"] + sub("^bar", "", side) + if (side ~ "sign") { + pol_sign() + sub("sign", "", side) + } + if (side == "") + side = "-" + side = int(side "1") * -1 + + th = mm(1) + ystep = th/2 + r = dia/2-th/2 + xs = dia/8 + ring = DEFAULT["pin_ringdia"] + for(y = 0; y < dia/2; y+=ystep) { + x = r*r-y*y + if (x < 0) + break + x = sqrt(x) + if (x <= xs) + break + if (y > ring/2+th/2) { + subc_line("top-silk", side*xs, y, side*x, y, th) + if (y != 0) + subc_line("top-silk", side*xs, -y, side*x, -y, th) + } + else { +# keep out a rectangle around the pin + end1=spacing/2-ring + end2=spacing/2+ring + if (end1 > xs) + subc_line("top-silk", side*xs, y, side*end1, y, th) + if (end2 < x) + subc_line("top-silk", side*end2, y, side*x, y, th) + if (y != 0) { + if (end1 > xs) + subc_line("top-silk", side*xs, -y, side*end1, -y, th) + if (end2 < x) + subc_line("top-silk", side*end2, -y, side*x, -y, th) + } + } + } + } + else if ((P["pol"] != "") && (P["pol"] != "none")) { + error("Invalid pol") + } + + subc_end() +} Index: trunk/footprint/parametric/screw =================================================================== --- trunk/footprint/parametric/screw (nonexistent) +++ trunk/footprint/parametric/screw (revision 34912) @@ -0,0 +1,35 @@ +#!/bin/sh + +#@@example screw(3.2mm, 6mm, circle:hex) + +#@@purpose Generic screw. + +#@@desc Generate a "single pin" screw with optional head shapes +#@@params hole,head,shape,ring + +#@@param:hole hole diameter or name of a standard screw (e.g. M3) +#@@dim:hole + + +#@@param:head head outmost diameter (or optional head name for a standard screw: pan, button, cheese, flat-washer, internal-lock-washer) +#@@dim:head + +#@@param:ring copper ring outer diameter +#@@dim:ring +#@@optional:ring +#@@default:ring 80% of head diameter + + +#@@param:shape shape of the head drawn on silkmark; multiple values can be listed separated with colons, e.g. "shape=circle:hex" +#@@enum:shape:circle circle +#@@enum:shape:hex hexagon with straight line edges, size is from corner to corner +#@@enum:shape:tx "torx": hexagon with arced edges +#@@enum:shape:xzn "triple square" +#@@enum:shape:ph philips slot (cross) - useful together with circle +#@@enum:shape:slot a single straight line slot - useful together with circle +#@@default:shape circle +#@@preview_args:shape 3mm,6mm + +#@@include common_subc.awk + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/screw.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" -v "genfull=$0" Property changes on: trunk/footprint/parametric/screw ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/screw.awk =================================================================== --- trunk/footprint/parametric/screw.awk (nonexistent) +++ trunk/footprint/parametric/screw.awk (revision 34912) @@ -0,0 +1,131 @@ +function shp(r, edges, tx ,a,x,y,xl,yl,step,x1,y1,x2,y2,tx1,tx2,txs) +{ + step = 2*3.141592654/edges + if (tx == 1) { + tx1 = 0.7 + tx2 = 0.6 + txs = 5 + } + else if (tx == 2) { + tx1 = 0.85 + tx2 = 0.8 + txs = 5 + } + else if (tx == 3) { + tx1 = 0.2 + tx2 = 0.2 + txs = 3 + } + for(n = 0; n <= edges; n++) { + a += step + x = cos(a)*r + y = sin(a)*r + if (xl != "") { + if (tx) { + x1 = cos(a-(txs-1)*step/txs)*r*tx1 + y1 = sin(a-(txs-1)*step/txs)*r*tx1 + x2 = cos(a-step/txs)*r*tx1 + y2 = sin(a-step/txs)*r*tx1 + x3 = cos(a-step/2)*r*tx2 + y3 = sin(a-step/2)*r*tx2 + subc_line("top-silk", xl, yl, x1, y1) + subc_line("top-silk", x, y, x2, y2) + subc_line("top-silk", x3, y3, x1, y1) + subc_line("top-silk", x3, y3, x2, y2) + } + else + subc_line("top-silk", xl, yl, x, y) + } + xl = x + yl = y + } +} + +function round_up(num, to) +{ + if ((num/to) == int(num/to)) + return num + return int(num/to+1)*to +} + +BEGIN { + help_auto() + set_arg(P, "?shape", "circle") + proc_args(P, "hole,head,shape,ring", "hole") + + subc_begin("screw:" P["hole"] "," P["head"]"," P["shape"], "S1", 0, -mil(100), 0) + + if (P["hole"] ~ "^M") { + hole = P["hole"] + sub("^M", "", hole) + h = parse_dim(int(hole) "mm") + if ((hole ~ "tight") || (hole ~ "close.fit")) + hole = h * 1.05 + else + hole = h * 1.1 + hd = parse_dim(P["head"]) + if ((hd == 0) || (hd == "")) { + hd = P["head"] + if (hd == "button") + head = 1.9*h + else if (hd == "button") + head = 1.9*h + else if (hd == "cheese") + head = round_up(1.7*h, mm(0.5)) + else if (hd ~ "flat.washer") + head = round_up(2.1*h, mm(1)) + else if ((hd == "") || (hd == "pan") || (hd ~ "int.*.lock.washer")) + head = 2*h + else + error("Unknown standard head: " hd) + } + else + head = hd +# print hole, head > "/dev/stderr" + } + else { + hole = parse_dim(P["hole"]) + head = parse_dim(P["head"]) + } + + if (head == "") + error("need a standard screw name, e.g. M3, or a head diameter") + + if (head < hole) + error("head diameter must be larger than hole diameter") + + ring = parse_dim(P["ring"]) + + if (ring == "") + ring = head*0.8 + + + proto = subc_proto_create_pin_round(hole, ring) + subc_pstk(proto, 0, 0, 0, 1) + + + shape = ":" P["shape"] ":" + + if (shape ~ ":circle:") + subc_arc("top-silk", 0, 0, head/2, 0, 360) + + if (shape ~ ":hex:") + shp(head/2, 6, 0) + + if (shape ~ ":tx:") + shp(head/2, 6, 1) + + if (shape ~ ":xzn:") + shp(head/2, 12, 2) + + if (shape ~ ":ph:") + shp(head*0.4, 4, 3) + + if (shape ~ ":slot:") + subc_line("top-silk", -head/2, 0, head/2, 0) + + dimension(-head/2, 0, head/2, 0, head*0.7, "head") + dimension(-hole/2, 0, hole/2, 0, head*0.6, "hole") + + subc_end() +} Index: trunk/footprint/parametric/silkmark.help =================================================================== --- trunk/footprint/parametric/silkmark.help (nonexistent) +++ trunk/footprint/parametric/silkmark.help (revision 34912) @@ -0,0 +1,11 @@ +#@@param:silkmark how to mark pin 1 on the silk layer; multiple values can be listed separated with colons, e.g. "silkmark=externalx:angled" +#@@enum:silkmark:square a rectangle around pin 1 +#@@enum:silkmark:externalx a little triangle placed outside of the box pointing in line with the first x row +#@@enum:silkmark:externaly a little triangle placed outside of the box pointing in line with the first y row +#@@enum:silkmark:external45 a little triangle placed outside of the box pointing at the corner in 45 degree +#@@enum:silkmark:external shorthand for externalx +#@@enum:silkmark:angled an angled line in the corner +#@@enum:silkmark:arc an external 270 degree arc +#@@enum:silkmark:circle a circle, 270 degrees external +#@@enum:silkmark:dot a small external dot +#@@enum:silkmark:none no mark Index: trunk/footprint/parametric/silkmark_qf.help =================================================================== --- trunk/footprint/parametric/silkmark_qf.help (nonexistent) +++ trunk/footprint/parametric/silkmark_qf.help (revision 34912) @@ -0,0 +1,11 @@ +#@@param:silkmark how to mark pin 1 on the silk layer; multiple values can be listed separated with colons, e.g. "silkmark=externalx:angled"; ***NOTE***: drawn only if bodysilk is also drawn! +#@@enum:silkmark:square a rectangle around pin 1 +#@@enum:silkmark:externalx a little triangle placed outside of the box pointing in line with the first x row +#@@enum:silkmark:externaly a little triangle placed outside of the box pointing in line with the first y row +#@@enum:silkmark:external45 a little triangle placed outside of the box pointing at the corner in 45 degree +#@@enum:silkmark:external shorthand for externalx +#@@enum:silkmark:angled an angled line in the corner +#@@enum:silkmark:arc an external 270 degree arc +#@@enum:silkmark:circle a circle, 270 degrees external +#@@enum:silkmark:dot a small external dot +#@@enum:silkmark:none no mark Index: trunk/footprint/parametric/so =================================================================== --- trunk/footprint/parametric/so (nonexistent) +++ trunk/footprint/parametric/so (revision 34912) @@ -0,0 +1,40 @@ +#!/bin/sh + +#@@example so(14) + +#@@purpose Generate SO and SO-like packages. + +#@@desc Generate SO packages with variable number of pins and +#@@desc row spacing +#@@params n, row_spacing, pad_spacing + +#@@param:n number of pins + +#@@param:row_spacing spacing between the two rows of pads: distance between the end of the first and last pins +#@@dim:row_spacing +#@@optional:row_spacing +#@@default:row_spacing 250 mil + + +#@@param:pad_spacing spacing between the centerline of two pads +#@@dim:pad_spacing +#@@optional:pad_spacing +#@@default:pad_spacing 50 mil + + +#@@param:ext_bloat how much longer the pad should extend outwards from the end-point of the pin +#@@dim:ext_bloat +#@@optional:ext_bloat +#@@default:ext_bloat 10 mil + +#@@param:int_bloat how much longer the pad should extend inwards from the end-point of the pin +#@@dim:int_bloat +#@@optional:int_bloat +#@@default:int_bloat 55 mil + +#@@include common_subc.awk + +#@@over@ignore::pin_ + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/so ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/so.awk =================================================================== --- trunk/footprint/parametric/so.awk (nonexistent) +++ trunk/footprint/parametric/so.awk (revision 34912) @@ -0,0 +1,55 @@ +BEGIN { + base_unit_mm = 0 + + help_auto() + set_arg(P, "?row_spacing", 250) + set_arg(P, "?pad_spacing", 50) + set_arg(P, "?ext_bloat", 10) + set_arg(P, "?int_bloat", 55) + + proc_args(P, "n,row_spacing,pad_spacing,ext_bloat,int_bloat", "n") + + P["n"] = int(P["n"]) + if ((P["n"] < 2) || ((P["n"] % 2) != 0)) + error("Number of pins have to be an even positive number") + + row_spacing=parse_dim(P["row_spacing"]) + pad_spacing=parse_dim(P["pad_spacing"]) + ext_bloat=parse_dim(P["ext_bloat"]) + int_bloat=parse_dim(P["int_bloat"]) + +# translate origin to the middle (int() and -0.5 rounds it for odd number of pins) + offs_x = -(row_spacing/2) + offs_y = -int((P["n"]/4-0.5) * pad_spacing) + + subc_begin(P["n"] "*" P["row_spacing"], "U1", -offs_x, mil(-100)-offs_y) + + proto = subc_proto_create_pad_sqline(-ext_bloat, int_bloat, pad_width) + + for(n = 1; n <= P["n"]/2; n++) { + y = (n-1) * pad_spacing + subc_pstk(proto, 0, y, 0, n) + subc_pstk(proto, row_spacing, y, 180, P["n"] - n + 1) + } + + silk_dist_x = either(parse_dim(P["silk_ext_x"]), pad_spacing/2) + silk_dist_y = either(parse_dim(P["silk_ext_y"]), pad_spacing/2) + rarc = either(parse_dim(P["rarc"]), pad_spacing/2) + + dip_outline("top-silk", -silk_dist_x-ext_bloat, -silk_dist_y, row_spacing + silk_dist_x+ext_bloat , (n-2) * pad_spacing + silk_dist_y, rarc) + + left_dim="@" -silk_dist_x-ext_bloat-pad_spacing ";0" + dimension(0, 0, 0, pad_spacing, left_dim, "pad_spacing") + dimension(0, 0, row_spacing, 0, (pad_spacing * 1.8), "row_spacing") + dimension(-ext_bloat, 0, 0, 0, (pad_spacing * 1.2), "ext_bloat") + dimension(row_spacing-int_bloat, 0, row_spacing, 0, (pad_spacing * 1.2), "int_bloat") + + th=DEFAULT["pad_thickness"] + y = (n-2) * pad_spacing + dimension(-ext_bloat-th/2, y, +int_bloat+th/2, y, (pad_spacing * -1.2), "") + dimension(0, y-th/2, 0, y+th/2, left_dim, "pad_thickness") + +# dimension(-silk_dist_x-ext_bloat, -silk_dist_y, row_spacing + silk_dist_x+ext_bloat, -silk_dist_y, pad_spacing*2.5, "") + + subc_end() +} Index: trunk/footprint/parametric/ssop =================================================================== --- trunk/footprint/parametric/ssop (nonexistent) +++ trunk/footprint/parametric/ssop (revision 34912) @@ -0,0 +1,33 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), SSOP + +#@@example ssop(14) + +#@@purpose Generate SSOP packages. + +#@@desc Generate SSOP packages with variable number of pins and +#@@desc row spacing + +#@@include so +#@@include common_subc.awk + +#@@over@default:pad_spacing 0.65 mm +#@@over@default:row_spacing 7.8 mm +#@@over@default:int_bloat 0.5 mm +#@@over@default:ext_bloat 0.13 mm +#@@over@default:pad_thickness 0.45 mm + +defaults="" +defaults="$defaults?pad_spacing=0.65mm," +defaults="$defaults?row_spacing=7.8mm," +defaults="$defaults?int_bloat=0.5mm," +defaults="$defaults?ext_bloat=0.13mm," +defaults="$defaults?rarc=25," +defaults="$defaults?silk_ext_x=18," +defaults="$defaults?silk_ext_y=22," +defaults="$defaults?pad_thickness=0.45mm" + + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/ssop ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/parametric/tssop =================================================================== --- trunk/footprint/parametric/tssop (nonexistent) +++ trunk/footprint/parametric/tssop (revision 34912) @@ -0,0 +1,33 @@ +#!/bin/sh + +# Reference: Microchip Packaging Specification DS00000049BX (en012702.pdf), MSOP + +#@@example tssop(8) + +#@@purpose Generate TSSOP packages. + +#@@desc Generate TSSOP 4.4mm body packages with variable number of pins and +#@@desc row spacing + +#@@include so +#@@include common_subc.awk + +#@@over@default:pad_spacing 0.65 mm +#@@over@default:row_spacing 6.4 mm +#@@over@default:int_bloat 0.6 mm +#@@over@default:ext_bloat 0.4 mm +#@@over@default:pad_thickness 0.45 mm + +defaults="" +defaults="$defaults?pad_spacing=0.65mm," +defaults="$defaults?row_spacing=6.4mm," +defaults="$defaults?int_bloat=0.6mm," +defaults="$defaults?ext_bloat=0.4mm," +defaults="$defaults?rarc=25," +defaults="$defaults?silk_ext_x=18," +defaults="$defaults?silk_ext_y=22," +defaults="$defaults?pad_thickness=0.45mm" + + +awk -f `dirname $0`/common_subc.awk -f `dirname $0`/so.awk -v "args=$defaults,$*" -v gen=`basename $0` -v "genfull=$0" + Property changes on: trunk/footprint/parametric/tssop ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/footprint/smd/01005.fp =================================================================== --- trunk/footprint/smd/01005.fp (nonexistent) +++ trunk/footprint/smd/01005.fp (revision 34912) @@ -0,0 +1,212 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 01005 Standard SMT resistor, capacitor etc + openscad = 01005.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 4.92mil + -5.11mil + -4.92mil + -5.11mil + -4.92mil + 5.11mil + 4.92mil + 5.11mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.92mil + -0.205994mm + -7.92mil + -0.205994mm + -7.92mil + 0.205994mm + 7.92mil + 0.205994mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 4.92mil + -5.11mil + -4.92mil + -5.11mil + -4.92mil + 5.11mil + 4.92mil + 5.11mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 17.92mil + rot = 0.000000 + y = 0.459994mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 34.06mil + rot = 0.000000 + y = 0.459994mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = -0.139954mm + y = -13.39mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.660146mm + x2 = 0.660146mm + ha:flags { + } + y1 = 0.459994mm + } + ha:line.12 { + clearance = 0.0 + y2 = 0.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.660146mm + x2 = 0.660146mm + ha:flags { + } + y1 = 0.459994mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.660146mm + x2 = 1.660146mm + ha:flags { + } + y1 = 0.459994mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.660146mm + x2 = 0.660146mm + ha:flags { + } + y1 = 0.459994mm + } + } + ha:combining { + } + } + } + } + uid = Q1c2peLxTgOy7O9YZ/8AAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/01005.scad =================================================================== --- trunk/footprint/smd/01005.scad (nonexistent) +++ trunk/footprint/smd/01005.scad (revision 34912) @@ -0,0 +1,19 @@ +module part_01005(len=0.4, width=0.2, height=0.13, pad_len=0.1) +{ + union() { + translate([0,0,height/2]) { + // body + color([0.1,0.1,0.1]) + cube([len-2*pad_len,width,height], center=true); + // terminals + color([0.8,0.8,0.8]) { + translate([+len/2-pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + color([0.8,0.8,0.8]) { + translate([-len/2+pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + } + } +} Index: trunk/footprint/smd/0201.fp =================================================================== --- trunk/footprint/smd/0201.fp (nonexistent) +++ trunk/footprint/smd/0201.fp (revision 34912) @@ -0,0 +1,212 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0201 Standard SMT resistor, capacitor etc + openscad = 0201.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -7.87mil + 7.87mil + 7.87mil + 7.87mil + 7.87mil + -7.87mil + -7.87mil + -7.87mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -0.276098mm + 0.276098mm + 0.276098mm + 0.276098mm + 0.276098mm + -0.276098mm + -0.276098mm + -0.276098mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -7.87mil + 7.87mil + 7.87mil + 7.87mil + 7.87mil + -7.87mil + -7.87mil + -7.87mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 20.87mil + rot = 0.000000 + y = 20.87mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 44.49mil + rot = 0.000000 + y = 20.87mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.029972mm + y = -10.63mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 20.87mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.830072mm + x2 = 0.830072mm + ha:flags { + } + y1 = 20.87mil + } + ha:line.12 { + clearance = 0.0 + y2 = 20.87mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.830072mm + x2 = 0.830072mm + ha:flags { + } + y1 = 20.87mil + } + ha:line.15 { + clearance = 0.0 + y2 = 20.87mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.830072mm + x2 = 1.830072mm + ha:flags { + } + y1 = 20.87mil + } + ha:line.18 { + clearance = 0.0 + y2 = 1.530098mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.830072mm + x2 = 0.830072mm + ha:flags { + } + y1 = 20.87mil + } + } + ha:combining { + } + } + } + } + uid = eStzy6mX6No40cDOtoEAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/0201.scad =================================================================== --- trunk/footprint/smd/0201.scad (nonexistent) +++ trunk/footprint/smd/0201.scad (revision 34912) @@ -0,0 +1,20 @@ +module part_0201(len=0.6, width=0.3, height=0.23, pad_len=0.15) +{ + union() { + translate([0,0,height/2]) { + // body + color([0.1,0.1,0.1]) + cube([len-2*pad_len,width,height], center=true); + // terminals + color([0.8,0.8,0.8]) { + translate([+len/2-pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + color([0.8,0.8,0.8]) { + translate([-len/2+pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + } + } +} + Index: trunk/footprint/smd/0402.fp =================================================================== --- trunk/footprint/smd/0402.fp (nonexistent) +++ trunk/footprint/smd/0402.fp (revision 34912) @@ -0,0 +1,212 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0402 Standard SMT resistor, capacitor etc + openscad = 0402.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.249936mm + -0.349758mm + -0.249936mm + -0.349758mm + -0.249936mm + 0.349758mm + 0.249936mm + 0.349758mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.326136mm + -0.425958mm + -0.326136mm + -0.425958mm + -0.326136mm + 0.425958mm + 0.326136mm + 0.425958mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.249936mm + -0.349758mm + -0.249936mm + -0.349758mm + -0.249936mm + 0.349758mm + 0.249936mm + 0.349758mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 0.580136mm + rot = 0.000000 + y = 0.679958mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 54.32mil + rot = 0.000000 + y = 0.679958mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 7.08mil + y = -4.73mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.979932mm + x2 = 0.979932mm + ha:flags { + } + y1 = 0.679958mm + } + ha:line.12 { + clearance = 0.0 + y2 = 0.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.979932mm + x2 = 0.979932mm + ha:flags { + } + y1 = 0.679958mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.979932mm + x2 = 1.979932mm + ha:flags { + } + y1 = 0.679958mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.979932mm + x2 = 0.979932mm + ha:flags { + } + y1 = 0.679958mm + } + } + ha:combining { + } + } + } + } + uid = xK4LY0258SGWTnYfnvwAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/0402.scad =================================================================== --- trunk/footprint/smd/0402.scad (nonexistent) +++ trunk/footprint/smd/0402.scad (revision 34912) @@ -0,0 +1,20 @@ +module part_0402(len=1.0, width=0.5, height=0.35, pad_len=0.25) +{ + union() { + translate([0,0,height/2]) { + // body + color([0.1,0.1,0.1]) + cube([len-2*pad_len,width,height], center=true); + // terminals + color([0.8,0.8,0.8]) { + translate([+len/2-pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + color([0.8,0.8,0.8]) { + translate([-len/2+pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + } + } +} + Index: trunk/footprint/smd/0603.fp =================================================================== --- trunk/footprint/smd/0603.fp (nonexistent) +++ trunk/footprint/smd/0603.fp (revision 34912) @@ -0,0 +1,212 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0603 Standard SMT resistor, capacitor etc + openscad = 0603.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.374904mm + -0.499872mm + -0.374904mm + -0.499872mm + -0.374904mm + 0.499872mm + 0.374904mm + 0.499872mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.76mil + -0.576072mm + -17.76mil + -0.576072mm + -17.76mil + 0.576072mm + 17.76mil + 0.576072mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.374904mm + -0.499872mm + -0.374904mm + -0.499872mm + -0.374904mm + 0.499872mm + 0.374904mm + 0.499872mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 27.76mil + rot = 0.000000 + y = 0.830072mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 2.005076mm + rot = 0.000000 + y = 0.830072mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 21.85mil + y = 0.029972mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 53.35mil + x2 = 53.35mil + ha:flags { + } + y1 = 0.830072mm + } + ha:line.12 { + clearance = 0.0 + y2 = 0.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 53.35mil + x2 = 53.35mil + ha:flags { + } + y1 = 0.830072mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 53.35mil + x2 = 2.35509mm + ha:flags { + } + y1 = 0.830072mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 53.35mil + x2 = 53.35mil + ha:flags { + } + y1 = 0.830072mm + } + } + ha:combining { + } + } + } + } + uid = XViXVIINgyaT6qmUrpMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/0603.scad =================================================================== --- trunk/footprint/smd/0603.scad (nonexistent) +++ trunk/footprint/smd/0603.scad (revision 34912) @@ -0,0 +1,20 @@ +module part_0603(len=1.6, width=0.8, height=0.45, pad_len=0.3) +{ + union() { + translate([0,0,height/2]) { + // body + color([0.1,0.1,0.1]) + cube([len-2*pad_len,width,height], center=true); + // terminals + color([0.8,0.8,0.8]) { + translate([+len/2-pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + color([0.8,0.8,0.8]) { + translate([-len/2+pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + } + } +} + Index: trunk/footprint/smd/0805.fp =================================================================== --- trunk/footprint/smd/0805.fp (nonexistent) +++ trunk/footprint/smd/0805.fp (revision 34912) @@ -0,0 +1,236 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0805 Standard SMT resistor, capacitor etc + openscad = 0805.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.749808mm + -0.649986mm + -0.749808mm + -0.649986mm + 0.749808mm + 0.649986mm + 0.749808mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.726186mm + -32.52mil + -0.726186mm + -32.52mil + -0.726186mm + 32.52mil + 0.726186mm + 32.52mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.749808mm + -0.649986mm + -0.749808mm + -0.649986mm + 0.749808mm + 0.649986mm + 0.749808mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 38.59mil + rot = 0.000000 + y = 42.52mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 109.45mil + rot = 0.000000 + y = 42.52mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 14.97mil + thickness = 8.0mil + ha:attributes { + } + x1 = 70.09mil + x2 = 77.95mil + ha:flags { + } + y1 = 14.97mil + } + ha:line.12 { + clearance = 0.0 + y2 = 1.779778mm + thickness = 8.0mil + ha:attributes { + } + x1 = 70.09mil + x2 = 77.95mil + ha:flags { + } + y1 = 1.779778mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 42.52mil + y = 0.279908mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 42.52mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.880108mm + x2 = 1.880108mm + ha:flags { + } + y1 = 42.52mil + } + ha:line.18 { + clearance = 0.0 + y2 = 42.52mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.880108mm + x2 = 1.880108mm + ha:flags { + } + y1 = 42.52mil + } + ha:line.21 { + clearance = 0.0 + y2 = 42.52mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.880108mm + x2 = 2.880108mm + ha:flags { + } + y1 = 42.52mil + } + ha:line.24 { + clearance = 0.0 + y2 = 2.080008mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.880108mm + x2 = 1.880108mm + ha:flags { + } + y1 = 42.52mil + } + } + ha:combining { + } + } + } + } + uid = Gb4CEJNqF8FflGx6irgAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/0805.scad =================================================================== --- trunk/footprint/smd/0805.scad (nonexistent) +++ trunk/footprint/smd/0805.scad (revision 34912) @@ -0,0 +1,19 @@ +module part_0805(len=2, width=1.2, height=0.5, pad_len=0.4) +{ + union() { + translate([0,0,height/2]) { + // body + color([0.1,0.1,0.1]) + cube([len-2*pad_len,width,height], center=true); + // terminals + color([0.8,0.8,0.8]) { + translate([+len/2-pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + color([0.8,0.8,0.8]) { + translate([-len/2+pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + } + } +} Index: trunk/footprint/smd/1008.fp =================================================================== --- trunk/footprint/smd/1008.fp (nonexistent) +++ trunk/footprint/smd/1008.fp (revision 34912) @@ -0,0 +1,235 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1008 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.54991mm + -45.27mil + -0.54991mm + -45.27mil + -0.54991mm + 45.27mil + 0.54991mm + 45.27mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.62611mm + -48.27mil + -0.62611mm + -48.27mil + -0.62611mm + 48.27mil + 0.62611mm + 48.27mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.54991mm + -45.27mil + -0.54991mm + -45.27mil + -0.54991mm + 45.27mil + 0.54991mm + 45.27mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 0.88011mm + rot = 0.000000 + y = 58.27mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.480054mm + rot = 0.000000 + y = 58.27mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.0mil + thickness = 8.0mil + ha:attributes { + } + x1 = 72.06mil + x2 = 2.52984mm + ha:flags { + } + y1 = 13.0mil + } + ha:line.12 { + clearance = 0.0 + y2 = 103.54mil + thickness = 8.0mil + ha:attributes { + } + x1 = 72.06mil + x2 = 2.52984mm + ha:flags { + } + y1 = 103.54mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.379982mm + y = 0.679958mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 58.27mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.180082mm + x2 = 2.180082mm + ha:flags { + } + y1 = 58.27mil + } + ha:line.18 { + clearance = 0.0 + y2 = 58.27mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.180082mm + x2 = 2.180082mm + ha:flags { + } + y1 = 58.27mil + } + ha:line.21 { + clearance = 0.0 + y2 = 58.27mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.180082mm + x2 = 3.180082mm + ha:flags { + } + y1 = 58.27mil + } + ha:line.24 { + clearance = 0.0 + y2 = 2.480058mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.180082mm + x2 = 2.180082mm + ha:flags { + } + y1 = 58.27mil + } + } + ha:combining { + } + } + } + } + uid = bZx6+gfdERtBSuYKqRIAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/1206.fp =================================================================== --- trunk/footprint/smd/1206.fp (nonexistent) +++ trunk/footprint/smd/1206.fp (revision 34912) @@ -0,0 +1,236 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1206 Standard SMT resistor, capacitor etc + openscad = 1206.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.94996mm + -0.649986mm + -0.94996mm + -0.649986mm + 0.94996mm + 0.649986mm + 0.94996mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.726186mm + -1.02616mm + -0.726186mm + -1.02616mm + -0.726186mm + 1.02616mm + 0.726186mm + 1.02616mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.94996mm + -0.649986mm + -0.94996mm + -0.649986mm + 0.94996mm + 0.649986mm + 0.94996mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 38.59mil + rot = 0.000000 + y = 1.28016mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.979926mm + rot = 0.000000 + y = 1.28016mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.0mil + thickness = 8.0mil + ha:attributes { + } + x1 = 1.880108mm + x2 = 121.26mil + ha:flags { + } + y1 = 13.0mil + } + ha:line.12 { + clearance = 0.0 + y2 = 2.23012mm + thickness = 8.0mil + ha:attributes { + } + x1 = 1.880108mm + x2 = 121.26mil + ha:flags { + } + y1 = 2.23012mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 66.14mil + y = 0.48006mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 1.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 1.28016mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 1.28016mm + } + ha:line.21 { + clearance = 0.0 + y2 = 1.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 97.64mil + x2 = 3.480056mm + ha:flags { + } + y1 = 1.28016mm + } + ha:line.24 { + clearance = 0.0 + y2 = 2.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 1.28016mm + } + } + ha:combining { + } + } + } + } + uid = pjaLj8tSfYLVqy1mjLYAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/1206.scad =================================================================== --- trunk/footprint/smd/1206.scad (nonexistent) +++ trunk/footprint/smd/1206.scad (revision 34912) @@ -0,0 +1,20 @@ +module part_1206(len=3.2, width=1.6, height=0.6, pad_len=0.5) +{ + union() { + translate([0,0,height/2]) { + // body + color([0.1,0.1,0.1]) + cube([len-2*pad_len,width,height], center=true); + // terminals + color([0.8,0.8,0.8]) { + translate([+len/2-pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + color([0.8,0.8,0.8]) { + translate([-len/2+pad_len/2, 0, 0]) + cube([pad_len, width, height], center=true); + } + } + } +} + Index: trunk/footprint/smd/1210.fp =================================================================== --- trunk/footprint/smd/1210.fp (nonexistent) +++ trunk/footprint/smd/1210.fp (revision 34912) @@ -0,0 +1,235 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1210 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -53.14mil + -0.649986mm + -53.14mil + -0.649986mm + 53.14mil + 0.649986mm + 53.14mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.726186mm + -56.14mil + -0.726186mm + -56.14mil + -0.726186mm + 56.14mil + 0.726186mm + 56.14mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -53.14mil + -0.649986mm + -53.14mil + -0.649986mm + 53.14mil + 0.649986mm + 53.14mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 38.59mil + rot = 0.000000 + y = 66.14mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.979926mm + rot = 0.000000 + y = 66.14mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.0mil + thickness = 8.0mil + ha:attributes { + } + x1 = 1.980184mm + x2 = 2.979928mm + ha:flags { + } + y1 = 13.0mil + } + ha:line.12 { + clearance = 0.0 + y2 = 119.28mil + thickness = 8.0mil + ha:attributes { + } + x1 = 1.980184mm + x2 = 2.979928mm + ha:flags { + } + y1 = 119.28mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 66.14mil + y = 34.64mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 66.14mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 66.14mil + } + ha:line.18 { + clearance = 0.0 + y2 = 66.14mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 66.14mil + } + ha:line.21 { + clearance = 0.0 + y2 = 66.14mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 97.64mil + x2 = 3.480056mm + ha:flags { + } + y1 = 66.14mil + } + ha:line.24 { + clearance = 0.0 + y2 = 2.679956mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 66.14mil + } + } + ha:combining { + } + } + } + } + uid = OUdoBtbWh4DAdxBsTZ4AAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/1806.fp =================================================================== --- trunk/footprint/smd/1806.fp (nonexistent) +++ trunk/footprint/smd/1806.fp (revision 34912) @@ -0,0 +1,235 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1806 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -1.699895mm + -31.495mil + -1.699895mm + -31.495mil + 1.699895mm + 31.495mil + 1.699895mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.876173mm + -1.776095mm + -0.876173mm + -1.776095mm + -0.876173mm + 1.776095mm + 0.876173mm + 1.776095mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -1.699895mm + -31.495mil + -1.699895mm + -31.495mil + 1.699895mm + 31.495mil + 1.699895mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.130173mm + rot = 0.000000 + y = 2.030095mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 5.130165mm + rot = 0.000000 + y = 2.030095mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.005mil + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 13.005mil + } + ha:line.12 { + clearance = 0.0 + y2 = 3.729863mm + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 3.729863mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 2.330069mm + y = 1.229995mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 2.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 2.030095mm + } + ha:line.18 { + clearance = 0.0 + y2 = 2.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 2.030095mm + } + ha:line.21 { + clearance = 0.0 + y2 = 2.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.130169mm + x2 = 4.130169mm + ha:flags { + } + y1 = 2.030095mm + } + ha:line.24 { + clearance = 0.0 + y2 = 3.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 2.030095mm + } + } + ha:combining { + } + } + } + } + uid = oTnHpP1lGoaqmqIT+SoAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/1825.fp =================================================================== --- trunk/footprint/smd/1825.fp (nonexistent) +++ trunk/footprint/smd/1825.fp (revision 34912) @@ -0,0 +1,235 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1825 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -3.399917mm + -31.495mil + -3.399917mm + -31.495mil + 3.399917mm + 31.495mil + 3.399917mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.876173mm + -3.476117mm + -0.876173mm + -3.476117mm + -0.876173mm + 3.476117mm + 0.876173mm + 3.476117mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -3.399917mm + -31.495mil + -3.399917mm + -31.495mil + 3.399917mm + 31.495mil + 3.399917mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.130173mm + rot = 0.000000 + y = 3.730117mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 5.130165mm + rot = 0.000000 + y = 3.730117mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.005mil + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 13.005mil + } + ha:line.12 { + clearance = 0.0 + y2 = 7.129907mm + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 7.129907mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 2.330069mm + y = 115.355mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 3.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 3.730117mm + } + ha:line.18 { + clearance = 0.0 + y2 = 3.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 3.730117mm + } + ha:line.21 { + clearance = 0.0 + y2 = 3.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.130169mm + x2 = 4.130169mm + ha:flags { + } + y1 = 3.730117mm + } + ha:line.24 { + clearance = 0.0 + y2 = 4.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 3.730117mm + } + } + ha:combining { + } + } + } + } + uid = k6ig2fGd0J0pkK+aZVsAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/2706.fp =================================================================== --- trunk/footprint/smd/2706.fp (nonexistent) +++ trunk/footprint/smd/2706.fp (revision 34912) @@ -0,0 +1,259 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 2706 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 39.0mil + -42.0mil + -39.0mil + -42.0mil + -39.0mil + 42.0mil + 39.0mil + 42.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 42.0mil + -45.0mil + -42.0mil + -45.0mil + -42.0mil + 45.0mil + 42.0mil + 45.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 39.0mil + -42.0mil + -39.0mil + -42.0mil + -39.0mil + 42.0mil + 39.0mil + 42.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.422792mm + rot = 0.000000 + y = 1.498992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 6.909192mm + rot = 0.000000 + y = 1.498992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.870592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.870592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 8.204592mm + ha:flags { + } + y1 = 2.870592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.204592mm + x2 = 8.204592mm + ha:flags { + } + y1 = 2.870592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.204592mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 8.712592mm + y = 1.498992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.21 { + clearance = 0.0 + y2 = 1.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.165992mm + x2 = 4.165992mm + ha:flags { + } + y1 = 1.498992mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.165992mm + x2 = 4.165992mm + ha:flags { + } + y1 = 1.498992mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.165992mm + x2 = 5.165992mm + ha:flags { + } + y1 = 1.498992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.165992mm + x2 = 4.165992mm + ha:flags { + } + y1 = 1.498992mm + } + } + ha:combining { + } + } + } + } + uid = FePvr11aAXKyPT8fC0AAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/DO214.fp =================================================================== --- trunk/footprint/smd/DO214.fp (nonexistent) +++ trunk/footprint/smd/DO214.fp (revision 34912) @@ -0,0 +1,283 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DO214 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 70.0mil + -89.0mil + -70.0mil + -89.0mil + -70.0mil + 89.0mil + 70.0mil + 89.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 73.0mil + -92.0mil + -73.0mil + -92.0mil + -73.0mil + 92.0mil + 73.0mil + 92.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 70.0mil + -89.0mil + -70.0mil + -89.0mil + -70.0mil + 89.0mil + 70.0mil + 89.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.921783mm + rot = 0.000000 + y = 3.022992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 8.306583mm + rot = 0.000000 + y = 3.022992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 5.283592mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.762392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 5.918592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 2.032783mm + ha:flags { + } + y1 = 5.283592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.918592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.032783mm + x2 = 10.719583mm + ha:flags { + } + y1 = 5.918592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.719583mm + x2 = 10.719583mm + ha:flags { + } + y1 = 5.918592mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.719583mm + x2 = 2.032783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.762392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.032783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.227583mm + y = 3.022992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 3.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.614183mm + x2 = 5.614183mm + ha:flags { + } + y1 = 3.022992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 3.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.614183mm + x2 = 5.614183mm + ha:flags { + } + y1 = 3.022992mm + } + ha:line.33 { + clearance = 0.0 + y2 = 3.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.614183mm + x2 = 6.614183mm + ha:flags { + } + y1 = 3.022992mm + } + ha:line.36 { + clearance = 0.0 + y2 = 4.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.614183mm + x2 = 5.614183mm + ha:flags { + } + y1 = 3.022992mm + } + } + ha:combining { + } + } + } + } + uid = BVofxkidfNHI5Q7do+oAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/DO214.scad =================================================================== --- trunk/footprint/smd/DO214.scad (nonexistent) +++ trunk/footprint/smd/DO214.scad (revision 34912) @@ -0,0 +1,104 @@ +// Parametric model for DO214 AA/AB/AC packages +// +// Copyright (C) 2020 Alexey Kosilin +// +// File distribution license: +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +// +// The above distribution license applies when the file is distributed as a +// stand alone model file or as part of a library, in both cases intended +// for reuse combined by the user with other openscad scripts. +// +// Use license: +// as a special exception, the content of the file may be +// embedded in an openscad script that represents a printed circuit board, +// for example when a board is exported by pcb-rnd. In such use case, +// the content of this file may be copied into the resulting board file +// with or without modifications, without affecting the board file's license +// in any way. +// + +module part_do214 (var) +{ + module impl (L, W, H, P, Tw, Th) + { + delta = 1e-3 ; + $fn = 30 ; + + module lead (P, Tw, Th) + color ([0.9, 0.9, 0.9]) + translate ([-delta, -Tw/2, -delta]) + { + translate ([0.3/2, 0, 0.3/2]) + rotate ([-90, 0, 0]) + cylinder (d = 0.3, h = Tw) ; + + translate ([0.3/2, 0, Th]) + rotate ([-90, 0, 0]) + cylinder (d = 0.3, h = Tw) ; + + translate ([0, 0, 0.3/2]) + cube ([0.3, Tw, Th - 0.3/2]) ; + + translate ([0.3/2, 0, 0]) + cube ([3*P - 0.3/2, Tw, 0.3]) ; + + translate ([0.3/2, 0, Th - 0.3/2]) + cube ([2*P - 0.3/2, Tw, 0.3]) ; + } + + module case() + hull() + { + translate ([0, 0, H/2]) + cube ([L*0.95, W*0.95, H], center = true) ; + + translate ([0, 0, Th]) + cube ([L, W, delta], center = true) ; + } + + color ([0.5, 0.5, 0.5]) + intersection() + { + translate ([-L/3, -5, -5]) + cube ([0.5, 10, 10]) ; + + scale (1.002) + case() ; + } + + color ([0.3, 0.3, 0.3]) + case() ; + + translate ([-L/2-P, 0, 0]) + lead (P, Tw, Th) ; + + translate ([L/2+P, 0, 0]) + mirror ([1, 0, 0]) + lead (P, Tw, Th) ; + } + + variants = [ "AA", "AB", "AC" ] ; + + L = [ 4.57, 7.11, 4.6 ] ; + W = [ 3.94, 6.22, 2.90 ] ; + H = [ 2.5, 2.62, 2.45 ] ; + Tw = [ 2.21, 3.2, 1.65 ] ; + Tl = [ 5.59, 8.13, 5.35 ] ; + + idx = search ([var], variants)[0] ; + + impl (L[idx], W[idx], H[idx], (Tl[idx]-L[idx]) / 2, Tw[idx], H[idx]/2) ; +} Index: trunk/footprint/smd/DO214AB.fp =================================================================== --- trunk/footprint/smd/DO214AB.fp (nonexistent) +++ trunk/footprint/smd/DO214AB.fp (revision 34912) @@ -0,0 +1,285 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DO214AB SMT diode (pin 1 is cathode) + openscad-param="AB" + openscad=DO214.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 72.5mil + -92.5mil + -72.5mil + -92.5mil + -72.5mil + 92.5mil + 72.5mil + 92.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 75.5mil + -95.5mil + -75.5mil + -95.5mil + -75.5mil + 95.5mil + 75.5mil + 95.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 72.5mil + -92.5mil + -72.5mil + -92.5mil + -72.5mil + 92.5mil + 72.5mil + 92.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.997983mm + rot = 0.000000 + y = 3.124592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 8.535183mm + rot = 0.000000 + y = 3.124592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 5.461392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.787792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 6.121792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 2.083583mm + ha:flags { + } + y1 = 5.461392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 6.121792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.083583mm + x2 = 11.024383mm + ha:flags { + } + y1 = 6.121792mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.024383mm + x2 = 11.024383mm + ha:flags { + } + y1 = 6.121792mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.024383mm + x2 = 2.083583mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.787792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.083583mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.532383mm + y = 3.124592mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 3.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 3.124592mm + } + ha:line.30 { + clearance = 0.0 + y2 = 3.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 3.124592mm + } + ha:line.33 { + clearance = 0.0 + y2 = 3.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.766583mm + x2 = 6.766583mm + ha:flags { + } + y1 = 3.124592mm + } + ha:line.36 { + clearance = 0.0 + y2 = 4.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 3.124592mm + } + } + ha:combining { + } + } + } + } + uid = LJaVZUMLh15GoNd+Ga8AAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/MPAK.fp =================================================================== --- trunk/footprint/smd/MPAK.fp (nonexistent) +++ trunk/footprint/smd/MPAK.fp (revision 34912) @@ -0,0 +1,381 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MPAK + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.5mil + -43.5mil + -15.5mil + -43.5mil + -15.5mil + 43.5mil + 15.5mil + 43.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 18.5mil + -46.5mil + -18.5mil + -46.5mil + -18.5mil + 46.5mil + 18.5mil + 46.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.5mil + -43.5mil + -15.5mil + -43.5mil + -15.5mil + 43.5mil + 15.5mil + 43.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 80.5mil + 43.5mil + 80.5mil + -43.5mil + -80.5mil + -43.5mil + -80.5mil + 43.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 83.5mil + 46.5mil + 83.5mil + -46.5mil + -83.5mil + -46.5mil + -83.5mil + 46.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 80.5mil + 43.5mil + 80.5mil + -43.5mil + -80.5mil + -43.5mil + -80.5mil + 43.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 0.940192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 2.210192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 3.480192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 4.750192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 2.845192mm + rot = 0.000000 + y = 1.651392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 14.300592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 14.300592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 5.588392mm + ha:flags { + } + y1 = 14.300592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588392mm + x2 = 5.588392mm + ha:flags { + } + y1 = 14.300592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.096392mm + y = 0.127392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.24 { + clearance = 0.0 + y2 = 10.531232mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.845192mm + x2 = 2.845192mm + ha:flags { + } + y1 = 10.531232mm + } + ha:line.27 { + clearance = 0.0 + y2 = 12.751192mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.940192mm + x2 = 0.940192mm + ha:flags { + } + y1 = 12.751192mm + } + ha:line.30 { + clearance = 0.0 + y2 = 13.751192mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.940192mm + x2 = 0.940192mm + ha:flags { + } + y1 = 12.751192mm + } + ha:line.33 { + clearance = 0.0 + y2 = 12.751192mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.940192mm + x2 = 1.940192mm + ha:flags { + } + y1 = 12.751192mm + } + } + ha:combining { + } + } + } + } + uid = eZwOg7hh3XSQ6QI9EysAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SC70_3.fp =================================================================== --- trunk/footprint/smd/SC70_3.fp (nonexistent) +++ trunk/footprint/smd/SC70_3.fp (revision 34912) @@ -0,0 +1,277 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SC70_3 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 58.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.087033mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.477433mm + x2 = 1.477433mm + ha:flags { + } + y1 = 2.087033mm + } + ha:line.25 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = aeq5mTHtKdZxz1ABi/wAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SC70_4.fp =================================================================== --- trunk/footprint/smd/SC70_4.fp (nonexistent) +++ trunk/footprint/smd/SC70_4.fp (revision 34912) @@ -0,0 +1,363 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SC70_4 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -16.0mil + -14.5mil + -16.0mil + 14.5mil + 16.0mil + 14.5mil + 16.0mil + -14.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -19.0mil + -17.5mil + -19.0mil + 17.5mil + 19.0mil + 17.5mil + 19.0mil + -17.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -16.0mil + -14.5mil + -16.0mil + 14.5mil + 16.0mil + 14.5mil + 16.0mil + -14.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 37.0mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 70.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 59.125mil + x2 = 59.125mil + ha:flags { + } + y1 = 70.5mil + } + ha:line.26 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.29 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.32 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = lUXAYtVgjXtuvW/Gy1MAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SC90.fp =================================================================== --- trunk/footprint/smd/SC90.fp (nonexistent) +++ trunk/footprint/smd/SC90.fp (revision 34912) @@ -0,0 +1,277 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SC90 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -14.0mil + -12.0mil + -14.0mil + -12.0mil + 14.0mil + 12.0mil + 14.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.0mil + -17.0mil + -15.0mil + -17.0mil + -15.0mil + 17.0mil + 15.0mil + 17.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -14.0mil + -12.0mil + -14.0mil + -12.0mil + 14.0mil + 12.0mil + 14.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 91.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 91.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 49.0mil + rot = 0.000000 + y = 32.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 111.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 13.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 111.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 86.0mil + ha:flags { + } + y1 = 111.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 13.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 86.0mil + x2 = 86.0mil + ha:flags { + } + y1 = 111.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 13.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 86.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 13.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 106.0mil + y = 13.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 1.811866mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.253066mm + x2 = 1.253066mm + ha:flags { + } + y1 = 1.811866mm + } + ha:line.25 { + clearance = 0.0 + y2 = 91.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 91.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.3114mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 91.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 91.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 30.0mil + x2 = 1.762mm + ha:flags { + } + y1 = 91.0mil + } + } + ha:combining { + } + } + } + } + uid = Y7qfWU1Va5qxQ5ui32QAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOD106A.fp =================================================================== --- trunk/footprint/smd/SOD106A.fp (nonexistent) +++ trunk/footprint/smd/SOD106A.fp (revision 34912) @@ -0,0 +1,283 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD106A SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 51.0mil + -68.0mil + -51.0mil + -68.0mil + -51.0mil + 68.0mil + 51.0mil + 68.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 54.0mil + -71.0mil + -54.0mil + -71.0mil + -54.0mil + 71.0mil + 54.0mil + 71.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 51.0mil + -68.0mil + -51.0mil + -68.0mil + -51.0mil + 68.0mil + 51.0mil + 68.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.286783mm + rot = 0.000000 + y = 2.337192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 6.147583mm + rot = 0.000000 + y = 2.337192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 4.064392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.609992mm + } + ha:line.10 { + clearance = 0.0 + y2 = 4.546992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.550183mm + ha:flags { + } + y1 = 4.064392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 4.546992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.550183mm + x2 = 7.925583mm + ha:flags { + } + y1 = 4.546992mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.925583mm + x2 = 7.925583mm + ha:flags { + } + y1 = 4.546992mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.925583mm + x2 = 1.550183mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.609992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.550183mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 8.433583mm + y = 2.337192mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.33 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.217183mm + x2 = 5.217183mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.36 { + clearance = 0.0 + y2 = 3.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.337192mm + } + } + ha:combining { + } + } + } + } + uid = nAb7/3R/VK5t4jRpvCYAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOD110.fp =================================================================== --- trunk/footprint/smd/SOD110.fp (nonexistent) +++ trunk/footprint/smd/SOD110.fp (revision 34912) @@ -0,0 +1,283 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD110 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 23.0mil + -38.0mil + -23.0mil + -38.0mil + -23.0mil + 38.0mil + 23.0mil + 38.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 26.0mil + -41.0mil + -26.0mil + -41.0mil + -26.0mil + 41.0mil + 26.0mil + 41.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 23.0mil + -38.0mil + -23.0mil + -38.0mil + -23.0mil + 38.0mil + 23.0mil + 38.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.372383mm + rot = 0.000000 + y = 1.371992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 2.845583mm + rot = 0.000000 + y = 1.371992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.406792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.838983mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.838983mm + x2 = 3.709183mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.709183mm + x2 = 3.709183mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.709183mm + x2 = 0.838983mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.406792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.838983mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 4.217183mm + y = 1.371992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.108983mm + x2 = 2.108983mm + ha:flags { + } + y1 = 1.371992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.108983mm + x2 = 2.108983mm + ha:flags { + } + y1 = 1.371992mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.108983mm + x2 = 3.108983mm + ha:flags { + } + y1 = 1.371992mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.108983mm + x2 = 2.108983mm + ha:flags { + } + y1 = 1.371992mm + } + } + ha:combining { + } + } + } + } + uid = GrzapLkK/Y8pdEkIr7EAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOD123.fp =================================================================== --- trunk/footprint/smd/SOD123.fp (nonexistent) +++ trunk/footprint/smd/SOD123.fp (revision 34912) @@ -0,0 +1,284 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD123 SMT diode (pin 1 is cathode) + openscad=SOD123.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 34.5mil + -40.5mil + -34.5mil + -40.5mil + -34.5mil + 40.5mil + 34.5mil + 40.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 37.5mil + -43.5mil + -37.5mil + -43.5mil + -37.5mil + 43.5mil + 37.5mil + 43.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 34.5mil + -40.5mil + -34.5mil + -40.5mil + -34.5mil + 40.5mil + 34.5mil + 40.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.651783mm + rot = 0.000000 + y = 1.422792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.445783mm + rot = 0.000000 + y = 1.422792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.438792mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.406792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.718192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.118383mm + ha:flags { + } + y1 = 2.438792mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.718192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.118383mm + x2 = 5.588783mm + ha:flags { + } + y1 = 2.718192mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588783mm + x2 = 5.588783mm + ha:flags { + } + y1 = 2.718192mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588783mm + x2 = 1.118383mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.406792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.118383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.096783mm + y = 1.422792mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.048783mm + x2 = 3.048783mm + ha:flags { + } + y1 = 1.422792mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.048783mm + x2 = 3.048783mm + ha:flags { + } + y1 = 1.422792mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.048783mm + x2 = 4.048783mm + ha:flags { + } + y1 = 1.422792mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.048783mm + x2 = 3.048783mm + ha:flags { + } + y1 = 1.422792mm + } + } + ha:combining { + } + } + } + } + uid = bK7s+7eWCVc1F+i9KCMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOD123.scad =================================================================== --- trunk/footprint/smd/SOD123.scad (nonexistent) +++ trunk/footprint/smd/SOD123.scad (revision 34912) @@ -0,0 +1,89 @@ +// Model for SOD123 package +// +// Copyright (C) 2020 Alexey Kosilin +// +// File distribution license: +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +// +// The above distribution license applies when the file is distributed as a +// stand alone model file or as part of a library, in both cases intended +// for reuse combined by the user with other openscad scripts. +// +// Use license: +// as a special exception, the content of the file may be +// embedded in an openscad script that represents a printed circuit board, +// for example when a board is exported by pcb-rnd. In such use case, +// the content of this file may be copied into the resulting board file +// with or without modifications, without affecting the board file's license +// in any way. +// + +module part_sod123() +{ + $fn = 30 ; + + A = 1.35 ; + D = 1.8 ; + E = 2.84 ; + He = 3.86 ; + + c = 0.15 ; + L = 0.25 ; + b = 0.71 ; + l2 = 0.15 ; + + module lead() + color ([0.9, 0.9, 0.9]) + { + translate ([0, -b/2, L+c]) + rotate ([-90, 0, 0]) + rotate_extrude (angle = 90) + translate ([L, 0, 0]) + square ([c, b]) ; + + translate ([L, -b/2, L+c]) + cube ([c, b, A/2 - (L+c)]) ; + + translate ([c+l2+L, b/2, A/2]) + rotate ([90, -90, 0]) + rotate_extrude (angle = 90) + translate ([l2, 0, 0]) + square ([c, b]) ; + } + + module case() + translate ([He/2 - E/2 - He/2, -D/2, 0]) + cube ([E, D, A]) ; + + translate ([-He/2, 0, 0]) + lead() ; + + translate ([He/2, 0, 0]) + mirror ([1, 0, 0]) + lead() ; + + color ([0.5, 0.5, 0.5]) + intersection() + { + translate ([-He/4, -5, -5]) + cube ([0.3, 10, 10]) ; + + scale (1.002) + case() ; + } + + color ([0.3, 0.3, 0.3]) + case() ; +} Index: trunk/footprint/smd/SOD323.fp =================================================================== --- trunk/footprint/smd/SOD323.fp (nonexistent) +++ trunk/footprint/smd/SOD323.fp (revision 34912) @@ -0,0 +1,284 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD323 SMT diode (pin 1 is cathode) + openscad=SOD323.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 25.5mil + -35.5mil + -25.5mil + -35.5mil + -25.5mil + 35.5mil + 25.5mil + 35.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 28.5mil + -38.5mil + -28.5mil + -38.5mil + -28.5mil + 38.5mil + 28.5mil + 38.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 25.5mil + -35.5mil + -25.5mil + -35.5mil + -25.5mil + 35.5mil + 25.5mil + 35.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.423183mm + rot = 0.000000 + y = 1.270392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.302783mm + rot = 0.000000 + y = 1.270392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.159392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.381392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.413392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.889783mm + ha:flags { + } + y1 = 2.159392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.413392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.889783mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.413392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.413392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.217183mm + x2 = 0.889783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.381392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.889783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 4.725183mm + y = 1.270392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.362983mm + x2 = 2.362983mm + ha:flags { + } + y1 = 1.270392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.362983mm + x2 = 2.362983mm + ha:flags { + } + y1 = 1.270392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.362983mm + x2 = 3.362983mm + ha:flags { + } + y1 = 1.270392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.362983mm + x2 = 2.362983mm + ha:flags { + } + y1 = 1.270392mm + } + } + ha:combining { + } + } + } + } + uid = 2dW9Tvw7RTxCX0jj23YAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOD323.scad =================================================================== --- trunk/footprint/smd/SOD323.scad (nonexistent) +++ trunk/footprint/smd/SOD323.scad (revision 34912) @@ -0,0 +1,79 @@ +// Model for SOD323 package +// +// Copyright (C) 2020 Alexey Kosilin +// +// File distribution license: +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +// +// The above distribution license applies when the file is distributed as a +// stand alone model file or as part of a library, in both cases intended +// for reuse combined by the user with other openscad scripts. +// +// Use license: +// as a special exception, the content of the file may be +// embedded in an openscad script that represents a printed circuit board, +// for example when a board is exported by pcb-rnd. In such use case, +// the content of this file may be copied into the resulting board file +// with or without modifications, without affecting the board file's license +// in any way. +// + +module part_sod323() +{ + $fn = 30 ; + + module lead() + color ([0.9, 0.9, 0.9]) + { + translate ([0, -0.35/2, 0.4]) + rotate ([-90, 0, 0]) + rotate_extrude (angle = 90) + translate ([0.25, 0, 0]) + square ([0.15, 0.35]) ; + + translate ([0.25, -0.35/2, 0.4]) + cube ([0.15, 0.35, 1.35/2 - 0.4]) ; + + translate ([0.5, 0.35/2, 1.35/2]) + rotate ([90, -90, 0]) + rotate_extrude (angle = 90) + translate ([0.1, 0, 0]) + square ([0.15, 0.35]) ; + } + + module case() + translate ([-0.9, -0.7, 0]) + cube ([1.8, 1.4, 1.35]) ; + + translate ([-0.5-0.9, 0, 0]) + lead() ; + + mirror ([1, 0, 0]) + translate ([-0.5-0.9, 0, 0]) + lead() ; + + color ([0.5, 0.5, 0.5]) + intersection() + { + translate ([-0.7, -5, -5]) + cube ([0.3, 10, 10]) ; + + scale (1.002) + case() ; + } + + color ([0.3, 0.3, 0.3]) + case() ; +} Index: trunk/footprint/smd/SOD80.fp =================================================================== --- trunk/footprint/smd/SOD80.fp (nonexistent) +++ trunk/footprint/smd/SOD80.fp (revision 34912) @@ -0,0 +1,283 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD80 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 26.5mil + -42.5mil + -26.5mil + -42.5mil + -26.5mil + 42.5mil + 26.5mil + 42.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 29.5mil + -45.5mil + -29.5mil + -45.5mil + -29.5mil + 45.5mil + 29.5mil + 45.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 26.5mil + -42.5mil + -26.5mil + -42.5mil + -26.5mil + 42.5mil + 26.5mil + 42.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.473983mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.420383mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.432192mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.915183mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.915183mm + x2 = 5.385583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.385583mm + x2 = 5.385583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.385583mm + x2 = 0.915183mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.915183mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 5.893583mm + y = 1.524392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.947183mm + x2 = 2.947183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.947183mm + x2 = 2.947183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.947183mm + x2 = 3.947183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.947183mm + x2 = 2.947183mm + ha:flags { + } + y1 = 1.524392mm + } + } + ha:combining { + } + } + } + } + uid = VTNdQbVwPxfgsvfI80oAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOD87.fp =================================================================== --- trunk/footprint/smd/SOD87.fp (nonexistent) +++ trunk/footprint/smd/SOD87.fp (revision 34912) @@ -0,0 +1,283 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD87 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 30.5mil + -56.5mil + -30.5mil + -56.5mil + -30.5mil + 56.5mil + 30.5mil + 56.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 33.5mil + -59.5mil + -33.5mil + -59.5mil + -33.5mil + 59.5mil + 33.5mil + 59.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 30.5mil + -56.5mil + -30.5mil + -56.5mil + -30.5mil + 56.5mil + 30.5mil + 56.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.677183mm + rot = 0.000000 + y = 1.981592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.623583mm + rot = 0.000000 + y = 1.981592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 3.429392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.533792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 3.835792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.016783mm + ha:flags { + } + y1 = 3.429392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 3.835792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.016783mm + x2 = 5.791983mm + ha:flags { + } + y1 = 3.835792mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.791983mm + x2 = 5.791983mm + ha:flags { + } + y1 = 3.835792mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.791983mm + x2 = 1.016783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.533792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.016783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.299983mm + y = 1.981592mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.150383mm + x2 = 3.150383mm + ha:flags { + } + y1 = 1.981592mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.150383mm + x2 = 3.150383mm + ha:flags { + } + y1 = 1.981592mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.150383mm + x2 = 4.150383mm + ha:flags { + } + y1 = 1.981592mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.150383mm + x2 = 3.150383mm + ha:flags { + } + y1 = 1.981592mm + } + } + ha:combining { + } + } + } + } + uid = Q1gCDJRE1xA3loRFXQsAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT143.fp =================================================================== --- trunk/footprint/smd/SOT143.fp (nonexistent) +++ trunk/footprint/smd/SOT143.fp (revision 34912) @@ -0,0 +1,363 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT143 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -18.5mil + -17.0mil + -18.5mil + 17.0mil + 18.5mil + 17.0mil + 18.5mil + -17.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -21.5mil + -20.0mil + -21.5mil + 20.0mil + 21.5mil + 20.0mil + 21.5mil + -20.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -18.5mil + -17.0mil + -18.5mil + 17.0mil + 18.5mil + 17.0mil + 18.5mil + -17.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 20.0mil + -23.0mil + -20.0mil + -23.0mil + -20.0mil + 23.0mil + 20.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 39.5mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 109.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 109.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 35.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 134.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 134.0mil + x2 = 134.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 134.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 154.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 79.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 73.125mil + x2 = 73.125mil + ha:flags { + } + y1 = 79.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.29 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.32 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 35.0mil + x2 = 1.889mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = 0oigisyzTIDYQhx/ge0AAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT223.fp =================================================================== --- trunk/footprint/smd/SOT223.fp (nonexistent) +++ trunk/footprint/smd/SOT223.fp (revision 34912) @@ -0,0 +1,363 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT223 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 28.0mil + -61.0mil + -28.0mil + -61.0mil + -28.0mil + 61.0mil + 28.0mil + 61.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.0mil + -64.0mil + -31.0mil + -64.0mil + -31.0mil + 64.0mil + 31.0mil + 64.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 28.0mil + -61.0mil + -28.0mil + -61.0mil + -28.0mil + 61.0mil + 28.0mil + 61.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 106.0mil + 61.0mil + 106.0mil + -61.0mil + -106.0mil + -61.0mil + -106.0mil + 61.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 109.0mil + 64.0mil + 109.0mil + -64.0mil + -109.0mil + -64.0mil + -109.0mil + 64.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 106.0mil + 61.0mil + 106.0mil + -61.0mil + -106.0mil + -61.0mil + -106.0mil + 61.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.448192mm + rot = 0.000000 + y = 8.483992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.734192mm + rot = 0.000000 + y = 8.483992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 6.045592mm + rot = 0.000000 + y = 8.483992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 3.734192mm + rot = 0.000000 + y = 2.286392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 10.642992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 10.642992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 7.366392mm + ha:flags { + } + y1 = 10.642992mm + } + ha:line.13 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.366392mm + x2 = 7.366392mm + ha:flags { + } + y1 = 10.642992mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.366392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 7.874392mm + y = 0.127392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 6.934592mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.740542mm + x2 = 3.740542mm + ha:flags { + } + y1 = 6.934592mm + } + ha:line.26 { + clearance = 0.0 + y2 = 8.483992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.448192mm + x2 = 1.448192mm + ha:flags { + } + y1 = 8.483992mm + } + ha:line.29 { + clearance = 0.0 + y2 = 9.483992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.448192mm + x2 = 1.448192mm + ha:flags { + } + y1 = 8.483992mm + } + ha:line.32 { + clearance = 0.0 + y2 = 8.483992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.448192mm + x2 = 2.448192mm + ha:flags { + } + y1 = 8.483992mm + } + } + ha:combining { + } + } + } + } + uid = wL7+F9vz1VIcfqPPcnsAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT23.fp =================================================================== --- trunk/footprint/smd/SOT23.fp (nonexistent) +++ trunk/footprint/smd/SOT23.fp (revision 34912) @@ -0,0 +1,278 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT23 SMT transistor, 3 pins + openscad=SOT23.scad + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 20.0mil + -23.0mil + -20.0mil + -23.0mil + -20.0mil + 23.0mil + 20.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 35.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 113.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 74.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 158.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.353733mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 74.0mil + x2 = 74.0mil + ha:flags { + } + y1 = 2.353733mm + } + ha:line.25 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 35.0mil + x2 = 1.889mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = YmnO2BUK2cjwZjFkzKMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT23.scad =================================================================== --- trunk/footprint/smd/SOT23.scad (nonexistent) +++ trunk/footprint/smd/SOT23.scad (revision 34912) @@ -0,0 +1,68 @@ +// Model for SOT23 package +// +// Copyright (C) 2017,2020 Tibor 'Igor2' Palinkas +// +// File distribution license: +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +// +// The above distribution license applies when the file is distributed as a +// stand alone model file or as part of a library, in both cases intended +// for reuse combined by the user with other openscad scripts. +// +// Use license: +// as a special exception, the content of the file may be +// embedded in an openscad script that represents a printed circuit board, +// for example when a board is exported by pcb-rnd. In such use case, +// the content of this file may be copied into the resulting board file +// with or without modifications, without affecting the board file's license +// in any way. +// + +module sot23() +{ + module sot23_() + { + // pin prototype + module pin(length, height, thick) + { + linear_extrude(height=thick) + scale([length, -height, 1]) + polygon([[0.3400,0.0000],[0.3900,0.0100],[0.4300,0.0300],[0.4600,0.0600],[0.4789,0.0908],[0.6279,0.8307],[0.6500,0.8600],[0.6900,0.8900],[0.7300,0.9000],[1.0000,0.9000],[1.0000,1.0000],[0.6700,1.0012],[0.6100,0.9900],[0.5600,0.9600],[0.5300,0.9200],[0.5200,0.9000],[0.3721,0.1693],[0.3500,0.1400],[0.3100,0.1100],[0.2700,0.1000],[0.0000,0.1000],[0.0000,0.0000]]); + } + + rotate([90,0,-90]) scale([1.13,1.13,1.13]) translate([-0.9, 0.4, -2.1 - 0.43/2]) { + // body + color([0.1,0.1,0.1]) + linear_extrude(height=2.9) + polygon([[-0.55,0],[-0.45,0.53],[0.45,0.53],[0.55,0],[0.45,-0.35],[-0.45,-0.35]]); + + // 3 pins + color([0.9, 0.9, 0.9]) { + translate([0.5,0,0.5-0.43/2]) + pin(0.5, 0.4, 0.43); + + translate([0.5,0,2.3-0.43/2]) + pin(0.5, 0.4, 0.43); + + translate([-0.5,0,1.45-0.43/2]) + pin(-0.5, 0.4, 0.43); + } + } + } + + // match rotation with stock footprint's + rotate([0,0,90]) + sot23_(); +} Index: trunk/footprint/smd/SOT23D.fp =================================================================== --- trunk/footprint/smd/SOT23D.fp (nonexistent) +++ trunk/footprint/smd/SOT23D.fp (revision 34912) @@ -0,0 +1,279 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT23D SMT diode (pin 1 is cathode) + openscad=SOT23.scad + openscad-transformation={rotate([0,0,-90])} + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 20.0mil + -23.0mil + -20.0mil + -23.0mil + -20.0mil + 23.0mil + 20.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 35.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 113.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 74.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 158.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.353733mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 74.0mil + x2 = 74.0mil + ha:flags { + } + y1 = 2.353733mm + } + ha:line.25 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 35.0mil + x2 = 1.889mm + ha:flags { + } + y1 = 120.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = hksuSYo1TTefRrW2D28AAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT25.fp =================================================================== --- trunk/footprint/smd/SOT25.fp (nonexistent) +++ trunk/footprint/smd/SOT25.fp (revision 34912) @@ -0,0 +1,313 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT25 SMT transistor, 5 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.0mil + -23.0mil + -15.0mil + -23.0mil + -15.0mil + 23.0mil + 15.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 148.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.24 { + clearance = 0.0 + y2 = 1.79832mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 69.0mil + x2 = 69.0mil + ha:flags { + } + y1 = 1.79832mm + } + ha:line.27 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.30 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.33 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 30.0mil + x2 = 1.762mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = FitPy/jBEPpaQxnl1vgAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT26.fp =================================================================== --- trunk/footprint/smd/SOT26.fp (nonexistent) +++ trunk/footprint/smd/SOT26.fp (revision 34912) @@ -0,0 +1,331 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT26 SMT transistor, 6 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.0mil + -23.0mil + -15.0mil + -23.0mil + -15.0mil + 23.0mil + 15.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.24 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 148.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.25 { + clearance = 0.0 + y2 = 79.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 69.0mil + x2 = 69.0mil + ha:flags { + } + y1 = 79.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.34 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 30.0mil + x2 = 1.762mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = kS4vnWF4YqQfyJe4Fo8AAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT323.fp =================================================================== --- trunk/footprint/smd/SOT323.fp (nonexistent) +++ trunk/footprint/smd/SOT323.fp (revision 34912) @@ -0,0 +1,277 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT323 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 58.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.087033mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.477433mm + x2 = 1.477433mm + ha:flags { + } + y1 = 2.087033mm + } + ha:line.25 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = cXXouN6IWQ/t3brFf7YAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT323D.fp =================================================================== --- trunk/footprint/smd/SOT323D.fp (nonexistent) +++ trunk/footprint/smd/SOT323D.fp (revision 34912) @@ -0,0 +1,277 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT323D SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 58.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.087033mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.477433mm + x2 = 1.477433mm + ha:flags { + } + y1 = 2.087033mm + } + ha:line.25 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = bi96z3ATUk0N6MnhWkkAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT325.fp =================================================================== --- trunk/footprint/smd/SOT325.fp (nonexistent) +++ trunk/footprint/smd/SOT325.fp (revision 34912) @@ -0,0 +1,313 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT325 SMT transistor, 5 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 10.5mil + -20.5mil + -10.5mil + -20.5mil + -10.5mil + 20.5mil + 10.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 51.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 111.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.24 { + clearance = 0.0 + y2 = 63.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 51.1mil + x2 = 51.1mil + ha:flags { + } + y1 = 63.5mil + } + ha:line.27 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.30 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.33 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 25.5mil + x2 = 1.6477mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = 8pGeYOC0HklbCnV30cwAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT326.fp =================================================================== --- trunk/footprint/smd/SOT326.fp (nonexistent) +++ trunk/footprint/smd/SOT326.fp (revision 34912) @@ -0,0 +1,331 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT326 SMT transistor, 6 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 10.5mil + -20.5mil + -10.5mil + -20.5mil + -10.5mil + 20.5mil + 10.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 51.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 51.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.24 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 111.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.25 { + clearance = 0.0 + y2 = 70.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.299633mm + x2 = 1.299633mm + ha:flags { + } + y1 = 70.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.34 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 25.5mil + x2 = 1.6477mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = 6Bv/QN6fnFrzfC7tuHoAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/SOT89.fp =================================================================== --- trunk/footprint/smd/SOT89.fp (nonexistent) +++ trunk/footprint/smd/SOT89.fp (revision 34912) @@ -0,0 +1,363 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT89 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 18.5mil + -30.5mil + -18.5mil + -30.5mil + -18.5mil + 30.5mil + 18.5mil + 30.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 21.5mil + -33.5mil + -21.5mil + -33.5mil + -21.5mil + 33.5mil + 21.5mil + 33.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 18.5mil + -30.5mil + -18.5mil + -30.5mil + -18.5mil + 30.5mil + 18.5mil + 30.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 60.5mil + 30.5mil + 60.5mil + -30.5mil + -60.5mil + -30.5mil + -60.5mil + 30.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 63.5mil + 33.5mil + 63.5mil + -33.5mil + -63.5mil + -33.5mil + -63.5mil + 33.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 60.5mil + 30.5mil + 60.5mil + -30.5mil + -60.5mil + -30.5mil + -60.5mil + 30.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 36.5mil + rot = 0.000000 + y = 170.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 97.5mil + rot = 0.000000 + y = 170.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 158.5mil + rot = 0.000000 + y = 170.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 97.5mil + rot = 0.000000 + y = 48.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 213.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 6.5mil + x2 = 6.5mil + ha:flags { + } + y1 = 6.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 213.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 6.5mil + x2 = 189.5mil + ha:flags { + } + y1 = 213.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 6.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 189.5mil + x2 = 189.5mil + ha:flags { + } + y1 = 213.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 6.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 189.5mil + x2 = 6.5mil + ha:flags { + } + y1 = 6.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 209.5mil + y = 6.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 140.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 97.5mil + x2 = 97.5mil + ha:flags { + } + y1 = 140.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 170.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 36.5mil + x2 = 36.5mil + ha:flags { + } + y1 = 170.5mil + } + ha:line.29 { + clearance = 0.0 + y2 = 5.3307mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 36.5mil + x2 = 36.5mil + ha:flags { + } + y1 = 170.5mil + } + ha:line.32 { + clearance = 0.0 + y2 = 170.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 36.5mil + x2 = 1.9271mm + ha:flags { + } + y1 = 170.5mil + } + } + ha:combining { + } + } + } + } + uid = nhFNna5oWAROPukkSGYAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/TANT.scad =================================================================== --- trunk/footprint/smd/TANT.scad (nonexistent) +++ trunk/footprint/smd/TANT.scad (revision 34912) @@ -0,0 +1,95 @@ +// Various tantalum (from A to E) packages model +// +// Copyright (C) 2020 Alexey Kosilin +// +// File distribution license: +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +// +// The above distribution license applies when the file is distributed as a +// stand alone model file or as part of a library, in both cases intended +// for reuse combined by the user with other openscad scripts. +// +// Use license: +// as a special exception, the content of the file may be +// embedded in an openscad script that represents a printed circuit board, +// for example when a board is exported by pcb-rnd. In such use case, +// the content of this file may be copied into the resulting board file +// with or without modifications, without affecting the board file's license +// in any way. +// + +module part_tantalum (sz) +{ + module impl (L, W, H, P, Tw, Th) + { + delta = 1e-3 ; + $fn = 30 ; + + module lead (P, Tw, Th) + color ([0.9, 0.9, 0.9]) + translate ([-delta, -Tw/2, -delta]) + { + translate ([0.3/2, 0, 0.3/2]) + rotate ([-90, 0, 0]) + cylinder (d = 0.3, h = Tw) ; + + translate ([0, 0, 0.3/2]) + cube ([0.3, Tw, Th - 0.3/2]) ; + + translate ([0.3/2, 0, 0]) + cube ([P - 0.3/2, Tw, 0.3]) ; + } + + module case() + hull() + { + translate ([0, 0, H/2]) + cube ([L - 0.3*2, W - 0.2, H], center = true) ; + + translate ([0, 0, Th]) + cube ([L, W, delta], center = true) ; + } + + color ([0.7, 0.55, 0]) + intersection() + { + translate ([-L/3, -5, -5]) + cube ([P/2, 10, 10]) ; + + scale (1.001) + case() ; + } + + color ([0.9, 0.8, 0.2]) + case() ; + + translate ([-L/2, 0, 0]) + lead (P, Tw, Th) ; + + translate ([L/2, 0, 0]) + mirror ([1, 0, 0]) + lead (P, Tw, Th) ; + } + + sizes = "ABCDE" ; + L = [ 3.2, 3.5, 6.0, 7.3, 7.3 ] ; + W = [ 1.6, 2.8, 3.2, 4.3, 4.3 ] ; + H = [ 1.6, 1.9, 2.5, 2.8, 4 ] ; + P = [ 0.8, 0.8, 1.3, 1.3, 1.3 ] ; + Tw = [ 1.2, 2.2, 2.2, 2.4, 2.4 ] ; + + idx = search (sz, sizes)[0] ; + impl (L[idx], W[idx], H[idx], P[idx], Tw[idx], H[idx]/2) ; +} Index: trunk/footprint/smd/TANT_A.fp =================================================================== --- trunk/footprint/smd/TANT_A.fp (nonexistent) +++ trunk/footprint/smd/TANT_A.fp (revision 34912) @@ -0,0 +1,285 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_A Tantalum SMT capacitor (pin 1 is +) + openscad = TANT.scad + openscad-param = {"A"} + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 24.5mil + -42.5mil + -24.5mil + -42.5mil + -24.5mil + 42.5mil + 24.5mil + 42.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 27.5mil + -45.5mil + -27.5mil + -45.5mil + -27.5mil + 45.5mil + 27.5mil + 45.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 24.5mil + -42.5mil + -24.5mil + -42.5mil + -24.5mil + 42.5mil + 24.5mil + 42.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.423183mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.963183mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.432192mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.864383mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.864383mm + x2 = 4.877583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.877583mm + x2 = 4.877583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.877583mm + x2 = 0.864383mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.864383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 5.385583mm + y = 1.524392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.693183mm + x2 = 3.693183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 1.524392mm + } + } + ha:combining { + } + } + } + } + uid = 26/rwM0jSKi02rxdXecAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/TANT_B.fp =================================================================== --- trunk/footprint/smd/TANT_B.fp (nonexistent) +++ trunk/footprint/smd/TANT_B.fp (revision 34912) @@ -0,0 +1,285 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_B Tantalum SMT capacitor (pin 1 is +) + openscad = TANT.scad + openscad-param = {"B"} + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 35.5mil + -76.5mil + -35.5mil + -76.5mil + -35.5mil + 76.5mil + 35.5mil + 76.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 38.5mil + -79.5mil + -38.5mil + -79.5mil + -38.5mil + 79.5mil + 38.5mil + 79.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 35.5mil + -76.5mil + -35.5mil + -76.5mil + -35.5mil + 76.5mil + 35.5mil + 76.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.956583mm + rot = 0.000000 + y = 2.641992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.750583mm + rot = 0.000000 + y = 2.641992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 4.597792mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.686192mm + } + ha:line.10 { + clearance = 0.0 + y2 = 5.156592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.143783mm + ha:flags { + } + y1 = 4.597792mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.156592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.143783mm + x2 = 6.198383mm + ha:flags { + } + y1 = 5.156592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.198383mm + x2 = 6.198383mm + ha:flags { + } + y1 = 5.156592mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.198383mm + x2 = 1.143783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.686192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.143783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.706383mm + y = 2.641992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 2.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.353583mm + x2 = 3.353583mm + ha:flags { + } + y1 = 2.641992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.353583mm + x2 = 3.353583mm + ha:flags { + } + y1 = 2.641992mm + } + ha:line.33 { + clearance = 0.0 + y2 = 2.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.353583mm + x2 = 4.353583mm + ha:flags { + } + y1 = 2.641992mm + } + ha:line.36 { + clearance = 0.0 + y2 = 3.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.353583mm + x2 = 3.353583mm + ha:flags { + } + y1 = 2.641992mm + } + } + ha:combining { + } + } + } + } + uid = z+x6iElAGsr55qcSOkgAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/TANT_C.fp =================================================================== --- trunk/footprint/smd/TANT_C.fp (nonexistent) +++ trunk/footprint/smd/TANT_C.fp (revision 34912) @@ -0,0 +1,285 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_C Tantalum SMT capacitor (pin 1 is +) + openscad = TANT.scad + openscad-param = {"C"} + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 48.5mil + -87.5mil + -48.5mil + -87.5mil + -48.5mil + 87.5mil + 48.5mil + 87.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 51.5mil + -90.5mil + -51.5mil + -90.5mil + -51.5mil + 90.5mil + 51.5mil + 90.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 48.5mil + -87.5mil + -48.5mil + -87.5mil + -48.5mil + 87.5mil + 48.5mil + 87.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.388383mm + rot = 0.000000 + y = 2.972192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 7.163583mm + rot = 0.000000 + y = 2.972192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 5.181992mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.762392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 5.816992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.473983mm + ha:flags { + } + y1 = 5.181992mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.816992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.473983mm + x2 = 9.043183mm + ha:flags { + } + y1 = 5.816992mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 9.043183mm + x2 = 9.043183mm + ha:flags { + } + y1 = 5.816992mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 9.043183mm + x2 = 1.473983mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.762392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.473983mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 9.551183mm + y = 2.972192mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 2.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.775983mm + x2 = 4.775983mm + ha:flags { + } + y1 = 2.972192mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.775983mm + x2 = 4.775983mm + ha:flags { + } + y1 = 2.972192mm + } + ha:line.33 { + clearance = 0.0 + y2 = 2.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.775983mm + x2 = 5.775983mm + ha:flags { + } + y1 = 2.972192mm + } + ha:line.36 { + clearance = 0.0 + y2 = 3.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.775983mm + x2 = 4.775983mm + ha:flags { + } + y1 = 2.972192mm + } + } + ha:combining { + } + } + } + } + uid = JkGYP/uNTLhwqZKit+sAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/TANT_D.fp =================================================================== --- trunk/footprint/smd/TANT_D.fp (nonexistent) +++ trunk/footprint/smd/TANT_D.fp (revision 34912) @@ -0,0 +1,285 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_D Tantalum SMT capacitor (pin 1 is +) + openscad = TANT.scad + openscad-param = {"D"} + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 61.5mil + -117.5mil + -61.5mil + -117.5mil + -61.5mil + 117.5mil + 61.5mil + 117.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 1.638299mm + -3.060699mm + -1.638299mm + -3.060699mm + -1.638299mm + 3.060699mm + 1.638299mm + 3.060699mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 61.5mil + -117.5mil + -61.5mil + -117.5mil + -61.5mil + 117.5mil + 61.5mil + 117.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.896383mm + rot = 0.000000 + y = 3.937392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 8.738383mm + rot = 0.000000 + y = 3.937392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 6.909192mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.965592mm + } + ha:line.10 { + clearance = 0.0 + y2 = 7.747392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.804183mm + ha:flags { + } + y1 = 6.909192mm + } + ha:line.13 { + clearance = 0.0 + y2 = 7.747392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.804183mm + x2 = 11.125983mm + ha:flags { + } + y1 = 7.747392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.125983mm + x2 = 11.125983mm + ha:flags { + } + y1 = 7.747392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.125983mm + x2 = 1.804183mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.965592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.804183mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.633983mm + y = 3.937392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 3.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.817383mm + x2 = 5.817383mm + ha:flags { + } + y1 = 3.937392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 3.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.817383mm + x2 = 5.817383mm + ha:flags { + } + y1 = 3.937392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 3.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.817383mm + x2 = 6.817383mm + ha:flags { + } + y1 = 3.937392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 4.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.817383mm + x2 = 5.817383mm + ha:flags { + } + y1 = 3.937392mm + } + } + ha:combining { + } + } + } + } + uid = aZrmxsPqy0XUIP+9J8kAAAAB + ha:flags { + } + } +} Index: trunk/footprint/smd/minimelf.fp =================================================================== --- trunk/footprint/smd/minimelf.fp (nonexistent) +++ trunk/footprint/smd/minimelf.fp (revision 34912) @@ -0,0 +1,233 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = minimelf + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.899922mm + -0.649986mm + -0.899922mm + -0.649986mm + 0.899922mm + 0.649986mm + 0.899922mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 38.09mil + -1.217422mm + -38.09mil + -1.217422mm + -38.09mil + 1.217422mm + 38.09mil + 1.217422mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.899922mm + -0.649986mm + -0.899922mm + -0.649986mm + 0.899922mm + 0.649986mm + 0.899922mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + } + proto = 0 + xmirror = 0 + x = 1.52756in + rot = 0.000000 + y = 35.999928mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + } + proto = 0 + xmirror = 0 + x = 1.38582in + rot = 0.000000 + y = 35.999928mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 1.38582in + thickness = 7.87mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 37.999924mm + ha:flags { + } + y1 = 1.38582in + } + ha:line.12 { + clearance = 0.0 + y2 = 1.44882in + thickness = 7.87mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 37.999924mm + ha:flags { + } + y1 = 1.44882in + } + ha:text.6 { + scale = 70 + ha:attributes { + } + x = 1.41949in + y = 35.46983mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.45669in + x2 = 1.45669in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.18 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.45669in + x2 = 1.45669in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.21 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.45669in + x2 = 35.999926mm + ha:flags { + } + y1 = 35.999928mm + } + ha:line.24 { + clearance = 0.0 + y2 = 34.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.45669in + x2 = 1.45669in + ha:flags { + } + y1 = 35.999928mm + } + } + ha:combining { + } + } + } + } + uid = kBcrKTtaM9kTfl/PmukAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC49.fp =================================================================== --- trunk/footprint/thru-hole/HC49.fp (nonexistent) +++ trunk/footprint/thru-hole/HC49.fp (revision 34912) @@ -0,0 +1,384 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49 Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 28.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 28.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 60.2mil + rot = 0.000000 + y = 60.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 6.60908mm + rot = 0.000000 + y = 60.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 60.2mil + x2 = 6.60908mm + ha:flags { + } + y1 = 0.25908mm + } + ha:line.13 { + clearance = 0.0 + y2 = 110.2mil + thickness = 20.0mil + ha:attributes { + } + x1 = 6.60908mm + x2 = 60.2mil + ha:flags { + } + y1 = 110.2mil + } + ha:arc.12 { + astart = 90 + thickness = 20.0mil + width = 50.0mil + height = 50.0mil + ha:attributes { + } + x = 6.60908mm + y = 60.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.16 { + astart = 270 + thickness = 20.0mil + width = 50.0mil + height = 50.0mil + ha:attributes { + } + x = 60.2mil + y = 60.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.17 { + clearance = 0.0 + y2 = 60.2mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.06908mm + x2 = 4.06908mm + ha:flags { + } + y1 = 60.2mil + } + ha:line.20 { + clearance = 0.0 + y2 = 60.2mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 60.2mil + x2 = 60.2mil + ha:flags { + } + y1 = 60.2mil + } + ha:line.23 { + clearance = 0.0 + y2 = 60.2mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 60.2mil + x2 = 2.52908mm + ha:flags { + } + y1 = 60.2mil + } + ha:line.26 { + clearance = 0.0 + y2 = 2.52908mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 60.2mil + x2 = 60.2mil + ha:flags { + } + y1 = 60.2mil + } + } + ha:combining { + } + } + } + } + uid = K5zHll9kWHYvk+K8WxUAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC49U.fp =================================================================== --- trunk/footprint/thru-hole/HC49U.fp (nonexistent) +++ trunk/footprint/thru-hole/HC49U.fp (revision 34912) @@ -0,0 +1,384 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49U Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.33248mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.20928mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 101.2mil + x2 = 8.99668mm + ha:flags { + } + y1 = 0.25908mm + } + ha:line.13 { + clearance = 0.0 + y2 = 4.90728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 8.99668mm + x2 = 101.2mil + ha:flags { + } + y1 = 4.90728mm + } + ha:arc.12 { + astart = 90 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 8.99668mm + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.16 { + astart = 270 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 101.2mil + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.17 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.77088mm + x2 = 5.77088mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.20 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.23 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.33248mm + x2 = 4.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.26 { + clearance = 0.0 + y2 = 3.57048mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + } + ha:combining { + } + } + } + } + uid = IU81ifHVXky8kV3JzMYAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC49UH.fp =================================================================== --- trunk/footprint/thru-hole/HC49UH.fp (nonexistent) +++ trunk/footprint/thru-hole/HC49UH.fp (revision 34912) @@ -0,0 +1,380 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49UH Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.328183mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.204983mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = -1.269217mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.21 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.328183mm + x2 = 4.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 16.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + } + ha:combining { + } + } + } + } + uid = d0kIIEVd9hKmfkrR2JwAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC49U_3.fp =================================================================== --- trunk/footprint/thru-hole/HC49U_3.fp (nonexistent) +++ trunk/footprint/thru-hole/HC49U_3.fp (revision 34912) @@ -0,0 +1,403 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + value = + footprint = HC49U_3 Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.33248mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.77088mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 8.20928mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 101.2mil + x2 = 8.99668mm + ha:flags { + } + y1 = 0.25908mm + } + ha:line.14 { + clearance = 0.0 + y2 = 4.90728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 8.99668mm + x2 = 101.2mil + ha:flags { + } + y1 = 4.90728mm + } + ha:arc.13 { + astart = 90 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 8.99668mm + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.17 { + astart = 270 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 101.2mil + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.18 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.77088mm + x2 = 5.77088mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.21 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.24 { + clearance = 0.0 + y2 = 3.57048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.27 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.33248mm + x2 = 4.33248mm + ha:flags { + } + y1 = 101.2mil + } + } + ha:combining { + } + } + } + } + uid = yz1V4HtC1LifNPNIfzcAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC49U_3H.fp =================================================================== --- trunk/footprint/thru-hole/HC49U_3H.fp (nonexistent) +++ trunk/footprint/thru-hole/HC49U_3H.fp (revision 34912) @@ -0,0 +1,398 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49U_3H Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.328183mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.766583mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 8.204983mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = -1.269217mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 16.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.31 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.328183mm + x2 = 4.328183mm + ha:flags { + } + y1 = 15.875783mm + } + } + ha:combining { + } + } + } + } + uid = VTNBJgXKGQ7phRTbFDUAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC51U.fp =================================================================== --- trunk/footprint/thru-hole/HC51U.fp (nonexistent) +++ trunk/footprint/thru-hole/HC51U.fp (revision 34912) @@ -0,0 +1,384 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC51U Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.71348mm + rot = 0.000000 + y = 4.72948mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 631.2mil + rot = 0.000000 + y = 4.72948mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 4.72948mm + x2 = 591.2mil + ha:flags { + } + y1 = 0.25908mm + } + ha:line.13 { + clearance = 0.0 + y2 = 9.19988mm + thickness = 20.0mil + ha:attributes { + } + x1 = 591.2mil + x2 = 4.72948mm + ha:flags { + } + y1 = 9.19988mm + } + ha:arc.12 { + astart = 90 + thickness = 20.0mil + width = 176.0mil + height = 176.0mil + ha:attributes { + } + x = 591.2mil + y = 4.72948mm + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.16 { + astart = 270 + thickness = 20.0mil + width = 176.0mil + height = 176.0mil + ha:attributes { + } + x = 4.72948mm + y = 4.72948mm + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.17 { + clearance = 0.0 + y2 = 4.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 9.87298mm + x2 = 9.87298mm + ha:flags { + } + y1 = 4.72948mm + } + ha:line.20 { + clearance = 0.0 + y2 = 4.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.71348mm + x2 = 3.71348mm + ha:flags { + } + y1 = 4.72948mm + } + ha:line.23 { + clearance = 0.0 + y2 = 4.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.71348mm + x2 = 4.71348mm + ha:flags { + } + y1 = 4.72948mm + } + ha:line.26 { + clearance = 0.0 + y2 = 5.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.71348mm + x2 = 3.71348mm + ha:flags { + } + y1 = 4.72948mm + } + } + ha:combining { + } + } + } + } + uid = +FiihmhDvVGqTubuzyoAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HC51UH.fp =================================================================== --- trunk/footprint/thru-hole/HC51UH.fp (nonexistent) +++ trunk/footprint/thru-hole/HC51UH.fp (revision 34912) @@ -0,0 +1,380 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC51UH Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.709183mm + rot = 0.000000 + y = 25.019783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 16.028183mm + rot = 0.000000 + y = 25.019783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 19.482583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 19.939783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 19.482583mm + x2 = 19.482583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 19.939783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 19.482583mm + x2 = 0.254783mm + ha:flags { + } + y1 = 19.939783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 19.939783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = -1.269217mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.21 { + clearance = 0.0 + y2 = 25.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 9.868683mm + x2 = 9.868683mm + ha:flags { + } + y1 = 25.019783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 25.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.709183mm + x2 = 3.709183mm + ha:flags { + } + y1 = 25.019783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 25.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.709183mm + x2 = 4.709183mm + ha:flags { + } + y1 = 25.019783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 26.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.709183mm + x2 = 3.709183mm + ha:flags { + } + y1 = 25.019783mm + } + } + ha:combining { + } + } + } + } + uid = sAYDhniTNYN3q3leLhwAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/HEPTAWATT.fp =================================================================== --- trunk/footprint/thru-hole/HEPTAWATT.fp (nonexistent) +++ trunk/footprint/thru-hole/HEPTAWATT.fp (revision 34912) @@ -0,0 +1,506 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HEPTAWATT Power IC, as in MULTIWATT15 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.626383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 2.896383mm + rot = 0.000000 + y = 3.048783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 4.166383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 5.436383mm + rot = 0.000000 + y = 3.048783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 6.706383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 7.976383mm + rot = 0.000000 + y = 3.048783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 9.246383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.14 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.17 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.20 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.23 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.26 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.29 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.531383mm + x2 = 3.531383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.32 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.341383mm + x2 = 7.341383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 12.167383mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.35 { + clearance = 0.0 + y2 = 5.95164mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.436383mm + x2 = 5.436383mm + ha:flags { + } + y1 = 5.95164mm + } + ha:line.38 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.626383mm + x2 = 1.626383mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.41 { + clearance = 0.0 + y2 = 7.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.626383mm + x2 = 1.626383mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.44 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.626383mm + x2 = 2.626383mm + ha:flags { + } + y1 = 6.579383mm + } + } + ha:combining { + } + } + } + } + uid = iVCWAJKpIXjZ4LV4utoAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/LED3.fp =================================================================== --- trunk/footprint/thru-hole/LED3.fp (nonexistent) +++ trunk/footprint/thru-hole/LED3.fp (revision 34912) @@ -0,0 +1,388 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = LED3, 3mm LED (pin 1 is +, 2 is -) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 50.5mil + rot = 0.000000 + y = 2.13614mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 150.5mil + rot = 0.000000 + y = 2.13614mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:arc.9 { + astart = 45 + thickness = 10.0mil + width = 59.0mil + height = 59.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.10 { + astart = 225 + thickness = 10.0mil + width = 59.0mil + height = 59.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.11 { + astart = 45 + thickness = 10.0mil + width = 79.0mil + height = 79.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.12 { + astart = 225 + thickness = 10.0mil + width = 79.0mil + height = 79.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 200.5mil + y = 3.91414mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.13 { + clearance = 0.0 + y2 = 2.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 100.5mil + x2 = 100.5mil + ha:flags { + } + y1 = 2.13614mm + } + ha:line.16 { + clearance = 0.0 + y2 = 2.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.5mil + x2 = 100.5mil + ha:flags { + } + y1 = 2.13614mm + } + ha:line.19 { + clearance = 0.0 + y2 = 2.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.5mil + x2 = 3.5527mm + ha:flags { + } + y1 = 2.13614mm + } + ha:line.22 { + clearance = 0.0 + y2 = 3.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.5mil + x2 = 100.5mil + ha:flags { + } + y1 = 2.13614mm + } + } + ha:combining { + } + } + } + } + uid = AXOBLf2n2pEOmUoe7pcAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/LED5.fp =================================================================== --- trunk/footprint/thru-hole/LED5.fp (nonexistent) +++ trunk/footprint/thru-hole/LED5.fp (revision 34912) @@ -0,0 +1,360 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = LED5, 5mm LED (pin 1 is +, 2 is -) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.36474mm + rot = 0.000000 + y = 3.63474mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 4.90474mm + rot = 0.000000 + y = 3.63474mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:arc.9 { + astart = 0 + thickness = 10.0mil + width = 118.0mil + height = 118.0mil + ha:attributes { + } + x = 3.63474mm + y = 3.63474mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:arc.10 { + astart = 0 + thickness = 10.0mil + width = 138.0mil + height = 138.0mil + ha:attributes { + } + x = 3.63474mm + y = 3.63474mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.17474mm + y = 5.41274mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 3.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.63474mm + x2 = 3.63474mm + ha:flags { + } + y1 = 3.63474mm + } + ha:line.14 { + clearance = 0.0 + y2 = 3.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.63474mm + x2 = 3.63474mm + ha:flags { + } + y1 = 3.63474mm + } + ha:line.17 { + clearance = 0.0 + y2 = 3.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.63474mm + x2 = 4.63474mm + ha:flags { + } + y1 = 3.63474mm + } + ha:line.20 { + clearance = 0.0 + y2 = 4.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.63474mm + x2 = 3.63474mm + ha:flags { + } + y1 = 3.63474mm + } + } + ha:combining { + } + } + } + } + uid = hFGipNdgRBmeMBGUNCcAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/MULTIWATT11.fp =================================================================== --- trunk/footprint/thru-hole/MULTIWATT11.fp (nonexistent) +++ trunk/footprint/thru-hole/MULTIWATT11.fp (revision 34912) @@ -0,0 +1,578 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MULTIWATT11 Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.905783mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 3.607583mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 5.309383mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 7.011183mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 8.712983mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 10.414783mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 12.116583mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.14 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 13.818383mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.15 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 15.520183mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.16 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 17.221983mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.17 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 18.923783mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.18 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.509783mm + x2 = 8.509783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.36 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 12.319783mm + x2 = 12.319783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 22.098783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.39 { + clearance = 0.0 + y2 = 7.597692mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 7.597692mm + } + ha:line.42 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.905783mm + x2 = 1.905783mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.45 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.905783mm + x2 = 1.905783mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.48 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.905783mm + x2 = 2.905783mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = OJr8gHIpKF/u/Cj9DHsAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/MULTIWATT15.fp =================================================================== --- trunk/footprint/thru-hole/MULTIWATT15.fp (nonexistent) +++ trunk/footprint/thru-hole/MULTIWATT15.fp (revision 34912) @@ -0,0 +1,650 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MULTIWATT15 Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 63.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 113.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 163.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 213.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 263.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 313.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 363.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.14 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 413.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.15 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 463.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.16 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 513.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.17 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 563.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.18 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 613.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 663.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 713.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 763.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.31 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 338.0mil + x2 = 338.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 488.0mil + x2 = 488.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 873.0mil + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.43 { + clearance = 0.0 + y2 = 7.536116mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 413.0mil + x2 = 413.0mil + ha:flags { + } + y1 = 7.536116mm + } + ha:line.46 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.49 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.52 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 63.0mil + x2 = 2.6002mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = Pvw9fS9mULpdZ07inAAAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/MULTIWATT8.fp =================================================================== --- trunk/footprint/thru-hole/MULTIWATT8.fp (nonexistent) +++ trunk/footprint/thru-hole/MULTIWATT8.fp (revision 34912) @@ -0,0 +1,524 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MULTIWATT8 Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 63.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 163.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 263.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 363.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 463.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 563.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 663.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.14 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 763.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 338.0mil + x2 = 338.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 488.0mil + x2 = 488.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 873.0mil + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.36 { + clearance = 0.0 + y2 = 3.175783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 413.0mil + x2 = 413.0mil + ha:flags { + } + y1 = 3.175783mm + } + ha:line.39 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.42 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.45 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 63.0mil + x2 = 2.6002mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = IQhuhU7OlwL8WndT1toAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/OSC14.fp =================================================================== --- trunk/footprint/thru-hole/OSC14.fp (nonexistent) +++ trunk/footprint/thru-hole/OSC14.fp (revision 34912) @@ -0,0 +1,455 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = OSC14, Crystal oscillator + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 28.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 56.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 56.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = NC + } + proto = 0 + xmirror = 0 + x = 2.54254mm + rot = 0.000000 + y = 2.54254mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = GND + } + proto = 0 + xmirror = 0 + x = 2.54254mm + rot = 0.000000 + y = 700.1mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = CLK + } + proto = 0 + xmirror = 0 + x = 400.1mil + rot = 0.000000 + y = 700.1mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = VCC + } + proto = 0 + xmirror = 0 + x = 400.1mil + rot = 0.000000 + y = 2.54254mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 0.12954mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.12954mm + x2 = 400.1mil + ha:flags { + } + y1 = 0.12954mm + } + ha:line.15 { + clearance = 0.0 + y2 = 700.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 495.1mil + x2 = 495.1mil + ha:flags { + } + y1 = 2.54254mm + } + ha:line.19 { + clearance = 0.0 + y2 = 795.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 400.1mil + x2 = 2.54254mm + ha:flags { + } + y1 = 795.1mil + } + ha:line.23 { + clearance = 0.0 + y2 = 0.12954mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.12954mm + x2 = 0.12954mm + ha:flags { + } + y1 = 700.1mil + } + ha:line.26 { + clearance = 0.0 + y2 = 60.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 2.54254mm + x2 = 400.1mil + ha:flags { + } + y1 = 60.1mil + } + ha:line.30 { + clearance = 0.0 + y2 = 700.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 440.1mil + x2 = 440.1mil + ha:flags { + } + y1 = 2.54254mm + } + ha:line.34 { + clearance = 0.0 + y2 = 740.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 400.1mil + x2 = 2.54254mm + ha:flags { + } + y1 = 740.1mil + } + ha:line.38 { + clearance = 0.0 + y2 = 2.54254mm + thickness = 10.0mil + ha:attributes { + } + x1 = 60.1mil + x2 = 60.1mil + ha:flags { + } + y1 = 700.1mil + } + ha:arc.14 { + astart = 180 + thickness = 10.0mil + width = 95.0mil + height = 95.0mil + ha:attributes { + } + x = 400.1mil + y = 2.54254mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.18 { + astart = 90 + thickness = 10.0mil + width = 95.0mil + height = 95.0mil + ha:attributes { + } + x = 400.1mil + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.22 { + astart = 0 + thickness = 10.0mil + width = 95.0mil + height = 95.0mil + ha:attributes { + } + x = 2.54254mm + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.29 { + astart = 180 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 400.1mil + y = 2.54254mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.33 { + astart = 90 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 400.1mil + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.37 { + astart = 0 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 2.54254mm + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.41 { + astart = 270 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 2.54254mm + y = 2.54254mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 270.1mil + y = 300.1mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.42 { + clearance = 0.0 + y2 = 400.1mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 6.35254mm + x2 = 6.35254mm + ha:flags { + } + y1 = 400.1mil + } + ha:line.45 { + clearance = 0.0 + y2 = 2.54254mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.54254mm + x2 = 2.54254mm + ha:flags { + } + y1 = 2.54254mm + } + ha:line.48 { + clearance = 0.0 + y2 = 2.54254mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.54254mm + x2 = 3.54254mm + ha:flags { + } + y1 = 2.54254mm + } + ha:line.51 { + clearance = 0.0 + y2 = 3.54254mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.54254mm + x2 = 2.54254mm + ha:flags { + } + y1 = 2.54254mm + } + } + ha:combining { + } + } + } + } + uid = xzk533cq9lHncC5p9N4AAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/PENTAWATT.fp =================================================================== --- trunk/footprint/thru-hole/PENTAWATT.fp (nonexistent) +++ trunk/footprint/thru-hole/PENTAWATT.fp (revision 34912) @@ -0,0 +1,470 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = PENTAWATT Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.032783mm + rot = 0.000000 + y = 8.738383mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 3.734583mm + rot = 0.000000 + y = 4.750583mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 5.436383mm + rot = 0.000000 + y = 8.738383mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 7.138183mm + rot = 0.000000 + y = 4.750583mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 8.839983mm + rot = 0.000000 + y = 8.738383mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.12 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.21 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.531383mm + x2 = 3.531383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.341383mm + x2 = 7.341383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 12.167383mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.33 { + clearance = 0.0 + y2 = 7.143263mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.436383mm + x2 = 5.436383mm + ha:flags { + } + y1 = 7.143263mm + } + ha:line.36 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.032783mm + x2 = 2.032783mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.39 { + clearance = 0.0 + y2 = 7.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.032783mm + x2 = 2.032783mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.42 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.032783mm + x2 = 3.032783mm + ha:flags { + } + y1 = 6.579383mm + } + } + ha:combining { + } + } + } + } + uid = sniNjrnRQefHo+GXiZsAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TACT_6x6_4p =================================================================== --- trunk/footprint/thru-hole/TACT_6x6_4p (nonexistent) +++ trunk/footprint/thru-hole/TACT_6x6_4p (revision 34912) @@ -0,0 +1,589 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint=tactile button + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.999998mm + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 4 + intconn = 2 + } + proto = 0 + xmirror = 0 + x = 1.88591in + rot = 0.000000 + y = 31.623mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 3 + intconn = 2 + } + proto = 0 + xmirror = 0 + x = 1.63in + rot = 0.000000 + y = 31.623mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 2 + intconn = 1 + } + proto = 0 + xmirror = 0 + x = 1.88591in + rot = 0.000000 + y = 27.051mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 1 + intconn = 1 + } + proto = 0 + xmirror = 0 + x = 1.63in + rot = 0.000000 + y = 27.051mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 1.03614in + thickness = 7.87mil + ha:attributes { + } + x1 = 1.87681in + x2 = 1.87681in + ha:flags { + } + y1 = 32.317944mm + } + ha:line.14 { + clearance = 0.0 + y2 = 32.317944mm + thickness = 7.87mil + ha:attributes { + } + x1 = 1.64059in + x2 = 1.87681in + ha:flags { + } + y1 = 32.317944mm + } + ha:line.17 { + clearance = 0.0 + y2 = 32.317944mm + thickness = 7.87mil + ha:attributes { + } + x1 = 1.64059in + x2 = 1.64059in + ha:flags { + } + y1 = 1.03614in + } + ha:line.20 { + clearance = 0.0 + y2 = 1.03614in + thickness = 7.87mil + ha:attributes { + } + x1 = 1.64059in + x2 = 1.87681in + ha:flags { + } + y1 = 1.03614in + } + ha:arc.23 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.24 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.25 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.26 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.27 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.28 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.29 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.30 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.31 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.32 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.33 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.34 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.35 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.36 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.37 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.38 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.39 { + astart = 270 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.40 { + astart = 180 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.41 { + astart = 90 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.42 { + astart = 0 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.755in + y = 1.155in + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.43 { + clearance = 0.0 + y2 = 1.155in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.757955in + x2 = 1.757955in + ha:flags { + } + y1 = 1.155in + } + ha:line.46 { + clearance = 0.0 + y2 = 1.155in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.755in + x2 = 1.755in + ha:flags { + } + y1 = 1.155in + } + ha:line.49 { + clearance = 0.0 + y2 = 1.155in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.755in + x2 = 45.577mm + ha:flags { + } + y1 = 1.155in + } + ha:line.52 { + clearance = 0.0 + y2 = 30.337mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.755in + x2 = 1.755in + ha:flags { + } + y1 = 1.155in + } + } + ha:combining { + } + } + } + } + uid = 2piHZ3u6tsVyFj4ZzGwAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO126.fp =================================================================== --- trunk/footprint/thru-hole/TO126.fp (nonexistent) +++ trunk/footprint/thru-hole/TO126.fp (revision 34912) @@ -0,0 +1,534 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 110.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 170.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.14 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.17 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 300.0mil + x2 = 300.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.20 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.23 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:line.29 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 80.0mil + y = 480.0mil + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.32 { + clearance = 0.0 + y2 = 492.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 492.5mil + } + ha:line.35 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.38 { + clearance = 0.0 + y2 = 16.24mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.41 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 600.0mil + } + } + ha:combining { + } + } + } + } + uid = O0KUDhlczEfk/O0PriQAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO126S.fp =================================================================== --- trunk/footprint/thru-hole/TO126S.fp (nonexistent) +++ trunk/footprint/thru-hole/TO126S.fp (revision 34912) @@ -0,0 +1,534 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126S Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 110.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 700.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 170.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.14 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 700.0mil + } + ha:line.17 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 300.0mil + x2 = 300.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.20 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.23 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:line.29 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 80.0mil + y = 480.0mil + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.32 { + clearance = 0.0 + y2 = 517.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 517.5mil + } + ha:line.35 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.38 { + clearance = 0.0 + y2 = 16.24mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.41 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 600.0mil + } + } + ha:combining { + } + } + } + } + uid = Iqh6vyX2eHbtviil6fUAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO126SW.fp =================================================================== --- trunk/footprint/thru-hole/TO126SW.fp (nonexistent) +++ trunk/footprint/thru-hole/TO126SW.fp (revision 34912) @@ -0,0 +1,434 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126SW Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 150.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 150.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 150.0mil + x2 = 150.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 150.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 250.0mil + x2 = 250.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 270.0mil + y = 170.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.386666mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 3.386666mm + } + ha:line.34 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.37 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 100.0mil + } + ha:line.40 { + clearance = 0.0 + y2 = 3.54mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + } + ha:combining { + } + } + } + } + uid = sxuYoda+IstkKcLGGkQAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO126W.fp =================================================================== --- trunk/footprint/thru-hole/TO126W.fp (nonexistent) +++ trunk/footprint/thru-hole/TO126W.fp (revision 34912) @@ -0,0 +1,398 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126W Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 60.0mil + y = 170.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.54mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 100.0mil + } + } + ha:combining { + } + } + } + } + uid = M7n7GB058pNjVDcWttAAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO18.fp =================================================================== --- trunk/footprint/thru-hole/TO18.fp (nonexistent) +++ trunk/footprint/thru-hole/TO18.fp (revision 34912) @@ -0,0 +1,305 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO18 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.61874mm + rot = 0.000000 + y = 1.549792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 53.1mil + rot = 0.000000 + y = 2.819792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 2.61874mm + rot = 0.000000 + y = 4.089792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.32054mm + x2 = 5.00634mm + ha:flags { + } + y1 = 0.813192mm + } + ha:line.14 { + clearance = 0.0 + y2 = 0.279792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.47294mm + x2 = 5.15874mm + ha:flags { + } + y1 = 0.965592mm + } + ha:line.17 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.62534mm + x2 = 5.31114mm + ha:flags { + } + y1 = 1.117992mm + } + ha:line.20 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.00634mm + x2 = 5.31114mm + ha:flags { + } + y1 = 0.127392mm + } + ha:arc.10 { + astart = 0 + thickness = 10.0mil + width = 98.0mil + height = 98.0mil + ha:attributes { + } + x = 2.61874mm + y = 2.819792mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 4.14274mm + y = 4.597792mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 2.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.195406mm + x2 = 2.195406mm + ha:flags { + } + y1 = 2.819792mm + } + ha:line.26 { + clearance = 0.0 + y2 = 2.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.61874mm + x2 = 2.61874mm + ha:flags { + } + y1 = 2.819792mm + } + ha:line.29 { + clearance = 0.0 + y2 = 1.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.61874mm + x2 = 2.61874mm + ha:flags { + } + y1 = 2.819792mm + } + ha:line.32 { + clearance = 0.0 + y2 = 2.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.61874mm + x2 = 1.61874mm + ha:flags { + } + y1 = 2.819792mm + } + } + ha:combining { + } + } + } + } + uid = OidYcSm6o+LolzS8Q8kAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO218.fp =================================================================== --- trunk/footprint/thru-hole/TO218.fp (nonexistent) +++ trunk/footprint/thru-hole/TO218.fp (revision 34912) @@ -0,0 +1,434 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO218 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.489983mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.052583mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 13.615183mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 15.875783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 15.875783mm + x2 = 15.875783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 15.875783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 15.875783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.147583mm + x2 = 6.147583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 9.957583mm + x2 = 9.957583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 17.399783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.302783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 8.052583mm + x2 = 8.052583mm + ha:flags { + } + y1 = 3.302783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.489983mm + x2 = 2.489983mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.489983mm + x2 = 2.489983mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.489983mm + x2 = 3.489983mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = es25ud3aaCFW34xH0swAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO220.fp =================================================================== --- trunk/footprint/thru-hole/TO220.fp (nonexistent) +++ trunk/footprint/thru-hole/TO220.fp (revision 34912) @@ -0,0 +1,678 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 130.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.14 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.17 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 7.874783mm + x2 = 7.874783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.20 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.23 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.26 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.29 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.32 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.35 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.38 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.41 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.44 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.47 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.50 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.53 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.56 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.59 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.62 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.65 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.524783mm + y = 14.478783mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.68 { + clearance = 0.0 + y2 = 16.066283mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 16.066283mm + } + ha:line.71 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.74 { + clearance = 0.0 + y2 = 21.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.77 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.334783mm + x2 = 6.334783mm + ha:flags { + } + y1 = 20.320783mm + } + } + ha:combining { + } + } + } + } + uid = uOkA89keooMxmh5v+cMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO220ACSTAND.fp =================================================================== --- trunk/footprint/thru-hole/TO220ACSTAND.fp (nonexistent) +++ trunk/footprint/thru-hole/TO220ACSTAND.fp (revision 34912) @@ -0,0 +1,416 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220ACSTAND diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 2.794783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 2.794783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 4.826783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 4.826783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 4.826783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 4.826783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.429783mm + x2 = 3.429783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.239783mm + x2 = 7.239783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.938783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.30 { + clearance = 0.0 + y2 = 2.794783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 2.794783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 5.842783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 5.842783mm + } + ha:line.36 { + clearance = 0.0 + y2 = 5.842783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.794783mm + x2 = 3.794783mm + ha:flags { + } + y1 = 5.842783mm + } + ha:line.39 { + clearance = 0.0 + y2 = 6.842783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 5.842783mm + } + } + ha:combining { + } + } + } + } + uid = giMFC8I9a3NsCRqIha4AAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO220S.fp =================================================================== --- trunk/footprint/thru-hole/TO220S.fp (nonexistent) +++ trunk/footprint/thru-hole/TO220S.fp (revision 34912) @@ -0,0 +1,678 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220S Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 130.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 22.860783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.14 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 22.860783mm + } + ha:line.17 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 7.874783mm + x2 = 7.874783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.20 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.23 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.26 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.29 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.32 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.35 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.38 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.41 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.44 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.47 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.50 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.53 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.56 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.59 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.62 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.65 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.524783mm + y = 14.478783mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.68 { + clearance = 0.0 + y2 = 16.701283mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 16.701283mm + } + ha:line.71 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.74 { + clearance = 0.0 + y2 = 21.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.77 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.334783mm + x2 = 6.334783mm + ha:flags { + } + y1 = 20.320783mm + } + } + ha:combining { + } + } + } + } + uid = kX4D5wU+XHa4jjNd2YMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO220SW.fp =================================================================== --- trunk/footprint/thru-hole/TO220SW.fp (nonexistent) +++ trunk/footprint/thru-hole/TO220SW.fp (revision 34912) @@ -0,0 +1,482 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220SW Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 300.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.34 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 3.556783mm + x2 = 3.556783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.37 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 7.112783mm + x2 = 7.112783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.40 { + clearance = 0.0 + y2 = 260.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 300.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = 10.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.43 { + clearance = 0.0 + y2 = 5.926666mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 5.926666mm + } + ha:line.46 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.49 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.794783mm + x2 = 3.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.52 { + clearance = 0.0 + y2 = 6.08mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + } + ha:combining { + } + } + } + } + uid = wyLdsi+eW/3szft7c1QAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO220W.fp =================================================================== --- trunk/footprint/thru-hole/TO220W.fp (nonexistent) +++ trunk/footprint/thru-hole/TO220W.fp (revision 34912) @@ -0,0 +1,470 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220W Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.34 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 3.556783mm + x2 = 3.556783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.37 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 7.112783mm + x2 = 7.112783mm + ha:flags { + } + y1 = 80.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = 10.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.40 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.43 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.46 { + clearance = 0.0 + y2 = 6.08mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.49 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.794783mm + x2 = 3.794783mm + ha:flags { + } + y1 = 200.0mil + } + } + ha:combining { + } + } + } + } + uid = ayqDUR+Z6aT2RssOtxMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO247.fp =================================================================== --- trunk/footprint/thru-hole/TO247.fp (nonexistent) +++ trunk/footprint/thru-hole/TO247.fp (revision 34912) @@ -0,0 +1,434 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO247 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.693183mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.255783mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 13.818383mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.350783mm + x2 = 6.350783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.160783mm + x2 = 10.160783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 17.780783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.556783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 8.255783mm + x2 = 8.255783mm + ha:flags { + } + y1 = 3.556783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 8.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.693183mm + x2 = 3.693183mm + ha:flags { + } + y1 = 7.112783mm + } + } + ha:combining { + } + } + } + } + uid = iN8eCDY1d9cB+LCvYmsAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO247_2.fp =================================================================== --- trunk/footprint/thru-hole/TO247_2.fp (nonexistent) +++ trunk/footprint/thru-hole/TO247_2.fp (revision 34912) @@ -0,0 +1,416 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO247_2 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.693183mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 13.818383mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.350783mm + x2 = 6.350783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.160783mm + x2 = 10.160783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 17.780783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.30 { + clearance = 0.0 + y2 = 3.556783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 8.255783mm + x2 = 8.255783mm + ha:flags { + } + y1 = 3.556783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.36 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.693183mm + x2 = 3.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.39 { + clearance = 0.0 + y2 = 8.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + } + ha:combining { + } + } + } + } + uid = WJYlfial3zliAL7vW/EAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO251.fp =================================================================== --- trunk/footprint/thru-hole/TO251.fp (nonexistent) +++ trunk/footprint/thru-hole/TO251.fp (revision 34912) @@ -0,0 +1,434 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO251 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.0mil + -35.0mil + 35.0mil + -35.0mil + 35.0mil + 35.0mil + -35.0mil + 35.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.0mil + -35.0mil + 35.0mil + -35.0mil + 35.0mil + 35.0mil + -35.0mil + 35.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.0mil + -35.0mil + 35.0mil + -35.0mil + 35.0mil + 35.0mil + -35.0mil + 35.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -38.0mil + -38.0mil + 38.0mil + -38.0mil + 38.0mil + 38.0mil + -38.0mil + 38.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -38.0mil + -38.0mil + 38.0mil + -38.0mil + 38.0mil + 38.0mil + -38.0mil + 38.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 70.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 70.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 70.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 76.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 76.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 53.0mil + rot = 0.000000 + y = 1.524783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 143.0mil + rot = 0.000000 + y = 1.524783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 233.0mil + rot = 0.000000 + y = 1.524783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 2.794783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.0mil + x2 = 11.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.794783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.0mil + x2 = 276.0mil + ha:flags { + } + y1 = 2.794783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 276.0mil + x2 = 276.0mil + ha:flags { + } + y1 = 2.794783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 276.0mil + x2 = 11.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.0mil + x2 = 276.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 68.0mil + x2 = 68.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 218.0mil + x2 = 218.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 336.0mil + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 143.0mil + x2 = 143.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 3.810783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 53.0mil + x2 = 53.0mil + ha:flags { + } + y1 = 3.810783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 4.810783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 53.0mil + x2 = 53.0mil + ha:flags { + } + y1 = 3.810783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 3.810783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 53.0mil + x2 = 2.3462mm + ha:flags { + } + y1 = 3.810783mm + } + } + ha:combining { + } + } + } + } + uid = v2nZCPR4jv3R3f/6N5sAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO264.fp =================================================================== --- trunk/footprint/thru-hole/TO264.fp (nonexistent) +++ trunk/footprint/thru-hole/TO264.fp (revision 34912) @@ -0,0 +1,434 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO264 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 4.852183mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 10.414783mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 15.977383mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.509783mm + x2 = 8.509783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 12.319783mm + x2 = 12.319783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 22.098783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.556783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 3.556783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.852183mm + x2 = 4.852183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 8.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.852183mm + x2 = 4.852183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.852183mm + x2 = 5.852183mm + ha:flags { + } + y1 = 7.112783mm + } + } + ha:combining { + } + } + } + } + uid = 8OAC9HM9Aw1ZzceKxDMAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO39.fp =================================================================== --- trunk/footprint/thru-hole/TO39.fp (nonexistent) +++ trunk/footprint/thru-hole/TO39.fp (revision 34912) @@ -0,0 +1,412 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO39 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -27.5mil + -27.5mil + 27.5mil + -27.5mil + 27.5mil + 27.5mil + -27.5mil + 27.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -27.5mil + -27.5mil + 27.5mil + -27.5mil + 27.5mil + 27.5mil + -27.5mil + 27.5mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -27.5mil + -27.5mil + 27.5mil + -27.5mil + 27.5mil + 27.5mil + -27.5mil + 27.5mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.5mil + -30.5mil + 30.5mil + -30.5mil + 30.5mil + 30.5mil + -30.5mil + 30.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.5mil + -30.5mil + 30.5mil + -30.5mil + 30.5mil + 30.5mil + -30.5mil + 30.5mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 4.77774mm + rot = 0.000000 + y = 2.23774mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 2.23774mm + rot = 0.000000 + y = 4.77774mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 4.77774mm + rot = 0.000000 + y = 288.1mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 28.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 315.1mil + x2 = 336.1mil + ha:flags { + } + y1 = 49.1mil + } + ha:line.13 { + clearance = 0.0 + y2 = 34.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 321.1mil + x2 = 342.1mil + ha:flags { + } + y1 = 55.1mil + } + ha:line.16 { + clearance = 0.0 + y2 = 40.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 327.1mil + x2 = 348.1mil + ha:flags { + } + y1 = 61.1mil + } + ha:line.19 { + clearance = 0.0 + y2 = 28.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 348.1mil + x2 = 336.1mil + ha:flags { + } + y1 = 40.1mil + } + ha:arc.22 { + astart = 0 + thickness = 10.0mil + width = 183.0mil + height = 183.0mil + ha:attributes { + } + x = 4.77774mm + y = 4.77774mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.30174mm + y = 258.1mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 4.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.931073mm + x2 = 3.931073mm + ha:flags { + } + y1 = 4.77774mm + } + ha:line.26 { + clearance = 0.0 + y2 = 4.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.77774mm + x2 = 4.77774mm + ha:flags { + } + y1 = 4.77774mm + } + ha:line.29 { + clearance = 0.0 + y2 = 3.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.77774mm + x2 = 4.77774mm + ha:flags { + } + y1 = 4.77774mm + } + ha:line.32 { + clearance = 0.0 + y2 = 4.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.77774mm + x2 = 3.77774mm + ha:flags { + } + y1 = 4.77774mm + } + } + ha:combining { + } + } + } + } + uid = F67S28P4pxCGLl/9emkAAAAB + ha:flags { + } + } +} Index: trunk/footprint/thru-hole/TO92.fp =================================================================== --- trunk/footprint/thru-hole/TO92.fp (nonexistent) +++ trunk/footprint/thru-hole/TO92.fp (revision 34912) @@ -0,0 +1,376 @@ +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO92 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 42.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -36.0mil + -36.0mil + 36.0mil + -36.0mil + 36.0mil + 36.0mil + -36.0mil + 36.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -36.0mil + -36.0mil + 36.0mil + -36.0mil + 36.0mil + 36.0mil + -36.0mil + 36.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -36.0mil + -36.0mil + 36.0mil + -36.0mil + 36.0mil + 36.0mil + -36.0mil + 36.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -39.0mil + -39.0mil + 39.0mil + -39.0mil + 39.0mil + 39.0mil + -39.0mil + 39.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -39.0mil + -39.0mil + 39.0mil + -39.0mil + 39.0mil + 39.0mil + -39.0mil + 39.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 42.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 72.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 72.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 72.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 78.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 78.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 254.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 154.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 54.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 130.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 84.0mil + x2 = 224.0mil + ha:flags { + } + y1 = 130.0mil + } + ha:arc.10 { + astart = 315 + thickness = 10.0mil + width = 100.0mil + height = 100.0mil + ha:attributes { + } + x = 154.0mil + y = 200.0mil + adelta = 270 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 64.0mil + y = 70.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.14 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 154.0mil + x2 = 154.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.17 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 54.0mil + x2 = 54.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.20 { + clearance = 0.0 + y2 = 4.08mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 54.0mil + x2 = 54.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.23 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 54.0mil + x2 = 0.3716mm + ha:flags { + } + y1 = 200.0mil + } + } + ha:combining { + } + } + } + } + uid = guzk2KSYW/BVDIzhJVkAAAAB + ha:flags { + } + } +} Index: trunk/scconfig/Rev.h =================================================================== --- trunk/scconfig/Rev.h (revision 34911) +++ trunk/scconfig/Rev.h (revision 34912) @@ -1 +1 @@ -static const int myrev = 34899; +static const int myrev = 34912; Index: trunk/scconfig/Rev.tab =================================================================== --- trunk/scconfig/Rev.tab (revision 34911) +++ trunk/scconfig/Rev.tab (revision 34912) @@ -1,5 +1,5 @@ +34912 configure renames for 3.0.0 34899 configure remove glib from puller -34891 configure renames for 3.0.0 34772 configure version bump to 3.0.0-dev and related API changes in librnd 34707 configure new release version 34691 configure io_pads: disable write code but enable the plugin by default Index: trunk/src/conf_core.lht =================================================================== --- trunk/src/conf_core.lht (revision 34911) +++ trunk/src/conf_core.lht (revision 34912) @@ -90,9 +90,11 @@ backup_format = {lihata} li:library_search_paths = { - ?../pcblib - ?~/pcblib/ - $(rc.path.share)/pcblib + ?../footprint + ?$(rc.path.design)/footprint + ?~/.pcb-rnd/footprint/ + ?~/pcblib + $(rc.path.share)/footprint } keep_save_backups = false Index: trunk/src/main.c =================================================================== --- trunk/src/main.c (revision 34911) +++ trunk/src/main.c (revision 34912) @@ -235,10 +235,11 @@ sprintf(exec_prefix, "%s%s%s", bindir, RND_DIR_SEPARATOR_S, BINDIR_TO_EXECPREFIX); /* export the most important paths and data for child processes (e.g. parametric footprints) */ - tmp = rnd_concat(PCBSHAREDIR, "/pcblib", NULL); + tmp = rnd_concat(PCBSHAREDIR, "/footprint", NULL); se |= rnd_setenv("PCB_RND_VERSION", PCB_VERSION, 1); se |= rnd_setenv("PCB_RND_REVISION", PCB_REVISION, 1); - se |= rnd_setenv("PCB_RND_PCBLIB", tmp, 1); + se |= rnd_setenv("PCB_RND_PCBLIB", tmp, 1); /* for backward compatibility - do not use */ + se |= rnd_setenv("PCB_RND_FOOTPRINT", tmp, 1); se |= rnd_setenv("PCB_RND_SHARE", PCBSHAREDIR, 1); se |= rnd_setenv("PCB_RND_LIB", PCBLIBDIR, 1); se |= rnd_setenv("PCB_RND_EXEC_PREFIX", exec_prefix, 1); Index: trunk/tests/gsch2pcb-rnd/Makefile.common =================================================================== --- trunk/tests/gsch2pcb-rnd/Makefile.common (revision 34911) +++ trunk/tests/gsch2pcb-rnd/Makefile.common (revision 34912) @@ -1,5 +1,5 @@ CONF = \ - -c rc/library_search_paths+=$(TRUNK)/pcblib \ + -c rc/library_search_paths+=$(TRUNK)/footprint \ -c rc/default_pcb_file=$(TRUNK)/src/default.pcb GSCH2PCB = $(TRUNK)/util/gsch2pcb-rnd/gsch2pcb-rnd Index: trunk/util/pcblib-map/cache.sh =================================================================== --- trunk/util/pcblib-map/cache.sh (revision 34911) +++ trunk/util/pcblib-map/cache.sh (revision 34912) @@ -38,7 +38,7 @@ } ( -cd ../../pcblib +cd ../../footprint for n in `find .` do case $n in Index: trunk/util/pcblib-static.cgi =================================================================== --- trunk/util/pcblib-static.cgi (revision 34911) +++ trunk/util/pcblib-static.cgi (revision 34912) @@ -169,18 +169,19 @@

pcblib

The default library in pcb-rnd -is called the "pcblib" (lib and newlib are already used by vanilla pcb). -Pcblib content consists of +was called the "pcblib" (lib and newlib are already used by vanilla pcb) and +is called footprint/ from 3.0.0. +This footprint library content consists of parametric (generated) footprints and static footprints ("file elements"). This page queries static footprints.

-The goal of pcblib is to ship a minimalistic library of the real essential -parts, targeting small projects and hobbysts. Pcblib assumes users can +The goal of this lib is to ship a minimalistic library of the real essential +parts, targeting small projects and hobbysts. This assumes users can grow their own library by downloading footprints from various online sources (e.g. gedasymbols) or draw their own as needed. Thus instead of trying to be a complete collection of footprints ever drawn, it tries to collect the common base so that it is likely that 90% -of pcblib users will use 90% of the footprints in their projects. +of users will use 90% of the footprints of this lib in their projects.