Setting origin of coordinates

When I start Pcbnew I got a drawing frame (I don’t know why, this is not schematic…)
and the (0;0) coord is on the top left, a bit out of the frame. Can I

  • turn off displaying the frame ?
  • move origin to bottom left (may move on the fly later) ?
  • change direction of y (advancing upward) ?
3 Likes

I’ve encountered also this problem. When placing grid origin only the grid moves, not the coördinate system. Does anyone have a suggestion ?

(1) I don’t know - I never had to do that
(2) No. You may define a local reference for various purposes, but the coordinate system and its origin remain unchanged.
(3) No. I don’t know of any CAD software which allows you to change the coordinate system like that. Why do you want to change that?

That behavior is almost universal for ECAD and 2D drawing software. Actually changing the coordinate system on demand invites all kinds of problems.

@cbernardo, I’ve asked this to be put on wishlist. Details are more clear there, please check it:

As novaktamas mention in the wishlist, i use it as reference for mechanical parts. Put the 0.0 at the front panel or so. By that it is easy to edit the component placement. I use PADS which can easily redefine the origin.

2 Likes

I have already used it that way: my board’s top left was at (0;0), but PCB swagged off from drawing frame…it is quite ugly (You see 50x50mm PCB with top left corner at (0;0) on attached jpg).
Frame should be removed, or coordinate system moving should be possible.

2 Likes

I agree it would be best if we could redefine the origin. This is very helpful when creating complicated board outlines from a mechanical drawing. The mechanical designer often establishes a single origin for all his/her dimensions. Setting your board origin the same makes it easy to get the board outline correct.

3 Likes

… open KiCAD, navigate to the layout editor and do as you wish… have no frame or a frame with the origin in the centre, frame with the origin at the left bottom corner… all possible.

No need to nag the Dev’s about this. Really.

The only thing you have to live with is that the alignment of the origin is FIXED to the paper you chose as background… so if you are going to print your layout it won’t sit on the paper if you insist on having the origin of your frame/drawing/layout in the centre as it’s fixed to the upper left corner of the paper.

And if you want to draw board outlines to some origin point learn how to use the second set of coordinates in the status bar with the [space] key on you keyboard.
Also good to use the grid and tell your mechanical engineer that you can work to an accuracy of 0.01 mm or 0.1 mils. It’s really no rocket science.
And while you’re talking to the engineer tell him that you can import dxf drawings to be used as outlines/etc. so you can reduce the workload on your end to the one of importing a dxf file.

11 Likes

Joan, million thanks!! I’ve been mad at the drawing frame. The schematic is a “drawing”: it’s fine with title block and double frame with letters etc, but PCB shouldn’t have a frame: it has its own outline. I’ve never noticed the top right icon…“Wtf is PI_editor? I surely don’t need it!!” :joy:

3 Likes

Some more questions come up:
How to edit the default template (where it is). I started PI editor, got a default layout, customized it, then saved it to “C:\Program Files\Kicad\share\kicad\template\pagelayout_default.kicad_wks” (it was my guess…)
Then I started a new PCB, and got the original frame, not the new one.
So

  • where does PI editor got its default layout from?
  • where does a new pcb_new design got its layout from?
  • is it possible to change frame in an existing pcb (out of manual editing of kicad_pcb)?

You answered yourself:

Looks like EEschema and PCBnew use the same layout… if you create a new project you can chose by clicking on the “Create Project from Template” Button (blue book with white paper over it)… if you don’t the default is being taken.

Check the .pro file in the project folder… there is a line in there for EEschema like this:

PageLayoutDescrFile=

Mines empty, cause I don’t care either way…
Can’t see a similar line for PCBnew in that file, thus I assume you change one, you change both.

Conclusio - just making the origin moveable by the user wont change the underlying “problem” that KiCAD PCBnew & EEschema are designed on top of a sheet of paper… and I guess this stuff is pretty hard wired into the whole code, so no easy task to modify.
But you’d need to ask someone more knowledgeable than me about that…

1 Like

Sorry, Joan, all you said is not working for me.

The default layout file of

