Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-17 Thread Phillip Jones
On Fri, Oct 15, 2010 at 5:15 PM, Stefan Salewski m...@ssalewski.de wrote:
 On Fri, 2010-10-15 at 11:54 -0700, Andrew Poelstra wrote:


 The reason for it is that this is generally how drawing canvases work,
 so from a programmer's perspective, it is simpler to have y pointing down.


 WHY?


Mainly because that has been the standard at least since Televisions
were invented. The beam in a CRT scans from left-to-right,
top-to-bottom. It's codified in the NTSC standard. So (x,y)=(0,0) is
the upper left corner. Why are CRT's like this? Probably because words
in books are also oriented left-to-right, top-to-bottom. Maybe if the
television had been invented in the middle-east it would be different.
I've got several digital image processing books on my shelf, the
oldest is from 1972. Every one of them defines (x,y)=(0,0) as the
upper left corner of an image. y as positive down, and x as positive
right is simply the de-facto standard in digital image processing.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-17 Thread Markus Hitter


Am 17.10.2010 um 17:16 schrieb Levente Kovacs:

I think that is why X11 has its coordinate system as is; and that  
is why PCB
developers went that way. But a CAD tool is not about CRT display  
or image
processing. I think we should change it; it looks very awkward for  
a new user, who doesn't know the story.



Being a new gEDA user and fairly experienced with other CAD  
applications I can tell I couldn't care less. If one ever has to  
enter or read coordinates manually, there's something incomplete or  
wrong with the GUI.



another EUR 0.02 :-)
Markus

- - - - - - - - - - - - - - - - - - -
Dipl. Ing. (FH) Markus Hitter
http://www.jump-ing.de/







___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread Markus Hitter


Am 17.10.2010 um 17:55 schrieb Stephan Boettcher:

With gEDA, we do not use GUIs, we enter the schematics and the  
layout in

emacs ...

... at least parts of it, sometimes.


Ah, emacs people here. This explains a lot. Just for your entertainment:

http://reprap.org/wiki/PCB_Milling#gerbv
gEDA is yet another software suite with schematic and PCB layout  
editor. It wasn't included in the set of preferred choices here  
because it requires hand-coding of text files in between usage of the  
different GUI tools.




Markus




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread kai-martin knaak
Levente Kovacs wrote:

 Well, take a footprint for example. How do you edit the solder
 mask opening with the GUI?  I don't think there is a way to 
 do that with the GUI.

There are two ways ;-)

1) activate solder mask
2) let the mouse hover over the object you want to manipulate
3) type [k] to increase and [shift-k] to decrease the mask distance

Alternatively:

1) activate solder mask
2) select the objects you want to manipulate
3) type [:] to open the command window
4) type 
 ChangeClearSize(Selected, value, unit)
where a signed value will be an increment/decrement, and 
unit may be mil, or mm

 
 IMHO, we'd need a footprint editor as well.

I'd prefer a footprint-mode. I do all my footprints with the GUI and 
got used to quite a number of work-arounds.

---)kaimartin(---
-- 
Kai-Martin Knaak
Öffentlicher PGP-Schlüssel:
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x6C0B9F53



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-17 Thread Armin Faltl



Phillip Jones wrote:

I disagree. There are situations I can think of in which manually
entering coordinates would be simpler than using a GUI method.

I definitely think we sould flip the coordinate grid, but what
would that do to exiting files?




Version the file format. Introduce a new PCB_FILE_VERSION. If this is
defined in the file then call the appropriate read function, if it is
not defined then use the old function.
  

The file format of pcb-boards is versioned, the footprints aren't.
Both use the Y+ is down cs now, but clearly that's the only
solution for both ;-)


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread Levente Kovacs
On Sun, 17 Oct 2010 21:07:18 +0200
kai-martin knaak k...@familieknaak.de wrote:

 There are two ways ;-)
 
 1) activate solder mask
 2) let the mouse hover over the object you want to manipulate
 3) type [k] to increase and [shift-k] to decrease the mask distance
 
 Alternatively:
 
 1) activate solder mask
 2) select the objects you want to manipulate
 3) type [:] to open the command window
 4) type 
ChangeClearSize(Selected, value, unit)
   where a signed value will be an increment/decrement, and 
   unit may be mil, or mm

Both examples work on a footprint placed on a layout. I am talking about a
footprint itself. Off course, you can copy a footprint into the buffer, rip
up, edit, convert it back again to a footprint, copy to buffer, and overwrite
the old one.

Yes, I use VI to edit the soldermask openings. :-)

A footprint mode is okay with me.

I am thinking about a script that can run through my footprints and modify
such parameters like soldermask opening and keepaway, etc. in one go;
controlled by my Makefile system. We'd need such tool as well, regardless of
the ability of PCB itself. P.S.: tell me, if there any script that does
today...

Levente

-- 
Levente Kovacs
http://levente.logonex.eu




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread kai-martin knaak
Levente Kovacs wrote:

 Both examples work on a footprint placed on a layout. I am
 talking about a footprint itself. Off course, you can copy a
 footprint into the buffer, rip up, edit, convert it back again
 to a footprint, copy to buffer, and overwrite the old one.

conversion and rip-up is not necessary in this case. I'd rather avoid 
this, because you loose the some information during the process. (pin 
numbers, placement of the name)
Just change the solder mask of a footprint placed somewhere on the 
canvas. When done, copy the footprint to the buffer and overwrite the 
previous version in the library.

---)kaimartin(---
-- 
Kai-Martin Knaak
Öffentlicher PGP-Schlüssel:
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x6C0B9F53



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread Markus Hitter


Am 17.10.2010 um 20:28 schrieb kai-martin knaak:


Markus Hitter wrote:


http://reprap.org/wiki/PCB_Milling#gerbv
gEDA is yet another software suite with schematic and PCB layout
editor. It wasn't included in the set of preferred choices here
because it requires hand-coding of text files in between usage of
the different GUI tools.


Actually, it does not.
You can do the whole work-flow in GUI-mode only. You can use xgsch2pcb
or the shiny new pull feature of pcb to eliminate the command line,
too. That said, sometimes it is just easier to tweak the *.sch, or
*.pcb files than use the GUIs.

The reprap example shows how slightly misunderstood concepts may scare
away potential new users/projects.


As I wrote most of this RepRap Wiki page myself, I can also explain  
how this happened.


When looking on how and wether to get away from the free but closed  
source Eagle I tried a small 8 elements electronics project on Eagle,  
KiCad, Fritzing and gEDA. All from creating schematics to the  
finished GCode needed for milling the PCB. RepRap is about machines  
replicating it's self, so getting boards from some industry company  
should be avoided as much as possible.


Regarding gEDA, your home page recommends the gsch2pcb tutorial

http://geda.seul.org/wiki/geda:gsch2pcb_tutorial

for new users, so I started with that. If you look at this tutorial,  
it's full of command line stuff. Edit preferences files here, enter  
paths there, it even talks about manually fixing errors which occur  
ineviteably. Uh.


I did the first steps successfully but when I messed up in either  
gschem or pcb the third time just because they use different mouse  
buttons for panning and zooming, I also started to wonder how I would  
explain all this stuff to these 16 year old schoolboys showing up at  
RepRap. I couldn't imagine that.


Now it's a few weeks later and I use gEDA anyways, because I deviate  
from a part of the project done by an gEDA expert. I got accustomed  
somewhat to the inconsistent interfaces, found some spots of  
excellent GUI - DRC results or the layer setup editor, for example -  
and the suite starts to show it's bright side. Still it's difficult  
to explain this software to others.


In case I'm allowed to write down my three biggest wishes, here they  
are:


- Get that thing packaged as soon as a new release is done. Only  
software developers install from source these days. As far as I can  
see, Debian and the just released Ubuntu 10.10 still distribute the  
Nov 2009 release.


- Get the interface, especially mouse button behaviour, consistent  
between all parts of the suite. At least for a default installation.  
It doesn't matter wether you have to use the middle or right mouse  
button to pan around, but having different buttons for applications  
you often switch in between is a non-starter. And no, pointing to the  
key bindings editor doesn't help, because people would have to learn  
that instead of learning how to get their project done.


- Write a new tutorial. With a few pictures like before, and without  
any asking for editing text files. I've learned about xgsch2pcb and  
pull just with the email cited above, after reading many hours in  
various parts of the gEDA documentation. There is simply no hint such  
great features exist, so many users never find them.


Yes, this type of public relations work is sometimes tedious, but it  
will undoubtly bring you a lot of new users as well. As far as I can  
tell gEDA is the most reliable and powerful choice of open source  
EDA. The text file format makes it attractive for experts. gEDA's GUI  
can be brought on par with Eagle or KiCad easily, so there's no  
reason to miss that opportunity.



Thanks for listening,
Markus




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread Levente Kovacs
On Sun, 17 Oct 2010 23:22:05 +0200
Markus Hitter m...@jump-ing.de wrote:

[...]

I consider myself a geek, who doesn't mind editing text files, etc, however,
I see your point, and I think you've got it right.

Anyways... attached is my gpcb-menu.res, which addresses the panning problem.

:-)

