X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Subject: Re: [geda-user] Primitive electrical types --> layers To: geda-user AT delorie DOT com References: <56928D6F DOT 6080807 AT ecosensory DOT com> <5692AFEC DOT 9060807 AT ecosensory DOT com> <20160110213849 DOT 460c7bb14e8f6645138bebd8 AT gmail DOT com> <20160111080228 DOT GA32662 AT visitor2 DOT iram DOT es> <20160111094144 DOT bee82694c414c1cc36b98cf8 AT gmail DOT com> <5693884C DOT 7080003 AT iee DOT org> From: "M. J. Everitt (m DOT j DOT everitt AT iee DOT org) [via geda-user AT delorie DOT com]" X-Enigmail-Draft-Status: N1110 Message-ID: <56939498.7090503@iee.org> Date: Mon, 11 Jan 2016 11:40:08 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/alternative; boundary="------------020406030908090108080803" X-Provags-ID: V03:K0:XLIQ5y4Gjt4XRjNkzBWUXRXHyKWQEUmqNizJDsOSOLyiKOjxoEZ PkuNnG1vc/79nw5UmkSdzqAUCeNvgNmwCG2oH6a0WTZYhjLuenozEfknuSy7bTsLAYdUxf4 2wq7rtfwrdhQF63rsUqjx1zogTH3Uc3/IO3SBNGK5lIb4YmnulOqMY1dJjun0W1WNmrO8R2 QzR/3fGm6lUJXqlRu4aYQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:62+n2kaUTLE=:0c2FbjcmbwxMbgPltUO1g8 vnbpQZWOiBnnJcDATZliPB3WcfSMs1waRKFY4NUMsmi93pbILD/odyNQbZJHM1ARYwd44vgJC myjICsQYXnH3x4+XLlgN5yfleIko5eGbyqK+SkrImChryhDJ5/a9icz42VpRHVO5vmWsJQamt 1gNNmQFFGZf95CaDcFvnXsbJ2xSjFV32rL1jmnBcBR11M2MRlTOCLHZ5NgbLXcp/VqgHEVYpi Ym+0lB/KsBeUMVblSHwiuPS2RcDm+aw0OEZh/nT11j6cjsYzDmUhtpzfESbJwdSr3YK24uH62 2zEgBWDIzKooKmmrnclL13Iv2tkW2Rgp4i3z+HTt2P2xbrcbk8T5VSP/Xv7IvzMYR9U0aRZjY zTSUWCn6khAKktmIMh/2v0zvEJGNMRric1Dp6sIXZDqJgAQ3Q5hArlh09GPCX5kPAS/+C642d Q3ubOH8QMjV9DwZVE/nTht5x26XPOqOpTquzKcygy4mqXL3Dh4J9VajttZWUR/a75oiceN1Yu nNnFnxI3RWLs00ZYDZHkKEevi3nNVXZ7anug1Cinyf8m5o0cQW+HIfZuMXI93PWVmGwvpQeba D+YbSjUqEY7UUTg0DOEbREVkhyaXm8V4NKV7mwYZjsbIB9EsMN6OYvCBlpu13IPs2ntTVAKlm +hK7ipdhhZrM1mDBWU9RmVbimrEBsoDbBfSZuf5BQxdSn7lBr+vGyyuUhwXakkSwoEHe4KO/O WBOh/D9deYUZQ4ef 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 Precedence: bulk This is a multi-part message in MIME format. --------------020406030908090108080803 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 11/01/16 11:05, Peter Clifton (petercjclifton AT googlemail DOT com) [via geda-user AT delorie DOT com] wrote: > On 11 January 2016 at 10:47, M. J. Everitt (m DOT j DOT everitt AT iee DOT org > ) [via geda-user AT delorie DOT com > ] > wrote: > > On 11/01/16 08:41, Nicklas Karlsson (nicklas DOT karlsson17 AT gmail DOT com > ) [via > geda-user AT delorie DOT com ] wrote:Surely > its sufficient to draw in the outline your intended > cut-out/slit/etc .. now possibly making this "Keep-out" in other > layers > may be desirable, but since you're using a milling cutter to do the > outline, you need a path for it to follow. Perhaps you can 'shade' > this > in the GUI - I see no need for additional complexities making > polygons, > figuring out perimeters, etc, when you can line-draw and need to > anyway. > Perhaps having an outline 'layer' might help you achieve what you're > hoping for? We've even milled curved board outlines, using the curve > tool, and our fab. have managed this perfectly without problems. > > > > The convention is usually, that you model what you want as the > physically produced, post-manufacturing shape. (This is the same with > mechanical CAD too).. > > Tool-paths, drill size corrections (allowance for plating, or > approximation of nearest available drill size), are the scope of the > CAM post-processor. > > The reason board outlines as primitive lines on a drawing layer is not > a great idea, is that those lines are drawn with finite-thickness, > leaving the requirement of some convention for interpretation. Usually > fabs follow the center-line I believe, but possible ambiguity here is > why they often insist on the line being drawn in a small width. Due to > coordinate rounding etc.., when curves get involved, you will often > find miniscule gaps between outline segments, that the CAM system must > jump over. (Not necessarily a "problem", but an additional heuristic, > and potential for error with this approach). > > This is why all the more advanced board representation formats model > an explicit outline, with poly(curve) type primitives, so an explicit > design intent of the finished shape can be modelled. This is > effectively a "polygon" shape in PCB, especially once the patches > adding support for curved edges are merged. To avoid ambiguity in > interpretation, this "polygon" needs (I believe) to be a first-class > property of the stack-up model. (Something I'm working on designing > and adding currently). > > Peter I do know that CAM/CNC manufacturing uses successive-approximation polygons for curves anyway, since arbitrary circular motion is hard to set up. I've not used any pcb systems that are as advanced to have 3D components and true board representation, giving you a real indication of how your board looks, as parameters that are controlled at manufacture-time are likely not to be available to the casual user. Most are based on a 2D system, and then it's a matter of appropriately handling layers, shapes and connections. I am very interested in the effort to be able to create 'blind' vias, as although these are more expensive to manufacture, could be helpful to those making small pcb 'stacks'. MJE --------------020406030908090108080803 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 7bit On 11/01/16 11:05, Peter Clifton (petercjclifton AT googlemail DOT com) [via geda-user AT delorie DOT com] wrote:
On 11 January 2016 at 10:47, M. J. Everitt (m DOT j DOT everitt AT iee DOT org) [via geda-user AT delorie DOT com] <geda-user AT delorie DOT com> wrote:
On 11/01/16 08:41, Nicklas Karlsson (nicklas DOT karlsson17 AT gmail DOT com) [via
geda-user AT delorie DOT com] wrote:Surely its sufficient to draw in the outline your intended
cut-out/slit/etc .. now possibly making this "Keep-out" in other layers
may be desirable, but since you're using a milling cutter to do the
outline, you need a path for it to follow. Perhaps you can 'shade' this
in the GUI - I see no need for additional complexities making polygons,
figuring out perimeters, etc, when you can line-draw and need to anyway.
Perhaps having an outline 'layer' might help you achieve what you're
hoping for? We've even milled curved board outlines, using the curve
tool, and our fab. have managed this perfectly without problems.


