X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Fri, 27 Jan 2017 11:07:14 +0100 (CET) X-X-Sender: igor2 AT igor2priv To: geda-user AT delorie DOT com X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu" From: gedau AT igor2 DOT repo DOT hu Subject: [geda-user] [pcb-rnd] layer rewrite: board cross-section view Message-ID: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII Reply-To: geda-user AT delorie DOT com Hi all, pcb-rnd now features a not-to-scale cross-section view of the board for layer group edition, as shown on this 50 sec video: https://archive.org/details/pcb-rnd-csect This view replaces the old layer group matrix tab in the preferences dialog in the GTK HID. The view is interactive, it allows moving layers among layer groups or layer groups within the layer stack with drag&drop. It is also possible to create new copper layer group in the stack or to remove an empty copper layer group from the stack. This is not pure eye-candy: the core already has the same representation of all physical layer groups, including the substrate layers. The old assumptions about 2 silk layers stored after coppers, or special group number for top or bottom are all gone: as far as the layer code goes, the user should be able to set up arbitrary layers stacks. By the end of the rewrite the only limitation would be that there must be a top and a bottom copper layer group. And this why I had to replace the matrix view, it was fine for a set of copper groups, but it was too weak for representing a full detailed stackup. Current standing ---------------- All export tests pass, there's no file format change. Lesstif and IO kicad still needs some work. Next stable release is scheduled to mid Feb. At the moment we are still far from the end; although the layer code already supports custom stacks, the file formats haven't been upgraded yet. So the current implementation of the UI still enforces some restrictions and generally wants to deal with copper layers only. These restrictions are extra code I will just remove when we start saving and loading the extra details. Vision ------ Later on this more generic layer code will allow us to: - introduce custom layers easily (e.g. adhesives, comment layers, etc.) - introduce active non-copper layers more easily (e.g. keepout) - split up the generated layers (such as mask and paste) into a generated one and one or two drawable layers; or in short: editable mask and paste layers - give more control over the exporter output file names - just set it per layer group per exporter if needed - get the code understand and store physical layer group material, thicnkess, dieletric constant, etc., e.g. for simulation As always, the speed of which these features are implemented greatly depend on how much user testing the new layer code gets. If you need any of those features, you can easily speed up the process. Regards, Igor2