Levente


-- 
Levente Kovacs
http://levente.logonex.eu


gpcb-menu.res
Description: Binary data


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread Stephan Boettcher
Markus Hitter m...@jump-ing.de writes:

 - Get that thing packaged as soon as a new release is done. Only
 software developers install from source these days. As far as I can
 see, Debian and the just released Ubuntu 10.10 still distribute the
 Nov 2009 release.

I am using Debian unstable (sid). Even there I get PCB version 20091103.

I have very mixed feelings about that.  In most times, I prefer to
cutting edge software.  If something breaks, I can fix it.  But for PCB
layout, a bit of stability is good, for long running projects at least.

During space flight board designs, I was compiling from a tarball and
made sure I did not upgrade until the final flight boards were made,
populated, tested.  Current Debian PCB cannot read those early flight
layouts any more.  The ground planes get messed up.

But in between really important designs, I am happy with the rather
stable Debian version.  If my .emacs file breaks with an emacs upgrade,
no harm is done to my files.  When a PCB upgrade messes with my current
layout, ...

The downside is, I do not get to use the new features in development,
and I do not participate in testing those.  And when all those new
feature are dumped at me eventually, I'll nee be very careful when to
upgrade.

Maybe, when I finished the current series of rather complex boards, I
may switch to track some git tree.  But do not even really know which
git tree I should track.

-- 
Stephan



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread kai-martin knaak
Markus Hitter wrote:

 - Get the interface, especially mouse button behaviour, 
 consistent between all parts of the suite.

yes, yes, yes!
And make the most important keyboard shortcuts compatible, too. 


 - Write a new tutorial. With a few pictures like before, 
 and without any asking for editing text files.

You've got a point here. It's been quite some time since I did the 
tutorial myself. But I still remember that the first part of it was a 
bit confusing and tedious. I think you are right. The tutorial is in 
need for a rewrite.


 I've learned about xgsch2pcb and pull just with the email
 cited above,

Well, pcb pull was added this summer. So this is a brand new feature 
and not very established among regular users. The utility xgsch2pcb on 
the other hand was initially labeled proof-of-concept by the developer. 
It proved pretty usable but still has its edges. For example, it does 
not play nice with hierarchical schematics.


 gEDA's GUI  
 can be brought on par with Eagle or KiCad easily, so there's no  
 reason to miss that opportunity.

The good news: There was a discussion on revamping the pcb GUI on Kthe 
list lately.

