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=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=xbEXGKXxtrWtVYWxxZZ98bfzGiu9iOmrnCb/26APBEU=; b=u+hgE4QiXNopfRJZIUw9B2K0Ad4cYf0R2l0cf7ezXLdViP7BueLogZmoOK/LhL9T62 hIg70qgqhVQBDtA5Vbb0mo4ODfYQ3A7hqZnz4dqWVeSjWaRdcHO8jgxdx9jRdSdo9sU3 Vnz/pxqij6ESqGbz6X39cfdZ+3HE8vOoLHGBp/+fc0Y0KSk1ZUabmNqB9O5QsV9vb3J+ JZmMr424P/zCarn6xtrC5+7OmeNbFR8Tb0r9jAph/IWGjFzAQWMIajR+dGFlnyhqowdX aDtlPD/gDR/oygjPzTVr6BQ16bcxm2d5ajClKr//Q7TUV8n5APKcHUcPnyWeZBl53vUz VPwA== MIME-Version: 1.0 X-Received: by 10.112.126.69 with SMTP id mw5mr2785340lbb.111.1439847503244; Mon, 17 Aug 2015 14:38:23 -0700 (PDT) In-Reply-To: <201508171557.t7HFvFka015445@envy.delorie.com> References: <201508160552 DOT t7G5qBPo025284 AT envy DOT delorie DOT com> <201508170550 DOT t7H5oW1T021206 AT envy DOT delorie DOT com> <201508171557 DOT t7HFvFka015445 AT envy DOT delorie DOT com> Date: Mon, 17 Aug 2015 15:38:23 -0600 Message-ID: Subject: Re: [geda-user] PCB footprints - what is the best way to change origin location on existing footprint? From: "Dave Williams (dave DOT williams DOT lists AT gmail DOT com) [via geda-user AT delorie DOT com]" To: geda-user AT delorie DOT com Content-Type: multipart/alternative; boundary=001a11c3781af6337b051d889e05 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 --001a11c3781af6337b051d889e05 Content-Type: text/plain; charset=UTF-8 A lot of this doesn't make sense. I'm hearing 2 things. 1) If the 0,0 origin coordinates are an absolute position from the PCB origin then wouldn't the component origin be in the upper left corner of the PCB? But that doesn't happen when you import schematics to the PCB. The diamond shape origin is in the center of this 805 component - no matter where this component is randomly placed onto the PCB grid. The component origin cannot be linked to absolute PCB coordinates. 2) I thought I heard that the origin written to the footprint file, happens to be the absolute position of the cursor when captured into the buffer. How and why would anyone create parts at 0,0 in the extreme upper left corner of a PCB? I am guessing that the origin coordinates written to the footprint file, are related to relative coordinates based on a local origin and the cursor position. If you Ctrl-M and create a local origin, then position the cursor over the cross hairs - then the origin will be captured and written to the buffer as 0,0. That is my guess (if I can find some time - I'll test this theory). If you don't have these things co-incident - then you will have a non-zero value for the origin - and these numbers represent an offset. BUT - and this is the kicker - it does not seem to matter if you have an non-zero offset in your footprint file. I found this 0805.fp file in my /usr/local/share/pcb/pcblib-newlib/geda Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "0805" 0 0 -3150 -3150 0 100 ""] Which has the origin at 0.0. I don't see any difference when I use this footprint in my layout or if I use this 805.fp footprint I referred to in an earlier post. Element["" "Standard SMT resistor, capacitor etc" "" "0805" 2850.00mil 2600.00mil -31.50mil -31.50mil 0 100 ""] I can place and work with either footprint. And when I search the packaged libraries, I am finding some footprints with 0.0 origin values and some with non-zero/offset values. Dave On Mon, Aug 17, 2015 at 9:57 AM, DJ Delorie wrote: > > > My understanding is the origin is located at > > (2850.00mil,2600.00mil). And the reference designator is positioned > > at (-31.50mil,-31.50mil) relative to the origin. How does one > > interpret these (2850.00mil,2600.00mil) numbers for the origin? > > The standard library should have (0,0) there, because that coordinate > in the Element[] field is its location relative to the PCB itself. > (If ome of them doesn't, it may affect where the element is placed > when you manually place it.) > > I.e. that element is at (2850.00mil,2600.00mil) *on the pcb*. > > Thus, pcb will position that element such that its mark falls on > (2850.00mil,2600.00mil). > --001a11c3781af6337b051d889e05 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

A lo= t of this doesn't make sense. I'm hearing 2 things.

1) If the 0,0 origin coordinates are an absolute position from t= he PCB origin
then wouldn't the component origin be in t= he upper left corner of the PCB? But that
doesn't happen when = you import schematics to the PCB.=C2=A0 The diamond shape origin is
in = the center of this 805 component - no matter where this component is random= ly placed
onto the PCB grid.=C2=A0 The component origin cannot be= linked to absolute PCB coordinates.

2) I thought I hear= d that the origin written to the footprint file, happens to be the absolute= position
of the cursor when captured into the buffer.=C2=A0 How and wh= y would anyone create parts at 0,0 in the extreme
upper left corner of = a PCB?=C2=A0 I am guessing that the origin coordinates written to the footp= rint file, are related to
relative coordinates based on a local origin = and the cursor position.=C2=A0 If you Ctrl-M and create a local origin, the= n
position the cursor over the cross hairs - then the origin will be ca= ptured and written to the buffer as 0,0.=C2=A0 That
is my guess (if I c= an find some time - I'll test this theory).=C2=A0 If you don't have= these things co-incident - then you
will have a non-zero value for the= origin - and these numbers represent an offset.=C2=A0

BUT - and th= is is the kicker -=C2=A0 it does not seem to matter if you have an non-zero= offset in your footprint file.

I found this 0805.fp file= in my /usr/local/share/pcb/pcblib-newlib/geda

Element[0x00000= 000 "Standard SMT resistor, capacitor etc" "" "080= 5" 0 0 -3150 -3150 0 100 ""]

Which has the orig= in at 0.0.=C2=A0 I don't see any difference when I use this footprint i= n my layout or if I use this 805.fp footprint
I referred to = in an earlier post.

Element["" "Standard S= MT resistor, capacitor etc" "" "0805" 2850.00mil 2= 600.00mil -31.50mil -31.50mil 0 100 ""]

I can p= lace and work with either footprint. And when I search the packaged librari= es, I am finding some footprints with 0.0 origin
values and s= ome with non-zero/offset values.=C2=A0

Dave

On Mon= , Aug 17, 2015 at 9:57 AM, DJ Delorie <dj AT delorie DOT com> wrote:

> My understanding is the origin is located at
> (2850.00mil,2600.00mil).=C2=A0 And the reference designator is positio= ned
> at (-31.50mil,-31.50mil) relative to the origin.=C2=A0 How does one > interpret these (2850.00mil,2600.00mil) numbers for the origin?

The standard library should have (0,0) there, because that coordinat= e
in the Element[] field is its location relative to the PCB itself.
(If ome of them doesn't, it may affect where the element is placed
when you manually place it.)

I.e. that element is at (2850.00mil,2600.00mil) *on the pcb*.

Thus, pcb will position that element such that its mark falls on
(2850.00mil,2600.00mil).

--001a11c3781af6337b051d889e05--