delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2014/06/28/21:18:49

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-Cam-AntiVirus: no malware found
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Message-ID: <1404004663.18463.42.camel@pcjc2lap>
Subject: Re: [geda-user] pcb: Patch for arcs with different radii for x and
y on screen
From: Peter Clifton <pcjc2 AT cam DOT ac DOT uk>
To: geda-user AT delorie DOT com
Date: Sun, 29 Jun 2014 02:17:43 +0100
In-Reply-To: <201406281614.s5SGEm2m030282@envy.delorie.com>
References: <ojbt218fi23of8gryausfclb DOT 1403353431756 AT email DOT android DOT com>
<53A7E8F0 DOT 8020905 AT philippklostermann DOT de>
<1403800440 DOT 25929 DOT 14 DOT camel AT pcjc2lap>
<20140627112707 DOT GB21723 AT visitor2 DOT iram DOT es>
<1403900109 DOT 6474 DOT 8 DOT camel AT pcjc2lap> <877g422gyf DOT fsf AT rover DOT gag DOT com>
<1403918513 DOT 6474 DOT 37 DOT camel AT pcjc2lap> <874mz53cxn DOT fsf AT rover DOT gag DOT com>
<1403964458 DOT 21012 DOT 13 DOT camel AT pcjc2lap>
<201406281614 DOT s5SGEm2m030282 AT envy DOT delorie DOT com>
X-Mailer: Evolution 3.10.4-0ubuntu1
Mime-Version: 1.0
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Sat, 2014-06-28 at 12:14 -0400, DJ Delorie wrote:
> > A question still unclear in my head.. should we define a pad stack
> > which has the relevant properties / pad geometry, and call that out
> > repeatedly, OR.. should we continue in PCB's current approach, and
> > have every single via entity describe these aspects individually.
> 
> I've used both types of tools, and IMHO it's better to have a "canned"
> geometry that you can reference, as well as making exceptions.
> Sketchup has a good implementation of this, but lacks a way of finding
> all features that are exceptions.

Is this in favour of, or against indirecting through reference to a
separately defined padstack? (We could still choose to copy-on-write, or
edit-all when modifying vias / pads).

Would a pad-stack definition be explicit for the board stack-up in use,
or would it more usefully read something like:

TOP PASTEMASK LAYER      : Round 2.0mm
TOP SOLDERMASK LAYER     : Round 2.2mm
TOP (or START?) LAYER    : Round 2.0mm Clear Round 2.4mm 
INTERMEDIATE LAYER       : Round 2.1mm Clear Round 2.5mm 
BOTTOM (or END?) LAYER   : Round 2.0mm Clear Round 2.4mm 
BOTTOM SOLDERMASK LAYER  : Round 2.2mm
BOTTOM PASTEMASK LAYER   : Round 2.0mm


> > I really wish PCB didn't have the concept of layer groups to
> > complicate this. They are REALLY unhelpful. Plain _layers_, defined
> > to be in a particular numerical order through the board stack-up
> > would be a MUCH easier model to use.
> 
> We'd still need a way to have one layer be composed of different
> things-that-become-gerbers.  An obvious example of this is the
> top/bottom layers, which have copper, mask, paste, and silk.

The grouping is only really to allow footprint placement, IE.. that the
pads, copper and silkscreen items called out within the footprint file
go into the correct layers when we place things.

"top" is not actually a layer per-se, nor would all of the above
physical layers be considered at the same Z-coordinate of the board.


I know DJ knows the workings, but for others reading, my assessment is
that the only reason we include top-silk in the group with the top
copper layer so we can IDENTIFY the top copper layer. (Likewise with the
bottom layer).

The top and bottom silk layers have defined numerical offsets in the
layer data-structure... whereas, the copper layers can be in any
non-physical order (and indeed, there can be more than one, additively
combined to produce the final layer image).


The "paste" (and "mask" - git HEAD), layers currently don't actually
exist within PCB, certainly not in the layer groups structure. The
rendering and export routines construct them on the fly using the
attributes and properties of other object like pins, pads and vias.


The additive combination of multiple underlying layers is a nuisance
from a code point of view.. it means we need to combine these various
data-sources to check for connectivity, and it means some operations can
be slowed - as the spatial indexes are kept per-layer, not per group.

IMO, although the history pre-dates my involvement, PCB's layer groups
only really exist as a substitute for being able to tag objects by
class, or property.

As sub-layers within a group cannot be turned on/off individually, and
are output together for export, the functionality remaining only boils
down to being able to distinctly colour certain objects. (And perhaps
separate them easily - as you can temporarily reassign the layer groups
in order to separate a sub-layer, and keep them separate within the PCB
file.).



> > then the board stack-up of is considered to be the numerical
> > sequence (either ascending or descending) of these two layer-groups
> > and any in between.
> 
> Photo mode does this too, and OSH Park interprets PCB layouts this
> way.

Does photo mode use anything  other than the outer-layers though?




-- 
Peter Clifton <peter DOT clifton AT clifton-electronics DOT co DOT uk>

Clifton Electronics

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019