I uploaded a new build, really final :), to the files section.

> OK, then may object that the coordinate system should be discrete in
> my view  as x/y always have integer values, so most points on the
> screen wouldn't have a coordinate. I think some 'floor' operation is
> applied here: the points inside (0,0) ~ (1,1) represented
> approximately as (0,0). Then, it looks like not much different from
> the second point of view. Yes, when mapping a point on the screen to
> the integer-based representing coordinate system. However, there is a
> big difference when mapping the representing coordinate (x,y) to a
> point on the screen: (0,0) goes to exactly 1 point in the first point
> of view, whereas to a fuzzy square in the second point of view.

I think I figured it out. It's because, ironically again:

"Precise in Theory, Ambiguous in Practice"

Consider nZoom=2,
and small rect (-5,-5) ~ (5,5)
and large rect (-10,-10) ~ (10,10)
(I'll use negative coordinate for convenience)

What we actually see is the point of center, i.e., (0,0) in the large
rect. Then, the corresponding point in the small rect is again (0,0)
which is (0,0) in the screen point. This is the trouble. (0,0) is
ambiguous pratically, as it can be a vertex of 4 different pixel squares: 
(-1,-1) ~ (0,0) | (0,-1) ~ (1,0) | (-1,0) ~ (0,1) | (0,0) ~ (1,1)

So, adding 1 to the width and to the height makes the small rectangle
consists of (-5,-5) ~ (6,6), so center of the small rectangle shifts
to the would-be (0.5, 0.5), i.e., it's only part of the pixel square
(0,0) ~ (1,1). Now, the ambiguity in practice is completely gone!

Sean





Attention: PowerPro's Web site has moved: http://www.ppro.org 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/power-pro/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to