[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-dev: pinlabel x-offset adjustment is more than 50 points
Hi Timur,
I really don't know if this could be called a bug.
Line's width is also taked into account when calculating pin bounds.
This is due to libgeda/src/o_line_basic.c , world_get_line_bounds
function:
------ begin code snip
/* This isn't strictly correct, but a 1st order approximation */
*left -= halfwidth;
*top -= halfwidth;
*right += halfwidth;
*bottom += halfwidth;
------- end code snip
As the comment says, this isn't strictly correct. When you draw a
horizontal line/pin on the screen, it's true that top and bottom bounds
should be enlarged by line's halfwidth, and you see it on the screen.
However, x bounds should not.
Autoplacing attrib code relies on object bounds, so attributes should be
shifted by (-50,0), taking the bound as the reference point.
For example:
- You draw a pin between (300,100) and (500,100).
- Pin's x bounds are x=295 and x=505 due to line's width (as coded).
- Attribute should be shifted by (-50,0), taking the left side as the
reference point (x=295).
- Attribute position would be 245 (=295-50).
Hope this helps,
Carlos
El dom, 03-02-2008 a las 22:18 +0200, Timur Aydin escribió:
> Hi,
>
> According to the default-position-of-text-attributes list in
> default-attrib-positions.scm, when a pin is placed to the right side of
> the symbol box, the pinlabel attribute should be shifted by (-50, 0)
> points. However, after placing the pin, I am seeing that the actual
> shift is (-55, 0). I am wondering where the extra 5 points is coming
> from. I don't know if this is by design or if this is a bug, so I
> wanted to ask first. To duplicate:
>
> - Create a new symbol file:
>
> $ gschem xxx.sym
>
> - Place an outline box
> - Place a pin to the right side of the box
> - Set the snap grid spacing to 5 and zoom in to the pinlabel attribute.
> - Confirm that the attribute is 55 points to the left of the pin.
>
_______________________________________________
geda-dev mailing list
geda-dev@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev