Example usage for com.badlogic.gdx.graphics.glutils ShapeRenderer end

List of usage examples for com.badlogic.gdx.graphics.glutils ShapeRenderer end

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics.glutils ShapeRenderer end.

Prototype

public void end() 

Source Link

Document

Finishes the batch of shapes and ensures they get rendered.

Usage

From source file:im.ligas.worms.worm.impl.SplitterWormImpl.java

License:Open Source License

@Override
public void draw(ShapeRenderer shapeRenderer) {
    super.draw(shapeRenderer);
    for (Branch branch : branches) {
        shapeRenderer.begin(ShapeRenderer.ShapeType.Line);
        shapeRenderer.polyline(Utils.convertToPrimitive(branch.bBody));
        shapeRenderer.end();
    }// w w  w.j av  a  2s . co m
}

From source file:im.ligas.worms.worm.impl.WormImpl.java

License:Open Source License

@Override
public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.setColor(color);//from www . j a va2  s .c o m
    shapeRenderer.begin(ShapeRenderer.ShapeType.Line);
    shapeRenderer.polyline(Utils.convertToPrimitive(body));
    shapeRenderer.end();
}

From source file:ludowars.gui.widgets.ChatWidget.java

@Override
public void render(SpriteBatch batch, ShapeRenderer sr, float delta) {
    if (inputActive) {
        batch.end();//  w  w w . ja  v a2s.  c om
        Gdx.gl.glEnable(GL10.GL_BLEND);
        Gdx.gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);
        sr.begin(ShapeRenderer.ShapeType.Filled);

        // chat background
        sr.setColor(0f, 0f, 0f, 0.4f);
        sr.rect(bounds.x, bounds.y + 30, getWidth(), getHeight());

        // chat input
        sr.setColor(0f, 0f, 0f, 0.8f);
        sr.rect(bounds.x, bounds.y, getWidth(), 30);

        sr.end();
        Gdx.gl.glDisable(GL10.GL_BLEND);
        batch.begin();
    }

    // chat lines
    int i = 1;
    float offsetY = bounds.y + FONT_SIZE - 4;
    for (String line : lines) {
        font.draw(batch, line, bounds.x + PADDING, offsetY + 24 * i + PADDING);
        i++;
    }

    if (inputActive) {
        font.draw(batch, inputBuffer, bounds.x + PADDING, offsetY + 6);
    }
}

From source file:ludowars.view.EntityRepresentation.java

public void renderBoundingBox(ShapeRenderer sr) {
    EntityData data = entity.getData();/* w  w w.j  a v  a 2 s.  co m*/
    sr.begin(ShapeRenderer.ShapeType.Line);
    sr.setColor(Color.RED);
    sr.rect(data.getBounds().x, data.getBounds().y, data.getBounds().width, data.getBounds().height);
    sr.end();
}

From source file:ludowars.view.PlayerRepresentation.java

public void drawHealth(ShapeRenderer s, Vector3 sv, CharacterData data) {
    float healthWidth = data.getHealth() / data.maxHealth * 40;

    s.begin(ShapeRenderer.ShapeType.Filled);
    s.setColor(Color.valueOf("FFAA00"));
    s.rect(sv.x - 12 - 4, sv.y + 36, 40, 8);
    s.end();

    if (data.getHealth() > 0) {
        s.begin(ShapeRenderer.ShapeType.Filled);
        s.setColor(Color.RED);/*from   www . j  av  a 2s. co m*/
        s.rect(sv.x - 12 + 2 - 4, sv.y + 36 + 2, healthWidth - 4, 8 - 4);
        s.end();
    }
}

From source file:ludowars.view.ZombieRepresentation.java

