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

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

Introduction

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

Prototype

public void setColor(Color color) 

Source Link

Document

Sets the color to be used by the next shapes drawn.

Usage

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  ww .  j a  va2 s  . c  om*/
    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.ah.gcc.rover.ui.Button.java

License:Open Source License

public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.set(ShapeType.Filled);

    if (pressed) {
        shapeRenderer.setColor(Color.DARK_GRAY);
    } else {/*from w w  w .  jav  a  2 s . com*/
        shapeRenderer.setColor(Color.GRAY);
    }

    shapeRenderer.rect(x, y, width, height);

}

From source file:org.ah.gcc.rover.ui.POV.java

License:Open Source License

@Override
public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.set(ShapeType.Line);
    shapeRenderer.setColor(Color.BLACK);
    if (wherePressed == 0) {
        shapeRenderer.set(ShapeType.Filled);
    } else {//  w  ww.  java2 s  .  c  o  m
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x, y, size, size);

    //left
    if (wherePressed == 1) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x - size, y, size, size);

    //right
    if (wherePressed == 2) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x + size, y, size, size);

    //up
    if (wherePressed == 3) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x, y + size, size, size);

    //down
    if (wherePressed == 4) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x, y - size, size, size);
}

From source file:org.ah.gcc.rover.ui.RoundButton.java

License:Open Source License

public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.set(ShapeType.Filled);

    if (pressed) {
        shapeRenderer.setColor(Color.DARK_GRAY);
    } else {//w w w .  ja v  a2 s.co  m
        shapeRenderer.setColor(Color.GRAY);
    }

    shapeRenderer.circle(x, y, radius);

}

From source file:org.ah.gcc.rover.ui.SquareButton.java

License:Open Source License

public void draw(ShapeRenderer shapeRenderer) {

    if (pressed) {
        shapeRenderer.setColor(Color.DARK_GRAY);
    } else {/*  ww w  .  j  a v  a 2 s.  co  m*/
        shapeRenderer.setColor(Color.GRAY);
    }

    shapeRenderer.set(ShapeType.Filled);
    shapeRenderer.rect(x, y, width, height);
    shapeRenderer.set(ShapeType.Line);
    shapeRenderer.setColor(Color.BLACK);
    shapeRenderer.rect(x, y, width, height);

}

From source file:org.ah.gcc.rover.ui.Switch.java

License:Open Source License

public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.set(ShapeType.Filled);
    if (orientation == Orientation.HORIZONTAL) {
        if (on) {
            shapeRenderer.set(ShapeType.Filled);
            shapeRenderer.setColor(Color.GREEN);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.set(ShapeType.Filled);

            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x + width / 2, y, width / 2, width / 2);
        } else {/*  w  w  w .  j av  a2 s  .c  o m*/
            shapeRenderer.set(ShapeType.Filled);
            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.set(ShapeType.Filled);
            shapeRenderer.setColor(Color.RED);
            shapeRenderer.rect(x + width / 2, y, width / 2, width / 2);
        }
        shapeRenderer.set(ShapeType.Line);
        shapeRenderer.setColor(Color.BLACK);
        shapeRenderer.rect(x, y, width, width / 2);

    } else if (orientation == Orientation.VERTICAL) {
        if (on) {
            shapeRenderer.setColor(Color.GREEN);
            shapeRenderer.rect(x, y, width, width / 2);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x, y + width / 2, width, width / 2);
        } else {
            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x, y, width, width / 2);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.setColor(Color.RED);
            shapeRenderer.rect(x, y + width / 2, width, width / 2);
        }
        shapeRenderer.set(ShapeType.Line);
        shapeRenderer.setColor(Color.BLACK);
        shapeRenderer.rect(x, y, width / 2, width);
    }

}

From source file:org.ams.prettypaint.OutlineMerger.java

License:Open Source License

