← Back to team overview

kicad-developers team mailing list archive

Re: Sweet parser

 

Wayne,

I just made a commit that fixes some minor issues to a commit I made last
night, and I can now see the inheritance mechanism working really pretty well.

Today is a company holiday I was not aware of, so that gives me another day
to work on this stuff in an active mode.  My normal mode would be more
intermittent, or weekend centric, than what I can spend on it today.

I will make another commit very late this evening, and then take a less
active role for the remainder of the week, which could give you some time on it.

=================

Units:

My thinking is that we do not have units, but if you wanted to name them
they might be:

"pin intervals", "pin spaces", or "pin deltas", which means of course, the
standard minimum distance between two pins in the new EESCEMA.

A value of 1 pin delta is what you'd often see in the Sweet strings,
*between* pins, in either X or Y axes.


=================

Internal Units:

Do we want integers, floats, or doubles.  (Haven't looked at the GAL yet to
see what it likes.)  If integers, then we need some internal unit.

My suggestion there would be to use 1000 pin deltas.

This would give us the granularity to position within a 1/1000th of a normal
minimum pin delta.  And would give us the ability on the high end to go

4 billion (int32_t)  / 1000  = 1 million pins per X or Y axis.

This way we simply multiple the Sweet strings coordinates by 1000 as we
parse them into internal units.

10000 would also be reasonable, if you wanted to position something between
pins within 1/10000th of a pin delta.

What do folks think?

Dick




Follow ups

References