public void zoom ( double startx , double starty , double width , double height ) { if ( debugZoom ) System . out . println ( "zoom " + startx + " " + starty + " " + width + " " + height + " " ) ; if ( ( width < 5 ) || ( height < 5 ) ) return ; zoom . push ( ) ; pix_x0 -= startx + width / 2 - pwidth / 2 ; pix_y0 -= starty + height / 2 - pheight / 2 ; zoom ( pwidth / width ) ; }
call this to zoom into a subset of the screen . startx starty are the upper left corner of the box in display coords width height the size of the box in display coords