was my first guess, but that didn’t work: I edited this file with PI editor (also tried editing directly with text editor lately), then I created a new project, and it didn’t get the altered outlook neither in schema nor in pcb_new.

There is no PageLayoutDescrFile= item is my .pro file.
If I add “PageLayoutDescrFile=” lines (tried all sections), still got the original layout.

If anyone knows how it is working, please let us know. (You are right, I could find the answers in source, but it is not that easy for someone not knowing anything of the structure.)

1 Like

Sorry… as I said, I don’t need more than the pre-set stuff atm.

I just modified the standard page layout and did as I told you myself and you’re right… the project template is something else… it must relate to .pro templates, not to .kicad_wks templates.

But… I then went on to change my page template anyway:
Open EEschema or PcbNew, go to menu File>Page Settings… in the new dialog navigate to last row at bottom/right, hit [Browse] button and select the page layout file you want.
Voila :smile:
Once you select a new layout the .pro file will be saved and populate the field I mentioned for either eeschma or pcbnew section in that .pro file.

Now, when you did go through the setup of a page layout with the origin at the centre of the frame I’d like to have a look at it - really curious. As I need to print my stuff I probably can’t use it though…

I could set it by giving weird margin values. (A/4 page x;y size=297;210mm, so I added 149.5;105 mm to margins.)
My goal is only not seeing the --fuc!$#! disturbing-- double drawing frame and navigating letters/numbers:

I drew lightgreen arrows to annoying red frame lines and numbers on my even tangled board.

Now I have a decent frame at 0;0…which is the border of my (usually simple rectangular) board:

I had a similar issue today with a complex PCB outline. I really needed 0,0 of the PCB design to be in a fixed point inside the board, at least temporarily while placing part. I followed these instructions to make a blank template, and couldn’t get it to work. Even though I thought the template was blank, it would always show the default title block. Finally, I discovered something - I loaded the default template, and started deleting items one at a time. When I got down to one last item, and deleted it, suddenly the template was repopulated again with the full title block! So I did one level of undo, left one remaining item in the “blank” default (it was a short line in the bottom right corner of the page outside my area of interest). Using this new “blank” template, the upper left corner of my PCB layout is now empty, and I proceeded with parts placement. Once I get all the tough stuff placed, and no longer need the convenience of this grid, I’ll move everything back to the “center” of a page and re-enable the title block template accordingly.

I’m running version 4.0.2-stable, release build
wxWidgets 3.0.2 Unicode and Boost 1.57.0
Mac OS X (Darwin 15.4.0 x86_64) 64 bit
(I’m new to Mac OS, why can’t you copy and paste the “Help About” text, I wonder)

1 Like

Vision:
Several tens of code-lines, add/subtract level math, users are happy and dev’s are free from that nag.


System calculations and placements are still done in abs coordinates, those are just optional visual feedback options for designer.

5 Likes

@Sapri_Marathra
I like this idea to be able to change the coordinate system in various ways as it is convenient for the user.
Sometimes it is necessary to place several mechanical or electronic compontents at certain absolut (not relative) positions. Here, the origin is in the top left corner. Very common in other CAD or drawing programs is to have the origin in the bottom left.
It’s “just” a simple addition/subtraction, however it is REALLY ANNOYING to do such coordinate transformation manually and to have to recalculate every coordinate for each component.

1 Like

I don’t understand all the complaining about how “annoying” the grid origin is. I never even pay any attention to it.

A PCB layout is very much a drawing, and as such should at least have a title block. If the border bothers you then you should probably be using a larger page size anyway. I would agree that the default title block is a little larger than it needs to be but I just create my own page layout file with a smaller title block.

1 Like

[quote=“1.21Gigawatts, post:20, topic:520”]
. . . . A PCB layout is very much a drawing, and as such should at least have a title block. If the border bothers you then you should probably be using a larger page size anyway . . . . [/quote]
Yes. The INFORMATION contained in the title block certainly needs to be retained, as well as its association with a particular PCB layout. If your organization is run for the benefit of machines then that information doesn’t need to be presented in a title block, but if its run for the benefit of people, then a title block is as good a place as any to keep it.

Dale