DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 50FHqh1E3980336 Authentication-Results: delorie.com; dmarc=none (p=none dis=none) header.from=delorie.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=delorie.com X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 50FHqg7H3980315 Authentication-Results: delorie.com; dmarc=none (p=none dis=none) header.from=aspodata.se Authentication-Results: delorie.com; spf=pass smtp.mailfrom=aspodata.se DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 50FHqg7H3980315 X-Recipient: geda-user AT delorie DOT com X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7+dev X-Exmh-Isig-CompType: comp X-Exmh-Isig-Folder: inbox From: "karl AT aspodata DOT se [via geda-user AT delorie DOT com]" To: geda-user AT delorie DOT com Subject: [geda-user] fp generator update Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Message-Id: <20250115175221.C8430807C585@turkos.aspodata.se> Date: Wed, 15 Jan 2025 18:52:21 +0100 (CET) X-Virus-Scanned: ClamAV using ClamSMTP Reply-To: geda-user AT delorie DOT com Hello all, I have updated my footprint generator: https://aspodata.se/git/openhw/share/pcb/gen.pl so that it doesn't put silk in the mask gap. Example result: https://aspodata.se/git/openhw/share/pcb/_th_radial/kingbright_T-1_5mm_na.fp /// I do that by saving a list of bounding boxes, one for each pin or pad. Silk lines have round ends and joins, so I can enlarge thoose boxes with the silk lines radius and that resulting enlarded box is used as a limit for where the silk might be drawn. So to make a fp one can do (all measurements in mm) element_start("a.fp", "", "test", "M?", 100); # filename, doc, name, refdes, value pin( 1, 0, 0.5, 1); # x, y, drill, thickness, pin# my @bbw = bb_enlarge($silk_w/2, @bounding_box); silk_circle([1,1], 1, 0, 360, \@bbw); # center [x,y], radi, angle, sweep, bounding box refs. element_stop(); Since it is in a programming language (perl) you can easily make a row of pin/pad like for (my $x = 0; $x < 10; $x+=2) { pin( $x, 0, 0.5, 1); # x, y, drill, thickness, pin# } /// Unfortunately gen.pl has grown to a considerable size and I should split it up. Regards, /Karl Hammar