X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Virus-Scanned: by amavisd-new (Uni-Kiel/l4ms-sc) From: geda AT psjt DOT org (Stephan =?utf-8?Q?B=C3=B6ttcher?=) To: "Nicklas Karlsson \(nicklas.karlsson17\@gmail.com\) \[via geda-user\@delorie.com\]" Subject: Re: [geda-user] The nature of gEDA layers References: <20160127141334 DOT c738feb9dbeb54a7dec3dff8 AT gmail DOT com> <56A8F74B DOT 8080304 AT ecosensory DOT com> <56A961BC DOT 3040405 AT ecosensory DOT com> <56A9E416 DOT 8080500 AT ecosensory DOT com> <20160128124020 DOT 8f2f33210481f637a696f5d0 AT gmail DOT com> <20160128164922 DOT 7bd920859ab8462f8abb0f40 AT gmail DOT com> <20160128191943 DOT d3f06f258e112a8d7d532327 AT gmail DOT com> <20160201113121 DOT 9e1229dc74b565f082c3bfba AT gmail DOT com> <20160202102831 DOT 87be1281db69271eaf892fc9 AT gmail DOT com> Date: Tue, 02 Feb 2016 13:54:12 +0100 In-Reply-To: <20160202102831.87be1281db69271eaf892fc9@gmail.com> (Nicklas Karlsson's message of "Tue, 2 Feb 2016 10:28:31 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain 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 "Nicklas Karlsson (nicklas DOT karlsson17 AT gmail DOT com) [via geda-user AT delorie DOT com]" writes: >> > Currently, the PCB objects come with a lot of implicit aura >> > attached, polygon clearance, soldermask clearance, solderpad, >> > thermals, ... >> > >> > A generic geometry may need to be more explicit. >> > >> > Everything is drawn at a depth. There are positive and negative >> > depths. Deeper stuff is drawn before shallower stuff. Negative >> > depth draw holes and clerances. >> > >> I feel like this is the kind of magic that looks elegant and generic >> on inception but tends to turn into an obstacle further down the >> evolution of the application. Specifically: > > Depth I consider a little bit confusing for use in pcb/gpcb. Gerber used the term LEVEL, and the polarity toggles in adjacent levels. The levels are implicitly defined in a Gerber file: Whenever the drawing polarity changes, a new level is entered. Using the sign of a level/depth property as a polarity designator may be a bit confusing, but less so than a lot we have right now in the data format. >> * In addition to positive and negative, there may arise the need for a >> third mode of drawing. E.g. XOR-drawing. (No, I don't know what XOR- >> draw would be good for in the context of EDA -- just brain storming) > > There is something similar as xor in gerber file format, inverting > polarity I think. The term XOR do not appear in the Gerber spec. The polarity is either DARK or CLEAR. > To draw material and cut out would however be useful. Clearance in > polygon in sort of make cut out but it is not possible to draw cutout > manually. For layer via/board it would make sense with other forms of > cut out than round for drilled holes. > >> * The depth parameter kind of enforces the way how to render the >> design. It would be more flexible and potentially easier to extend to >> mark-up the intended meaning. That is a question of syntax details. Following the Gerber terminology may be a good idea: "level", not "depth", and larger levels draw later. > Layers are one pixel "thick" and stack up is used for order. It would > be possible with more than on bit thick or more colors for different > materials, it may add complications or solve overlapping problem which > may occure if using two layers for one mechanical position. Layers are 2D and have a meaning in Z only by interpretation of Attributes by a HID. Levels/depths are the drawing order of graphics items within a single layer. What item shall be cleared by a line clearance, and what item shall persist? 1st draw a DARK polygon 2nd draw a CLEAR circle areound a via hole 3rd draw a DARK circle and a DARK line wowards that circle The CLEAR circle must not clear the via pad nor the line, but it must clear the polygon. The standard library will assign level numbers to certain classes of graphical items, with gaps for special needs. >> ---<)kaimartin(>--- > > > Nicklas Karlsson -- Stephan