Mail Archives: geda-user/2015/12/15/18:37:08
On Tue, Dec 15, 2015 at 06:09:00PM -0500, DJ Delorie wrote:
>
> PCB does support width!=height arcs, for example, the gerber HID has
> special code for drawing them. Why are we removing support for them?
>
> I note you use // for comments. If we're going this route, we should
> update configure to test for a C99-compliant compiler.
>
> arcs with square ends - yeah, we can probably ignore those. Although
> it's better to keep the arcs (and drop the square end flag) than drop
> the arc completely.
>
> In many cases in the geometry module, you use Vec where you mean
> Point. Granted, the data is the same, but the meanings should be
> clear to the user, since it's part of the "documentation".
>
> I think the debug markers should either be removed for now, or
> "completed" - added to all HIDs and documented with some
> programmer-specific documentation.
>
> has_flag() shouldn't be needed as the parser converts strings on read.
>
> The right way to ignore square flags on arcs is to update the flag
> parsing table so that it's not in the supported flags... oh wait, it's
> already ignored there.
>
> Rather than check for zero-sized arcs, check for non-positive-sized arcs.
>
> Foo foo foooo, twice. With an abort, no less.
>
> "double" type isn't precise enough to hold a pcb coord - "double" is
> 53 bits, but Coord is 64 bits. Does this matter?
Not in practice, 2^53 nm is around 9000 km.
Or the other way around, even on a very large board (~1m), the LSB
represents a distance 6 to 7 orders of magnitude smaller than the
typical interatomic distance in solids.
BTW, slight pedantic correction, Coord is signed and should rather be
considered as 63 bit, or 31 bit on 32 bit machines on which I use it
quite often.
Gabriel
- Raw text -