X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:subject:message-id:in-reply-to:references:mime-version :content-type:content-transfer-encoding; bh=Bhu/dS2OIDbF1VwKZ3aJCseLFJM2H+PD+QEvqBZO/BU=; b=iAL97qm4+jDCdrZqIjD0o+IwXaoU3176G7juIHo3W4BqtY7jXq+oDXESSRK6u04JGi Y7i5ET5kEAUNjp6dKZaUCQkL2FuzdAK+2KjJWeUAZmo/1yXMgEnZkeqaDwpSygMRDJEG 2oViQ2ku+nPtB3NH5WBJ/82MyvqxS6OQbQTGOwQewYBdsrYA8ACnAAoMeP+R+rbEmEn3 YFYYIxSVLuE8Rkp38HHJ/sLAZ7jqf4OGwOj3CcFfpwFXMI003rmFukQdDIH+qM1HoEhO /uw6Uz2J5G3Ds0Z/RM6RvyQALn+Ewj4EJaWhT/eN656bUCCvChdN5jwKv8Um34EMqU6K SXgQ== X-Received: by 10.28.194.69 with SMTP id s66mr16800409wmf.93.1452541439496; Mon, 11 Jan 2016 11:43:59 -0800 (PST) Date: Mon, 11 Jan 2016 20:43:54 +0100 From: "Nicklas Karlsson (nicklas DOT karlsson17 AT gmail DOT com) [via geda-user AT delorie DOT com]" To: geda-user AT delorie DOT com Subject: Re: [geda-user] Primitive electrical types --> layers Message-Id: <20160111204354.79d78e189314f402979344f5@gmail.com> In-Reply-To: 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> <7B419D4C-A638-4DA8-AD74-EC3C56CFC9A7 AT icloud DOT com> X-Mailer: Sylpheed 3.5.0beta1 (GTK+ 2.24.25; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 On Mon, 11 Jan 2016 11:53:43 +0000 "Peter Clifton (petercjclifton AT googlemail DOT com) [via geda-user AT delorie DOT com]" wrote: > On 11 Jan 2016 11:44, "Chris Smith (space DOT dandy AT icloud DOT com) [via > geda-user AT delorie DOT com]" wrote: > > ... Wouldn’t it simplify the library functions if we just had > to handle interactions between polygons, and make things like trace endings > (rounded, square, teardrop) easier? > > In theory that is a nice idea, and one which often comes to mind when we > consider DRC and other operations which act upon the geometery. > > In reality, the polygon processing isn't as robust as we'd need, can be > quite slow and underlying it, people will expect to draw tracks from either > line segments or poly curves (depending on the package). > > At the design stage, CSG 2D geometery (adding / subtracting primitive > shapes) is still the norm. I have started to look at improved DRC and have read about the cgal library. It have the necessary drawing primitives but I have not been able to figure out if it can do the necessary operations between lines and polygons. To start with I assume current calculations are good enough but keep an eye open. Necessary operations between drawing primitives should be: 1. Grow "bloat" drawing primitive with clearance value. 2. Calculate which drawing primitives overlap. 3. At least subtract lines, circle segments circles from polygons in "copper pours". I have seen it already is in pcb/gpcb so I use no effort on this unless I found problems. Nicklas Karlsson