[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [femm] zoomier
Dave,
I think you missed the point here (or I did).
Say you want to set a very small air gap
let's say 0.001".
Now you design it with 0.001" resolution
or even smaller. If you try to zoom in
to get a 0.001" grid to fill the screen
with just 4-6 points, you can't do it.
The zoom factor stops long before that.
If you use the window zoom and stretch a
box around a small region it just ignores
it and reorients the screen with no zoom
at all. Where does that limit come from?
It seems that more zoom of the screen drawing
should be possible....or maybe not?
If you have 15 decimal places of exponent
that is a lot of resolution and the screen
should not have much to do with it.
Dave Squires
David Meeker wrote:
Boyd Evans wrote:
I am using femm to calculate forces on relatively small features and have
found that I can't always zoom in as close as I need to. This is
important
when creating geometry, applying properties, and when selecting areas for
results. I really enjoy the software otherwise.
Thanks,
Boyd
The reason that there is a limit on the zoom is that the program uses
the "built-in" line drawing routines in Visual C++. (e.g. MoveTo,
LineTo, etc.). The arguments to these functions are the end points of
the lines in the problem's geometry in screen coordinates. Coordinates
that are off-screen can be entered as arguments. If some part of the
line passes through the viewable screen, that part is supposed to be
plottted. These functions take 32-bit integers as the arguments for
coordinates, but they seem to go berzerk if the coordinates sent to the
routine are actually bigger than 16 bit values--go figure. To keep the
display well-behaved, I've made the program limit the zoom so that none
of the geometry ends up with screen coordinates larger than +-2^15. I
suppose this was the lazy man's way to "fix" the problem.
I may be missing some obvious fix here--it wouldn't be the first time.
Otherwise, it seems like one would have to write wrappers for the CDC
plotting routines so that long lines and overly large objects get
truncated before an attempt is made at plotting them.
Dave.