The convention is usually, that you model what you want as the physically produced, post-manufacturing shape. (This is the same with mechanical CAD too)..

Tool-paths, drill size corrections (allowance for plating, or approximation of nearest available drill size), are the scope of the CAM post-processor.

The reason board outlines as primitive lines on a drawing layer is not a great idea, is that those lines are drawn with finite-thickness, leaving the requirement of some convention for interpretation. Usually fabs follow the center-line I believe, but possible ambiguity here is why they often insist on the line being drawn in a small width. Due to coordinate rounding etc.., when curves get involved, you will often find miniscule gaps between outline segments, that the CAM system must jump over. (Not necessarily a "problem", but an additional heuristic, and potential for error with this approach).

This is why all the more advanced board representation formats model an explicit outline, with poly(curve) type primitives, so an explicit design intent of the finished shape can be modelled. This is effectively a "polygon" shape in PCB, especially once the patches adding support for curved edges are merged. To avoid ambiguity in interpretation, this "polygon" needs (I believe) to be a first-class property of the stack-up model. (Something I'm working on designing and adding currently).

Peter
I do know that CAM/CNC manufacturing uses successive-approximation polygons for curves anyway, since arbitrary circular motion is hard to set up.

I've not used any pcb systems that are as advanced to have 3D components and true board representation, giving you a real indication of how your board looks, as parameters that are controlled at manufacture-time are likely not to be available to the casual user. Most are based on a 2D system, and then it's a matter of appropriately handling layers, shapes and connections.

I am very interested in the effort to be able to create 'blind' vias, as although these are more expensive to manufacture, could be helpful to those making small pcb 'stacks'.

MJE
--------------020406030908090108080803--