gzz-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gzz] 10th & 11th (jvk)


From: Janne Kujala
Subject: Re: [Gzz] 10th & 11th (jvk)
Date: Thu, 12 Sep 2002 11:07:28 +0300
User-agent: Mutt/1.2.5i

On Wed, Sep 11, 2002 at 06:24:56PM +0300, Tuomas Lukka wrote:
> > Fisheye parameters: 
> >     cs1: paper-to-vertex coordinate mapping
> >     cs2: bulge-to-vertex coordinate mapping
> >     x0,y0,x1,y1: 
> >             the region of the paper (in paper coords) 
> >             that is drawn
> > 
> > Are these ok?
> 
> These need to be adjusted a little: when I increase the size of the bulge,
> the paper grows too much; the outer coordinate system should define
> an approximate bounding box and the whole paper shrunk to better fit
> there with the bulge. 

If I would do just that, the maximum magnification would actually 
decrease when the bulge size is increased, because currently,
the magnification factor at center of the bulge is always 3.
The maximum magnification needs to be constant as a function 
of scale for the bulging to be scale invariant.

Perhaps we should use the z-coordinate of the cs2 origin for
controlling magnification (how can I specify it from jython?).

> This is because with the buoy view, we need some control on where the
> paper actually lies. How about something like "90% of the paper area
> will be inside the unit circle (not square) of cs1"?
> 
> This is a little more difficult and should maybe be implemented in the Java
> side.

I would like the bulging to be position invariant in the sense 
that the position of the borders should not affect how the
inside is drawn.
 
> Another thing is that it should be EASY to create an interpolation from a 
> bulged
> state into a completely non-bulged state: what's the coordinate system when
> there's no bulge?

The bulge lives approximately inside the unit circle of cs2:
(plot of modulated vertex distance from bulge origin and it's
derivative, which is the magnification factor)

        a=2
        eps=1E-5                   
        r(x) = x*(1+a/(1+x*x))      
        plot [-5:5] r(x),(r(x+eps)-r(x-eps))/(2*eps)

You can get completely non-bulged state by setting the basis 
axes of cs2 to zero, shrinking the bulge into a point.
In that state, the paper region specified by x0,y0,x1,y1
is drawn into the rectangle specified by x0,y0,x1,y1 transformed 
by cs1. 

        jvk




reply via email to

[Prev in Thread] Current Thread [Next in Thread]