public void drawHealth(ShapeRenderer s, Vector3 sv, CharacterData data) {
    if (data.getHealth() <= 0)
        return;//from www.ja v a  2 s .com

    float healthWidth = data.getHealth() / data.maxHealth * 40;

    s.begin(ShapeRenderer.ShapeType.Filled);
    s.setColor(Color.valueOf("FFAA00"));
    s.rect(sv.x - 12 - 4, sv.y + 36, 40, 8);
    s.end();

    if (data.getHealth() > 0) {
        s.begin(ShapeRenderer.ShapeType.Filled);
        s.setColor(Color.RED);
        s.rect(sv.x - 12 + 2 - 4, sv.y + 36 + 2, healthWidth - 4, 8 - 4);
        s.end();
    }
}

From source file:managers.HealthBarManager.java

public void drawHealthBar(ShapeRenderer sr, World world, Camera camera) {
    for (Entity e : world.getEntities(PLAYER, ENEMY)) {
        float x = e.get(Position.class).getX();
        float y = e.get(Position.class).getY();
        int eHeight = e.get(Body.class).getHeight();

        sr.setColor(Color.BLACK);
        sr.begin(ShapeRenderer.ShapeType.Filled);
        sr.rect(x, y + eHeight + 9, (float) (e.get(Health.class).getMaxHp() / 2), 12);
        sr.setProjectionMatrix(camera.combined);
        sr.end();

        sr.setColor(Color.RED);/*from   ww w .  j  a  v  a2s .c  o m*/
        sr.begin(ShapeRenderer.ShapeType.Filled);
        sr.rect(x, y + eHeight + 10, (float) (e.get(Health.class).getMaxHp() / 2), 10);
        sr.setProjectionMatrix(camera.combined);
        sr.end();

        sr.setColor(Color.GREEN);
        sr.begin(ShapeRenderer.ShapeType.Filled);
        sr.rect(x, y + eHeight + 10, e.get(Health.class).getHp() / 2, 10);
        sr.setProjectionMatrix(camera.combined);
        sr.end();
    }
}

From source file:net.team2xh.environment.widgets.graphs.BarChart.java

@Override
public void render(ShapeRenderer renderer, Batch batch) {

    Gdx.gl.glEnable(GL20.GL_BLEND);/*  w  w  w . j  a  v  a 2s .  co m*/
    Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);

    renderer.setAutoShapeType(true);
    renderer.begin();
    {
        //Gdx.gl.glLineWidth(1.0f);
        renderer.translate(getX(), getY(), 0);

        renderer.set(ShapeType.Line);
        renderer.setColor(Color.GRAY);
        renderer.rect(0, 0, getWidth(), getHeight());

        // TODO: Grid

        renderer.set(ShapeType.Line);
        renderer.setColor(Color.WHITE);
        if (showAxis) {
            // Vertical
            renderer.line(yAxisMargin, xAxisMargin, yAxisMargin, getHeight() - padding);
            // Horizontal
            renderer.line(yAxisMargin, xAxisMargin, getWidth() - padding, xAxisMargin);
        }

        // Bars
        renderer.translate(0, 0, -1);
        int i = 1;
        for (Map.Entry<String, Number> e : data) {
            float length = maxLength * (e.getValue().floatValue() / maxValue);
            Colors c = colors[color];
            renderer.set(ShapeType.Filled);
            renderer.setColor(c.transparent());
            if (horizontal) {
                renderer.rect(yAxisMargin, getHeight() - (i + 1) * padding - i * thickness, length, thickness);
            } else {
                renderer.rect(yAxisMargin + i * padding + (i - 1) * thickness, xAxisMargin, thickness, length);
            }
            renderer.set(ShapeType.Line);
            renderer.setColor(c.color());
            if (horizontal) {
                renderer.rect(yAxisMargin, getHeight() - (i + 1) * padding - i * thickness,
                        maxLength * (e.getValue().floatValue() / maxValue), thickness);
            } else {
                renderer.rect(yAxisMargin + i * padding + (i - 1) * thickness, xAxisMargin, thickness, length);
            }
            ++i;
            nextColor();
        }
        renderer.translate(0, 0, +1);

        renderer.translate(-getX(), -getY(), 0);
    }
    renderer.end();

    batch.begin();
    {
        int i = 0;
        for (Map.Entry<String, Number> e : data) {
            if (horizontal) {
                font.draw(batch, e.getKey(), getX() + yAxisMargin - padding - font.getBounds(e.getKey()).width,
                        getY() + getHeight() + font.getCapHeight() / 2
                                - (xAxisMargin + 2 * padding + i * (thickness + padding)));
                // TODO: Values axis    
            }
            // TODO: Vertical
            ++i;
        }
    }
    batch.end();

    Gdx.gl.glDisable(GL20.GL_BLEND);

}