The bad news: I don't remember any of the established developers engage 
much in the discussion. Hopefully the new developers elan will suffice 
to get some of the proposed changes done and accepted by the 
established developers.

---)kaimartin(---
-- 
Kai-Martin Knaak
Öffentlicher PGP-Schlüssel:
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x6C0B9F53



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread Phillip Jones
 - Write a new tutorial. With a few pictures like before,
 and without any asking for editing text files.

 You've got a point here. It's been quite some time since I did the
 tutorial myself. But I still remember that the first part of it was a
 bit confusing and tedious. I think you are right. The tutorial is in
 need for a rewrite.


I've recently started using PCB and found the tutorial difficult to
follow and inaccurate at several steps. I thought I would go ahead and
update the wiki to help anyone else who followed the guide after me,
but unfortunately it seems that it is not possible to get an account
to edit the wiki. I emailed a request for an account (as indicated on
the wiki itself) and never received a reply.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread DJ Delorie

 I've recently started using PCB and found the tutorial difficult to
 follow and inaccurate at several steps.

Which one?  I've written a new one here:
http://www.delorie.com/pcb/docs/gs/


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems

2010-10-17 Thread kai-martin knaak
Phillip Jones wrote:

 I emailed a request for an account (as indicated on
 the wiki itself) and never received a reply.

Oh dear. This seems like a single point of failure in the system.
Haven't heard from Ales lately. On vacation, maybe?

---)kaimartin(---
-- 
Kai-Martin Knaak
Öffentlicher PGP-Schlüssel:
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x6C0B9F53



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-15 Thread joe tarantino
   ...and pcb is the only CAD program I know of, that does like this
   I've run across other PC layout tools which do this.  Mechanical CAD
   tools usually have (by default) Y+ pointing up, but for some reason PC
   design tools occasionally have Y+ facing down.  I don't remember any of
   these tools justifying their (less common) choice of convention
   however. :)
   Joe T

   On Wed, Oct 13, 2010 at 3:35 AM, Armin Faltl [1]armin.fa...@aon.at
   wrote:

   Andrew Poelstra wrote:

 On Tue, Oct 12, 2010 at 10:12:41PM +0200, Armin Faltl wrote:

 Btw. while being a different topic, how about getting rid of the
 lefthanded
 coordinate system, when all numeric computations have to be checked
 anyway? This should make the cs consistent with trigonometric
 functions.

 What does lefthanded coordinate system mean?

 It means, that positive coordinate axes can be generated as follows:
 looking from Z+ to the center X+ moves into Y+ by a clockwise
 rotation (for lefthand). Z+ is your extended thumb, then form your
 fingers to a hook;
 the finger tips point into the direction of rotation around the
 thumb.
 With cyclic permutation look along:
   Z+: X - Y
   X+: Y - Z
   Y+: Z - X
 A lefthanded coordnate system is the mirror image of a righthanded
 one,
 the later being the norm for mathematical formulations, esp. vector
 notation of rotation.
 E.g. in polar coordinates P = P(r, phi) the angle phi has to be
 measured
 counterclockwise from the X-axis to make the transformation to
 cartesian coordinates look like:
   P = P(x, y) = P(r*cos(phi), r*sin(phi))
 with X+ pointing right an Y+ pointing up (and Z+ pointing out of
 screen).
 This is a convention. One can argue, to define the the sense of
 rotation clockwise
 and have Y+ look downward, but this is against the mathematical
 standard
 and pcb is the only CAD program I know of, that does like this.
 It's incompatible with any CAM file format, plotter language, OpenGL
 etc.
 Many raster devices and -image formats are lefthanded, probably the
 reason, why pcb is.
 Sorry for (partly) repeating myself.

   ___
   geda-user mailing list
   [2]geda-u...@moria.seul.org
   [3]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

