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

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

Introduction

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

Prototype

public final void line(Vector2 v0, Vector2 v1) 

Source Link

Usage

From source file:com.agateau.pixelwheels.racer.RacerDebugShape.java

License:Open Source License

@Override
public void draw(ShapeRenderer renderer) {
    WaypointStore store = mTrack.getWaypointStore();

    // Render waypoints
    renderer.begin(ShapeRenderer.ShapeType.Line);
    for (int idx = 0; idx < store.getCount(); ++idx) {
        renderer.setColor(idx % 2, 1, 0, 1);
        int prevIdx = store.getPreviousIndex(idx);
        renderer.line(store.getWaypoint(prevIdx), store.getWaypoint(idx));
    }//from   w  w w.j a  va  2 s .  c  o  m
    renderer.end();

    // Render next & prev waypoints, render projected point
    float lapDistance = mRacer.getLapPositionComponent().getLapDistance();
    int nextIdx = store.getWaypointIndex(lapDistance);
    int prevIdx = store.getPreviousIndex(nextIdx);

    OrientedPoint point = store.getValidPosition(mRacer.getVehicle().getBody().getWorldCenter(), lapDistance);

    renderer.begin(ShapeRenderer.ShapeType.Line);
    float radius = 10 * Constants.UNIT_FOR_PIXEL;
    renderer.setColor(1, 1, 0, 1);
    DrawUtils.drawCross(renderer, store.getWaypoint(prevIdx), radius);
    renderer.setColor(0, 1, 1, 1);
    DrawUtils.drawCross(renderer, store.getWaypoint(nextIdx), radius);
    renderer.setColor(1, 1, 1, 1);
    DrawUtils.drawCross(renderer, point.x, point.y, radius);

    renderer.end();
}

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;/* w w  w.j a  v  a2 s  .  com*/

        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);// www  .j a  va 2s .  c  om
    for (BoundingBox br : boundingBoxes) {

        tmp.set(vertices.items[br.begin]);
        tmp.rotateRad(angleRad);
        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   w  ww . ja  va 2s .c  o  m
            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);
        }

    }
}

From source file:vault.clockwork.editor.props.PlankProp.java

License:Open Source License

/**
 * @param gizmo //  ww  w  . j  av  a  2s .c  o  m
 */
@Override
public void draw(ShapeRenderer gizmo) {
    Matrix4 transform = new Matrix4();
    transform.translate(position.x, position.y, 0);
    transform.rotate(0, 0, 1, angle);

    gizmo.setTransformMatrix(transform);
    gizmo.rect(-width, -height, width * 2, height * 2);
    gizmo.setTransformMatrix(new Matrix4());
    gizmo.setColor(Color.CYAN);
    gizmo.line(position, position.cpy().add(new Vector2(move_direction_x, move_direction_y).nor().scl(64.f)));
    gizmo.setColor(Color.YELLOW);
}

From source file:vault.clockwork.editor.props.StaticPlankProp.java

License:Open Source License

/**
 * @param gizmo /*from ww  w. jav  a 2s  .co  m*/
 */
@Override
public void draw(ShapeRenderer gizmo) {
    Matrix4 transform = new Matrix4();
    transform.translate(position.x, position.y, 0);
    transform.rotate(0, 0, 1, angle);

    gizmo.setTransformMatrix(transform);
    gizmo.rect(-width, -height, width * 2, height * 2);
    gizmo.setTransformMatrix(new Matrix4());

    gizmo.setColor(Color.ORANGE);
    gizmo.line(position, position.cpy().add(new Vector2(width, height).nor().scl(64.f)));
}