From source file:org.bladecoder.bladeengine.model.Scene.java

License:Apache License

public void drawBBoxLines(ShapeRenderer renderer) {
    // renderer.begin(ShapeType.Rectangle);
    renderer.begin(ShapeType.Line);
    renderer.setColor(ACTOR_BBOX_COLOR);

    for (Actor a : orderedActors) {
        Polygon p = a.getBBox();/*from w w w .j  a v a2  s  .  c  o  m*/

        if (p == null) {
            EngineLogger.error("ERROR DRAWING BBOX FOR: " + a.getId());
        }

        Rectangle r = a.getBBox().getBoundingRectangle();

        renderer.polygon(p.getTransformedVertices());
        renderer.rect(r.getX(), r.getY(), r.getWidth(), r.getHeight());
    }

    for (SpriteActor a : fgActors) {
        Rectangle r = a.getBBox().getBoundingRectangle();
        renderer.rect(r.getX(), r.getY(), r.getWidth(), r.getHeight());
    }

    if (polygonalNavGraph != null) {
        renderer.setColor(WALKZONE_COLOR);
        renderer.polygon(polygonalNavGraph.getWalkZone().getTransformedVertices());

        ArrayList<Polygon> obstacles = polygonalNavGraph.getObstacles();

        renderer.setColor(OBSTACLE_COLOR);
        for (Polygon p : obstacles) {
            renderer.polygon(p.getTransformedVertices());
        }

        // DRAW LINEs OF SIGHT
        renderer.setColor(Color.WHITE);
        ArrayList<NavNodePolygonal> nodes = polygonalNavGraph.getGraphNodes();
        for (NavNodePolygonal n : nodes) {
            for (NavNode n2 : n.neighbors) {
                renderer.line(n.x, n.y, ((NavNodePolygonal) n2).x, ((NavNodePolygonal) n2).y);
            }
        }
    }

    renderer.end();
}

From source file:org.catrobat.catroid.stage.PenActor.java

License:Open Source License

private void drawLinesAndStampsForSprite(Sprite sprite, Batch batch, float parentAlpha) {
    float x = sprite.look.getXInUserInterfaceDimensionUnit();
    float y = sprite.look.getYInUserInterfaceDimensionUnit();
    Sprite.PenConfiguration pen = sprite.penConfiguration;

    if (pen.previousPoint == null) {
        pen.previousPoint = new PointF(x, y);
        return;//from   w ww . ja  v  a2 s. c o m
    }

    ShapeRenderer renderer = StageActivity.stageListener.shapeRenderer;
    renderer.setColor(pen.penColor);
    renderer.begin(ShapeRenderer.ShapeType.Filled);

    if (pen.penDown
            && (pen.previousPoint.x != sprite.look.getX() || pen.previousPoint.y != sprite.look.getY())) {
        renderer.circle(pen.previousPoint.x, pen.previousPoint.y, pen.penSize / 2);
        renderer.rectLine(pen.previousPoint.x, pen.previousPoint.y, x, y, pen.penSize);
        renderer.circle(x, y, pen.penSize / 2);
    }

    if (pen.stamp) {
        sprite.look.draw(batch, parentAlpha);
        pen.stamp = false;
    }

    renderer.end();
    pen.previousPoint.x = x;
    pen.previousPoint.y = y;
}