@Override public Surface drawImage(Image image, float dx, float dy) { canvas.drawImage(image, dx, dy); return this; }
@Override public Surface drawImage(Image image, float dx, float dy, float dw, float dh) { canvas.drawImage(image, dx, dy, dw, dh); return this; }
@Override public Surface drawImage(Image image, float dx, float dy, float dw, float dh, float sx, float sy, float sw, float sh) { canvas.drawImage(image, dx, dy, dw, dh, sx, sy, sw, sh); return this; }
public void draw(Canvas canvas, Image pea) { canvas.setFillColor(0xFF99CCFF); canvas.fillRect(0, 0, 100, 100); // draw an image normally, scaled, cropped, cropped and scaled, etc. float half = 37/2f; canvas.drawImage(pea, 10, 10); canvas.drawImage(pea, 55, 10, 37, 37, half, half, half, half); canvas.drawImage(pea, 10, 55, 37, 37, half, 0, half, half); canvas.drawImage(pea, 55, 55, 37, 37, half, half/2, half, half); } });
public void draw(Canvas canvas, Image orange) { canvas.setFillColor(0xFF99CCFF); canvas.fillRect(0, 0, 100, 100); // draw an image normally, scaled, cropped, cropped and scaled, etc. float half = 37/2f; canvas.drawImage(orange, 10, 10); canvas.drawImage(orange, 55, 10, 37, 37, half, half, half, half); canvas.drawImage(orange, 10, 55, 37, 37, half, 0, half, half); canvas.drawImage(orange, 55, 55, 37, 37, half, half/2, half, half); } });
split.canvas().drawImage(orange.subImage(0, 0, phw, phh), phw, phh); split.canvas().drawImage(orange.subImage(phw, 0, phw, phh), 0, phh); split.canvas().drawImage(orange.subImage(0, phh, phw, phh), phw, 0); split.canvas().drawImage(orange.subImage(phw, phh, phw, phh), 0, 0); addTest(140, 10, graphics().createImageLayer(split), "draw subimg into Canvas", 80);
@Override public void paint(Canvas canvas, float parentAlpha) { if (!visible() || img == null || !img.isReady()) return; canvas.save(); canvas.setAlpha(parentAlpha * alpha()); transform(canvas); float width = width(), height = height(); boolean repX = img.repeatX(), repY = img.repeatY(); if (repX || repY) { if (pattern == null || repX != patternRepeatX || repY != patternRepeatY) { patternRepeatX = repX; patternRepeatY = repY; pattern = img.toPattern(); } canvas.setFillPattern(pattern); float xScale = repX ? 1 : width / img.width(), yScale = repY ? 1 : height / img.height(); canvas.scale(xScale, yScale); canvas.fillRect(0, 0, width / xScale, height / yScale); } else { canvas.drawImage(img, 0, 0, width, height); } canvas.restore(); } }
@Override public void onSuccess(Image image) { // once the image loads, create our layers imageLayer1 = graphics().createImageLayer(image); SurfaceImage surface1 = graphics().createSurface(image.width(), image.height()); surface1.surface().drawImage(image, 0, 0); surfaceLayer1 = graphics().createImageLayer(surface1); CanvasImage canvas1 = graphics().createImage(image.width(), image.height()); canvas1.canvas().drawImage(image, 0, 0); canvasLayer1 = graphics().createImageLayer(canvas1); imageLayer2 = graphics().createImageLayer(image); SurfaceImage surface2 = graphics().createSurface(image.width(), image.height()); surface2.surface().drawImage(image, 0, 0); surfaceLayer2 = graphics().createImageLayer(surface2); CanvasImage canvas2 = graphics().createImage(image.width(), image.height()); canvas2.canvas().drawImage(image, 0, 0); canvasLayer2 = graphics().createImageLayer(canvas2); // add layers to the rootLayer rootLayer.addAt(imageLayer1, offset, offset); rootLayer.addAt(surfaceLayer1, offset + width, offset); rootLayer.addAt(canvasLayer1, offset + 2 * width, offset); rootLayer.addAt(imageLayer2, offset, offset + 2 * height); rootLayer.addAt(surfaceLayer2, offset + width, offset + 2 * height); rootLayer.addAt(canvasLayer2, offset + 2 * width, offset + 2 * height); }
surfaceLayer1.surface().drawImage(image, 0, 0); CanvasImage canvas1 = graphics().createImage(image.width(), image.height()); canvas1.canvas().drawImage(image, 0, 0); canvasLayer1 = graphics().createImageLayer(canvas1); imageLayer2 = graphics().createImageLayer(image); surfaceLayer2.surface().drawImage(image, 0, 0); CanvasImage canvas2 = graphics().createImage(image.width(), image.height()); canvas2.canvas().drawImage(image, 0, 0); canvasLayer2 = graphics().createImageLayer(canvas2); CanvasImage canvas3 = graphics().createImage(image.width(), image.height()); canvas3.canvas().drawImage(image, 0, 0); canvasLayer3 = graphics().createImageLayer(canvas3); canvasLayer3.setAlpha(0.5f); CanvasImage canvas4 = graphics().createImage(image.width(), image.height()); canvas4.canvas().drawImage(image, 0, 0); canvasLayer4 = graphics().createImageLayer(canvas4); canvasLayer4.setAlpha(0.5f);
@Override public void done(Image image) { // once the image loads, create our layers imageLayer1 = graphics().createImageLayer(image); surfaceLayer1 = graphics().createSurfaceLayer(image.width(), image.height()); surfaceLayer1.surface().drawImage(image, 0, 0); CanvasImage canvas1 = graphics().createImage(image.width(), image.height()); canvas1.canvas().drawImage(image, 0, 0); canvasLayer1 = graphics().createImageLayer(canvas1); imageLayer2 = graphics().createImageLayer(image); surfaceLayer2 = graphics().createSurfaceLayer(image.width(), image.height()); surfaceLayer2.surface().drawImage(image, 0, 0); CanvasImage canvas2 = graphics().createImage(image.width(), image.height()); canvas2.canvas().drawImage(image, 0, 0); canvasLayer2 = graphics().createImageLayer(canvas2); // add layers to the rootLayer imageLayer1.transform().translate(offset, offset); rootLayer.add(imageLayer1); surfaceLayer1.transform().translate(offset + width, offset); rootLayer.add(surfaceLayer1); canvasLayer1.transform().translate(offset + 2 * width, offset); rootLayer.add(canvasLayer1); imageLayer2.transform().translate(offset, offset + 2 * height); rootLayer.add(imageLayer2); surfaceLayer2.transform().translate(offset + width, offset + 2 * height); rootLayer.add(surfaceLayer2); canvasLayer2.transform().translate(offset + 2 * width, offset + 2 * height); rootLayer.add(canvasLayer2); }
canvas1.canvas().drawImage(image, 0, 0); groupLayer.addAt(graphics().createImageLayer(canvas1).setAlpha(0.5f), x, offset); addDescrip("canvas a=1\nimg layer a=0.5", x, offset + height, width); canvas2.canvas().setAlpha(0.5f).drawImage(image, 0, 0); groupLayer.addAt(graphics().createImageLayer(canvas2), x, offset); addDescrip("canvas a=0.5\nimg layer a=1", x, offset + height, width); canvas1b.canvas().drawImage(image, 0, 0); groupLayer.addAt(graphics().createImageLayer(canvas1b).setAlpha(0.5f), x, offset + 2 * height); canvas2b.canvas().setAlpha(0.5f).drawImage(image, 0, 0); groupLayer.addAt(graphics().createImageLayer(canvas2b), x, offset + 2 * height);
image.canvas().setFillColor(0xFF99CCFF); image.canvas().fillRect(0, 0, image.width(), image.height()); image.canvas().drawImage(orange, 0, 0); ImageLayer rotlayer = graphics().createImageLayer(image); rotlayer.setShader(rotShader);