Mail Archives: geda-user/2015/05/29/13:12:32
On Fri, 29 May 2015, Mike Crowe (mcrowe AT gcdataconcepts DOT com) wrote:
> Hello All
>
> I've been using gEDA pcb for several years now have found it to be an
> excellent, stable, "meat and potatoes" tool for board layout.
>
> While there are several features I'd like to have implemented (keep out
> regions, blind and buried vias, footprints that allow generic traces,
> add pad flags 'start-round', 'stop-round'...) there is one feature that
> I'd really like to see. The ability to put slot on a board as part of a
> footprint. I'm interested in enough to volunteer time to help implement
> this.
>
> On the output NC-drill side, implementing it seems simple enough. It
> would be a start point, a "G85" keyword and an end point. There is some
> preliminary code support for viewing slots in gerbv (git version).
Does this mean a slot is a straight line?
What if the user wants a triangle milled out or an L shaped slot?
Of course combining multiple slots could solve this. The question is
what's better: a simple, one-geometry-only slot with the hack that the
user needs to build more compelx shapes using more of them, or a complex
slot (a list of lines and arcs, for example).
> At the footprint side, it seems to me that a new keyword identifier is
> in order, maybe "slot" It would have to properties of a "pin" except
> that it would have a start and stop point.
We have an outline layer with special properties. If the user wants to do
custom shaped cutouts, he can draw them there. Does the above paragraph
mean that a slot differs from such cutouts in only one sense, that it's
also a pin?
If so, I'd probably go for a different combination, and decouple "ring"
shape from "hole" shape:
- the hole is either a circular hole or an arbitrary poly (== slot, the
edges of the poly can be converted to a list of line segments for milling)
- the ring is either a filled circle or a filled poly above the hole
The original PCB code has support for square and octagonal rings, and
afaik they are implemented as polys, so the second point is almost
there. In my fork I have funny shaped rings, some of them assymetrical.
While working on that feature, I realized that some random parts of the
code (thermals for example) hardwire assumptions on the shape of the ring,
and do not play nice with arbitrary shaped rings. The code probably also
assumes holes to be circular, but that would need to be revised/changed
with any other slot mechanism as well.
Regards,
Igor2
- Raw text -