Package playn.core

Examples of playn.core.ImageLayer


        for (int ii = 0; ii < IMG_COUNT; ii++) {
            CanvasImage image = graphics().createImage(width, IMG_HEIGHT);
            StringBuffer text = new StringBuffer();
            for (int tt = 0; tt < 25; tt++) text.append(ii+1);
            StyledText.span(text.toString(), TEXT).render(image.canvas(), 0, 0);
            ImageLayer layer = graphics().createImageLayer(image);
            _group.addAt(layer, 0, y);
            y += layer.scaledHeight();
        }

        return null;
    }
View Full Code Here


    @Override protected Group createIface () {
        // demo a repeating animation
        CanvasImage image = graphics().createImage(100, 100);
        image.canvas().setFillColor(0xFFFFCC99).fillCircle(50, 50, 50);
        ImageLayer circle = graphics().createImageLayer(image);

        float width = graphics().width();
        anim.addAt(layer, circle, 50, 100).then().
            repeat(circle).tweenX(circle).to(width-150).in(1000).easeInOut().then().
            tweenX(circle).to(50).in(1000).easeInOut();

        // demo the shake animation
        final ImageLayer click = StyledText.span("Click to Shake", STYLE).toLayer();
        click.addListener(new Pointer.Adapter() {
            @Override public void onPointerStart (Pointer.Event event) {
                if (_shaker != null) _shaker.complete();
                else _shaker = anim.shake(click).bounds(-3, 3, -3, 0).cycleTime(25, 25).in(1000).
                         then().action(_clear).handle();
            }
            protected final Runnable _clear = new Runnable() {
                public void run () { _shaker = null; }};
            protected Animation.Handle _shaker;
        });
        layer.addAt(click, (width-click.width())/2, 275);

        // demo animation groups
        CanvasImage ball = graphics().createImage(40, 40);
        ball.canvas().setFillColor(0xFF99CCFF).fillCircle(20, 20, 20);
        ImageLayer[] balls = new ImageLayer[6];
        for (int ii = 0; ii < balls.length; ii++) {
            layer.addAt(balls[ii] = graphics().createImageLayer(ball), 170+ii*50, 350);
        }
        anim.repeat(layer).add(dropBalls(balls, 0, 1)).then().
            add(dropBalls(balls, 1, 2)).then().
            add(dropBalls(balls, 3, 3));

        // test barrier delay
        CanvasImage sqimg = graphics().createImage(50, 50);
        sqimg.canvas().setFillColor(0xFF99CCFF).fillRect(0, 0, 50, 50);
        final ImageLayer square = graphics().createImageLayer(sqimg);
        square.setOrigin(25, 25);
        layer.addAt(square, 50, 300);
        square.addListener(new Pointer.Adapter() {
            @Override public void onPointerStart (Pointer.Event event) {
                square.setInteractive(false);
                _banim.tweenXY(square).to(50, 350);
                _banim.delay(250).then().tweenRotation(square).to(FloatMath.PI).in(500);
                _banim.addBarrier(1000);
                _banim.tweenXY(square).to(50, 300);
                _banim.delay(250).then().tweenRotation(square).to(0).in(500);
                _banim.addBarrier();
                _banim.action(new Runnable() {
                    public void run () { square.setInteractive(true); }
                });
            }
        });

        return null;
View Full Code Here

    protected Animation dropBalls (ImageLayer[] balls, int offset, int count) {
        float startY = 350;
        AnimGroup group = new AnimGroup();
        for (int ii = 0; ii < count; ii++) {
            ImageLayer ball = balls[ii+offset];
            group.tweenY(ball).to(startY+100).in(1000).easeIn().then().
                tweenY(ball).to(startY).in(1000).easeOut();
        }
        return group.toAnim();
    }
View Full Code Here

            for (int ii = 0, ll = gl.size(); ii < ll; ii++) {
                capture(gl.get(ii), canvas, nalpha);
            }

        } else if (layer instanceof ImageLayer) {
            ImageLayer il = (ImageLayer)layer;
            canvas.setAlpha(nalpha);
            canvas.drawImage(il.image(), 0, 0);
        } else if (layer instanceof ImmediateLayer) {
            ImmediateLayer il = (ImmediateLayer)layer;
            il.renderer().render(new CanvasSurface(canvas.setAlpha(nalpha)));
        }

        canvas.restore();
    }
View Full Code Here

            image.canvas().fillRoundRect(_borderWidth, _borderWidth, iwidth, iheight, iradius);
        } else {
            image.canvas().setFillColor(_bgColor);
            image.canvas().fillRoundRect(0, 0, size.width(), size.height(), _radius);
        }
        ImageLayer layer = graphics().createImageLayer(image);
        if (alpha != null) layer.setAlpha(alpha);
        return new LayerInstance(size, layer);
    }
View Full Code Here

    public ImageBackground (Image image) {
        _image = image;
    }

    @Override protected Instance instantiate (IDimension size) {
        ImageLayer layer = PlayN.graphics().createImageLayer(_image);
        if (alpha != null) layer.setAlpha(alpha);
        layer.setSize(size.width(), size.height());
        return new LayerInstance(size, layer);
    }
View Full Code Here

            @Override public boolean onVisit (String parentLayer, Instance instance, int depth) {
                String instanceDesc;
                if (instance instanceof Movie) {
                    instanceDesc = ((Movie) instance).symbol().name();
                } else if (instance instanceof Texture) {
                    ImageLayer tLayer = ((Texture) instance).layer();
                    instanceDesc = "Texture (" + tLayer.width() + " x " + tLayer.height() + ")";
                    if (tLayer.destroyed()) {
                        instanceDesc += " (DESTROYED)";
                    }
                } else if (instance != null) {
                    instanceDesc = instance.toString();
                } else {
View Full Code Here

        });
    }

    protected Layer createTiledLayer (Image image, float width, float height) {
        image.setRepeat(true, true);
        ImageLayer layer = graphics().createImageLayer(image);
        if (alpha != null) layer.setAlpha(alpha);
        return layer;
    }
View Full Code Here

    /** Ensures that the canvas image is at least the specified dimensions and cleared to all
     * transparent pixels. Also creates and adds the image layer to the parent layer if
     * needed. */
    public void prepare (float width, float height) {
        // recreate our canvas if we need more room than we have (TODO: should we ever shrink it?)
        ImageLayer layer = _layer.get();
        if (_image == null || _image.width() < width || _image.height() < height) {
            _image = PlayN.graphics().createImage(width, height);
            if (layer != null) layer.setImage(_image);
        } else {
            _image.canvas().clear();
        }
        if (layer == null) {
            layer = _layer.set(PlayN.graphics().createImageLayer(_image));
            if (_depth != null) layer.setDepth(_depth);
            _parent.add(layer);
        }
        _preparedWidth = width;
        _preparedHeight = height;
    }
View Full Code Here

     * automatically. This allows the animation to be repeated, if desired. The caller must destroy
     * eventually the image layer, or more likely, destroy {@code box} which will cause the created
     * image layer to be destroyed.
     */
    public Animation.Flip flipbook (GroupLayer box, Flipbook book) {
        ImageLayer image = graphics().createImageLayer();
        box.add(image);
        return flipbook(image, book);
    }
View Full Code Here

TOP

Related Classes of playn.core.ImageLayer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.