/** For debugging. */
private void debugDraw(ShapeRenderer shapeRenderer) {
    Vector2 tmp = new Vector2();
    Vector2 tmp1 = new Vector2();

    shapeRenderer.set(ShapeRenderer.ShapeType.Line);

    int n = 0;//w  ww  . java 2s .c  o m
    for (Array<Vector2> vertices : debug) {
        if (n == 0) {
            shapeRenderer.setColor(Color.RED);
        }
        if (n == 1) {
            shapeRenderer.setColor(Color.GREEN);
        }
        if (n == 2) {
            shapeRenderer.setColor(Color.BLUE);
        }
        if (n == 3) {
            shapeRenderer.setColor(Color.YELLOW);
        }
        n++;

        for (int i = 0; i < vertices.size; i++) {
            Util.getEdge(vertices, i, tmp, tmp1);

            shapeRenderer.line(tmp.x, tmp.y, tmp1.x, tmp1.y);

        }
    }
}

From source file:org.ams.prettypaint.OutlinePolygon.java

License:Open Source License

private void drawCullingRectangles(ShapeRenderer shapeRenderer, Color color) {
    for (BoundingBox br : boundingBoxes) {

        Rectangle r = br.rectangle;
        Rectangle cullingArea = getCullingArea(tmpRectangle, r, angleRad, position, scale);

        shapeRenderer.set(ShapeRenderer.ShapeType.Filled);

        Color fillColor = tmpColor.set(color);
        fillColor.a *= 0.25f;//from   ww  w . j  ava2s  . c  o m

        shapeRenderer.setColor(fillColor);

        shapeRenderer.rect(cullingArea.x, cullingArea.y, cullingArea.width, cullingArea.height);

        tmp.set(r.x, r.y).rotateRad(angleRad).add(position);
        tmp1.set(r.x + r.width, r.y).rotateRad(angleRad).add(position);
        tmp2.set(r.x + r.width, r.y + r.height).rotateRad(angleRad).add(position);
        tmp3.set(r.x, r.y + r.height).rotateRad(angleRad).add(position);

        shapeRenderer.set(ShapeRenderer.ShapeType.Line);
        shapeRenderer.setColor(color);

        shapeRenderer.line(tmp, tmp1);
        shapeRenderer.line(tmp1, tmp2);
        shapeRenderer.line(tmp2, tmp3);
        shapeRenderer.line(tmp3, tmp);

    }
}

From source file:org.ams.prettypaint.OutlinePolygon.java

License:Open Source License

private void drawLineFromFirstToLast(ShapeRenderer shapeRenderer, Color color) {
    shapeRenderer.setColor(color);
    for (BoundingBox br : boundingBoxes) {

        tmp.set(vertices.items[br.begin]);
        tmp.rotateRad(angleRad);/* ww  w  . ja v  a2  s .  c om*/
        tmp.scl(scale);
        tmp.add(position);

        tmp1.set(vertices.items[(br.begin + br.count) % vertices.size]);
        tmp1.rotateRad(angleRad);
        tmp1.scl(scale);
        tmp1.add(position);

        shapeRenderer.line(tmp, tmp1);

    }
}

From source file:org.ams.prettypaint.OutlinePolygon.java

License:Open Source License

private void drawTriangleStrips(ShapeRenderer shapeRenderer, Color color, Color color1) {
    for (int i = 0; i < vertexDataArray.size; i++) {
        StripVertex bb = vertexDataArray.items[i];

        Array<Float> data = bb.insideVertexData;
        for (int j = 0; j < data.size - 3;) {

            shapeRenderer.setColor(j == 0 ? color : color1);

            tmp.x = data.items[j];/*from   ww w  .j  a v  a2 s.  com*/
            tmp.y = data.items[j + 1];
            tmp.rotateRad(angleRad);
            tmp.scl(scale);
            tmp.add(position);

            tmp1.x = data.items[j + 3];
            tmp1.y = data.items[j + 4];
            tmp1.rotateRad(angleRad);
            tmp1.scl(scale);
            tmp1.add(position);
            j += 3;

            shapeRenderer.line(tmp, tmp1);
        }
        data = bb.outsideVertexData;
        for (int j = 0; j < data.size - 3;) {

            shapeRenderer.setColor(j == 0 ? Color.ORANGE : Color.RED);

            tmp.x = data.items[j];
            tmp.y = data.items[j + 1];
            tmp.rotateRad(angleRad);
            tmp.scl(scale);
            tmp.add(position);

            tmp1.x = data.items[j + 3];
            tmp1.y = data.items[j + 4];
            tmp1.rotateRad(angleRad);
            tmp1.scl(scale);
            tmp1.add(position);
            j += 3;

            shapeRenderer.line(tmp, tmp1);
        }

    }
}