*/
public abstract class PixelBuffer {
- /** Draw the region of source within s onto the region d on this PixelBuffer, scaling as needed */
- public abstract void drawPicture(Picture source, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2);
+ /** draw the picture at (dx1, dy1), cropping to (cx1, cy1, cx2, cy2) */
+ public abstract void drawPicture(Picture source, int dx1, int dy1, int cx1, int cy1, int cx2, int cy2);
/** fill a trapezoid whose top and bottom edges are horizontal */
public abstract void fillTrapezoid(int x1, int x2, int y1, int x3, int x4, int y2, int color);
* channels of the Picture in the process. This method may assume that the RGB channels of the image are all zero IFF it
* restores this invariant before returning.
*/
- public abstract void drawPictureAlphaOnly(Picture source, int dx1, int dy1, int dx2, int dy2,
- int sx1, int sy1, int sx2, int sy2, int rgb);
+ public abstract void drawPictureAlphaOnly(Picture source, int dx1, int dy1, int cx1, int cy1, int cx2, int cy2, int rgb);
// FIXME: we want floats (inter-pixel spacing) for antialiasing, but this hoses the fastpath line drawing... argh!
/** draws a line of width <tt>w</tt>; note that the coordinates here are <i>post-transform</i> */