References

   1. mailto:armin.fa...@aon.at
   2. mailto:geda-user@moria.seul.org
   3. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-15 Thread Andrew Poelstra
On Fri, Oct 15, 2010 at 11:49:11AM -0700, joe tarantino wrote:
...and pcb is the only CAD program I know of, that does like this
I've run across other PC layout tools which do this.  Mechanical CAD
tools usually have (by default) Y+ pointing up, but for some reason PC
design tools occasionally have Y+ facing down.  I don't remember any of
these tools justifying their (less common) choice of convention
however. :)


The reason for it is that this is generally how drawing canvases work,
so from a programmer's perspective, it is simpler to have y pointing down.

I remember learning to draw function graphs in grade school, and being
surprised that y went up because I had used QBASIC for many years before
that.

Afterwards, I had to remember to put -y everywhere when using Qbasic as a
graphing calculator.


-- 
Andrew Poelstra
Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net
Web:   http://www.wpsoftware.net/andrew/



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-15 Thread Stefan Salewski
On Fri, 2010-10-15 at 11:54 -0700, Andrew Poelstra wrote:

 
 The reason for it is that this is generally how drawing canvases work,
 so from a programmer's perspective, it is simpler to have y pointing down.
 

WHY?

And of course, we had that discussion some months ago:

http://archives.seul.org/geda/user/Aug-2010/msg00406.html





___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-15 Thread Stefan Salewski
On Fri, 2010-10-15 at 23:15 +0200, Stefan Salewski wrote:
 On Fri, 2010-10-15 at 11:54 -0700, Andrew Poelstra wrote:
 
  
  The reason for it is that this is generally how drawing canvases work,
  so from a programmer's perspective, it is simpler to have y pointing down.
  
 
 WHY?
 
 And of course, we had that discussion some months ago:
 
 http://archives.seul.org/geda/user/Aug-2010/msg00406.html
 

For cairo two statements fix the default system:

CR.translate(0, y) # translate y==0 to bottom
CR.scale(1, -1)# flip y direction

May be similar for OpenGL.




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-13 Thread Armin Faltl

Andrew Poelstra wrote:

On Tue, Oct 12, 2010 at 10:12:41PM +0200, Armin Faltl wrote:
  

Btw. while being a different topic, how about getting rid of the lefthanded
coordinate system, when all numeric computations have to be checked
anyway? This should make the cs consistent with trigonometric functions.




What does lefthanded coordinate system mean?
  

It means, that positive coordinate axes can be generated as follows:
looking from Z+ to the center X+ moves into Y+ by a clockwise
rotation (for lefthand). Z+ is your extended thumb, then form your 
fingers to a hook;

the finger tips point into the direction of rotation around the thumb.
With cyclic permutation look along:
   Z+: X - Y
   X+: Y - Z
   Y+: Z - X
A lefthanded coordnate system is the mirror image of a righthanded one,
the later being the norm for mathematical formulations, esp. vector
notation of rotation.
E.g. in polar coordinates P = P(r, phi) the angle phi has to be measured
counterclockwise from the X-axis to make the transformation to
cartesian coordinates look like:
   P = P(x, y) = P(r*cos(phi), r*sin(phi))
with X+ pointing right an Y+ pointing up (and Z+ pointing out of screen).

This is a convention. One can argue, to define the the sense of rotation 
clockwise

and have Y+ look downward, but this is against the mathematical standard
and pcb is the only CAD program I know of, that does like this.
It's incompatible with any CAM file format, plotter language, OpenGL etc.
Many raster devices and -image formats are lefthanded, probably the
reason, why pcb is.

Sorry for (partly) repeating myself.



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: coordinate systems [was: pcb crooked traces]

2010-10-13 Thread Frank Bergmann

On 12.10.2010 22:37, Andrew Poelstra wrote:

What does lefthanded coordinate system mean?


http://en.wikipedia.org/wiki/Cartesian_coordinate_system#In_two_dimensions





___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user