Mail Archives: geda-user/2018/09/10/03:08:33
Hi Stephen,
I'm replying to this old thread started at:
http://www.delorie.com/archives/browse.cgi?p=geda-user/2015/07/22/14:31:22
Stephen Besch <sbesch AT buffalo DOT edu> wrote:
> Several years back there was a lot of discussion about the occasional
> need for odd shaped cut-outs. Even though several suggestions were made
Yup, I've found some of the early discussions and feature reqs tracing
back to 2005 and 2007:
http://archives.seul.org/geda/user/Feb-2005/msg00050.html
http://archives.seul.org/geda/user/Nov-2007/msg00154.html
> none worked - in some cases at all, or even when they did the results
> were marginal. This is still a problem today. The only work around is
I have good news for you! Following our good old tradition at pcb-rnd,
fixing decade old misfeatures, I've recently added:
- a minor layer model extension so we can properly capture the little
differences between board outline and slots and also understand which
layers would be plated and unplated; this is all explicit, there's no
trickery and hackery, pcb-rnd just understands these details from now on
- support for slots in padstacks - that is, you can make an oval/oblong
"pin", with a short plated slot in it, for your power jack connector.
Example, with screenshot:
http://repo.hu/cgi-bin/pool.cgi?cmd=show&node=slot_ann
> to draw them directly on some unused layer - for example "Spare" works
> for me. This is however not a really good solution. Nevertheless it's
> better than drawing them on the outline layer. First off, every board
> shop that I deal with want cut-outs in a separate gerber file. If you
> use the outline layer then you can't have a separate board layout -
> unless of course you put the outline on some other unused layer.
I agree. Thus pcb-rnd now allows you to set up each of these in separate
layer groups. At the end, multi-file exporters would normally output each
layer group in a separate file, but with our cam plugin you can instruct
them to merge groups.
So it's better to have multiple layers and draw cutouts separately from
board outline and then if your fab requires every routing info in one
file, it's easy to tell pcb-rnd to merge them using the cam syntax on
export.
> However, this solves only part of the problem. As long as the cutout is
> only straight lines it's simple. If you need arcs - or worse, full
> circles or linked arcs it gets really hard. This is largely due to
> problems with the ARC tool in PCB: 1) you can't control/change Radius;
> 2) you can't control degrees of arc, and 4) you can't control start
> angle. This is really weird because the arc[...] item in PCB allows
> control of all of these items.
This also got fixed in pcb-rnd long ago:
- if you are using the GUI, you have a property editor dialog that shows
all properties of the selected objects. This includes radius, stard angle,
delta angle of arc. For screenshot see:
http://repo.hu/cgi-bin/pool.cgi?cmd=show&node=propedit
- from cli you have the propset() action that can change any of these
properties; for (selectively) selecting your arcs you can use the query()
action that provides a minimalistic query language for picking which
objects to select, looking at object properties. The query language has
access to radius and start and delta angles too, so you can search and
select by those.
>
> I have found only one way to get this to work. First select the target
> layer. Then let's say you have a cutout consisting of a closed loop that
> requires 6 linked arcs and 2 lines. Just draw them on the selected layer
> (Spare for example) more or less where you think that they will need to
> be. The arcs will have to be in more or less random locations owing to
> the severe limitations of the Arc tool.
By the last stable release, pcb-rnd also got a 2d drafting plugin. It has
a trim() action. You can draw your lines and arcs, make sure they
intersect and then just trim off the excess segments beyond the
intersection point. This is guaranteed to result in objects with matching
endpoints.
<snip>
> it has to be there anyway or PCB will throw an error. In fact you must
> be extremely careful when editing these parameters since PCB is very
> intolerant of formatting errors.
Then you'd probably like pcb-rnd's native file format, lihata, where we
have explicitly named field (no positional parameters) and we tolerate
(and can even preserve on a load/save cycle) your numerical format (and
comments and indentation).
<snip>
> This is extremely tedious and annoying but when you are desperate for a
> cutout I'm afraid that it's the only way.
There's another, easier way, tho: just use the right tool that supports
the features you need!
HTH,
Igor2
- Raw text -