X-Authentication-Warning: delorie.com: mail set sender to geda-help-bounces using -f X-Recipient: geda-help AT delorie DOT com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=YWW/xiaVDQ0n0D55cdSnxORpovQ0erhTeNoWbQPNrJ0=; b=bl+wlLR1h+sINvFv1EKloHn8FE3yYtJ5LSiuOUOEMwy93dF+ua/NDlnDLFYWdr5P+A 2jX/FYhN+RJ2DsDJDs0/PyP4OIq04o1IBqLTbDcGnerW9AM6vIeLH9cCLvbihc6n/pAz wXY5iKpz6EPoCS5oDfiwoiVNVGV50Zh5uIlkPD9fjvM9/oxqVRCV3ebUDfMvQb/Sie7k oTCY8eOdBH2D8SRXvRRnKOnhW8qmEME7PlGKAK2Ew/Q4SjJBZ758tixvI1628XagV4b3 ZPz9JYsYfGiRK1tRRobX+hZhGwYO0SgQ8aMsDcgSjG3fBVBmKI4N9Xc50yAc4AKnWVYz Sx3g== MIME-Version: 1.0 In-Reply-To: <1358018496.2901.3.camel@localhost> References: <201301112120 DOT r0BLKLla029311 AT envy DOT delorie DOT com> <1358018496 DOT 2901 DOT 3 DOT camel AT localhost> Date: Mon, 14 Jan 2013 00:47:52 +0200 Message-ID: Subject: Re: [geda-help] export PCB silkscreen without refdes names From: Duncan Drennan To: geda-help AT delorie DOT com Content-Type: multipart/alternative; boundary=bcaec552438097ce9304d33351ed Reply-To: geda-help AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-help AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk --bcaec552438097ce9304d33351ed Content-Type: text/plain; charset=ISO-8859-1 Thanks Peter! I'll try that out. On Sat, Jan 12, 2013 at 9:21 PM, Peter Clifton wrote: > On Sat, 2013-01-12 at 01:15 +0200, Duncan Drennan wrote: > > > The easiest (only?) way is to hack the sources. Look in src/draw.c > > > starting with DrawEverything() > > > > I see that DrawElementName checks the HIDENAMESFLAG, but > > DrawEverything() uses the DrawLayer() function to draw the top and > > bottom silk layers for exporting. > > > > I guess one way would be to check the layer name and the HIDENAMESFLAG > > and then skip this step in DrawLayer() > > You could hide the name on every element on the board (I think the > keyboard short-cut is "h"), or: apply something like the following > patch. It may not apply cleanly, as it is from a personal stack of > commits on the top of my OpenGL branches. > > I have needed this before myself, as typically - on boards where I'm not > going to have a silk-screen produced, I won't go to the effort of moving > every silk annotation into the correct place. > > > commit 9db0771b89bf5bc854dd0ecada544502e4e88517 > Author: Peter Clifton > Date: Thu Nov 15 01:46:48 2012 +0000 > > Comment out check for GUI HID when considering hidenames > > Yes - I want to hide them for a print! > > diff --git a/src/draw.c b/src/draw.c > index 96e2473..8f91ba6 100644 > --- a/src/draw.c > +++ b/src/draw.c > @@ -184,7 +184,7 @@ void ghid_set_lock_effects (hidGC gc, AnyObjectType > *object); > static void > draw_element_name (ElementType *element) > { > - if ((TEST_FLAG (HIDENAMESFLAG, PCB) && gui->gui) || > + if ((TEST_FLAG (HIDENAMESFLAG, PCB) /*&& gui->gui*/) || > TEST_FLAG (HIDENAMEFLAG, element)) > return; > ghid_set_lock_effects (Output.fgGC, (AnyObjectType *)element); > > > > > > /* draw the layer text on screen */ > > r_search (Layer->text_tree, screen, NULL, text_callback, Layer); > > > > but that doesn't seem very elegant....too much of a special case in a > > generic function. > > -- > Peter Clifton > > Clifton Electronics > > -- Turn ideas into products - http://www.engineersimplicity.com The Art of Engineering - http://blog.engineersimplicity.com --bcaec552438097ce9304d33351ed Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Thanks Peter! I'll try that out.


On Sat, Jan 12, 2013 at 9:21 = PM, Peter Clifton <pcjc2 AT cam DOT ac DOT uk> wrote:
On Sat, 2013-01-12 at 01:1= 5 +0200, Duncan Drennan wrote:
> > The easiest (only?) way is to hack the sources. =A0Look in src/dr= aw.c
> > starting with DrawEverything()
>
> I see that DrawElementName checks the HIDENAMESFLAG, but
> DrawEverything() uses the DrawLayer() function to draw the top and
> bottom silk layers for exporting.
>
> I guess one way would be to check the layer name and the HIDENAMESFLAG=
> and then skip this step in DrawLayer()

You could hide the name on every element on the board (I think the keyboard short-cut is "h"), or: apply something like the followin= g
patch. It may not apply cleanly, as it is from a personal stack of
commits on the top of my OpenGL branches.

I have needed this before myself, as typically - on boards where I'm no= t
going to have a silk-screen produced, I won't go to the effort of movin= g
every silk annotation into the correct place.


commit 9db0771b89bf5bc854dd0ecada544502e4e88517
Author: Peter Clifton <pcjc2 AT cam DOT ac DOT u= k>
Date: =A0 Thu Nov 15 01:46:48 2012 +0000

=A0 =A0 Comment out check for GUI HID when considering hidenames

=A0 =A0 Yes - I want to hide them for a print!

diff --git a/src/draw.c b/src/draw.c
index 96e2473..8f91ba6 100644
--- a/src/draw.c
+++ b/src/draw.c
@@ -184,7 +184,7 @@ void ghid_set_lock_effects (hidGC gc, AnyObjectType *ob= ject);
=A0static void
=A0draw_element_name (ElementType *element)
=A0{
- =A0if ((TEST_FLAG (HIDENAMESFLAG, PCB) && gui->gui) ||
+ =A0if ((TEST_FLAG (HIDENAMESFLAG, PCB) /*&& gui->gui*/) ||
=A0 =A0 =A0 =A0TEST_FLAG (HIDENAMEFLAG, element))
=A0 =A0 =A0return;
=A0 =A0ghid_set_lock_effects (Output.fgGC, (AnyObjectType *)element);




> /* draw the layer text on screen */
> =A0 r_search (Layer->text_tree, screen, NULL, text_callback, Layer)= ;
>
> but that doesn't seem very elegant....too much of a special case i= n a
> generic function.

--
Peter Clifton <

-- Turn ideas into products -
= http://www.engineersimplicity.com
The Art of Engineering - http://blog.engineersimplicity.com<= /a>
--bcaec552438097ce9304d33351ed--