Example usage for com.badlogic.gdx.graphics GL20 GL_POINTS

List of usage examples for com.badlogic.gdx.graphics GL20 GL_POINTS

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics GL20 GL_POINTS.

Prototype

int GL_POINTS

To view the source code for com.badlogic.gdx.graphics GL20 GL_POINTS.

Click Source Link

Usage

From source file:com.cyphercove.doublehelix.points.BillboardDecalBatch.java

License:Apache License

/** Flushes vertices[0,verticesPosition[ to GL verticesPosition % Decal.SIZE must equal 0
 *
 * @param verticesPosition Amount of elements from the vertices array to flush */
protected void flush(ShaderProgram shader, int verticesPosition) {
    mesh.setVertices(vertices, 0, verticesPosition);
    mesh.render(shader, GL20.GL_POINTS, 0, verticesPosition / BillboardDecal.VERTEX_SIZE);
}

From source file:com.mbrlabs.mundus.commons.g3d.MG3dModelLoader.java

License:Apache License

private int parseType(String type) {
    if (type.equals("TRIANGLES")) {
        return GL20.GL_TRIANGLES;
    } else if (type.equals("LINES")) {
        return GL20.GL_LINES;
    } else if (type.equals("POINTS")) {
        return GL20.GL_POINTS;
    } else if (type.equals("TRIANGLE_STRIP")) {
        return GL20.GL_TRIANGLE_STRIP;
    } else if (type.equals("LINE_STRIP")) {
        return GL20.GL_LINE_STRIP;
    } else {//ww  w  .  j av  a  2s .  c  o  m
        throw new GdxRuntimeException("Unknown primitive type '" + type
                + "', should be one of triangle, trianglestrip, line, linestrip, lineloop or point");
    }
}

From source file:gaia.cu9.ari.gaiaorbit.util.g3d.MeshBuilder2.java

License:Apache License

/** Increases the size of the backing indices array to accommodate the specified number of additional rectangles. Useful before
 * adding many rectangles to avoid multiple backing array resizes.
 * @param numRectangles The number of rectangles you are about to add */
public void ensureRectangleIndices(int numRectangles) {
    if (primitiveType == GL20.GL_POINTS)
        ensureIndices(4 * numRectangles);
    else if (primitiveType == GL20.GL_LINES)
        ensureIndices(8 * numRectangles);
    else/*  w ww .ja  v  a 2 s. co  m*/
        // GL_TRIANGLES
        ensureIndices(6 * numRectangles);
}

From source file:gaia.cu9.ari.gaiaorbit.util.g3d.MeshBuilder2.java

License:Apache License

@Override
public void triangle(short index1, short index2, short index3) {
    if (primitiveType == GL20.GL_TRIANGLES || primitiveType == GL20.GL_POINTS) {
        index(index1, index2, index3);//from   ww w  . j  a va  2s.  co m
    } else if (primitiveType == GL20.GL_LINES) {
        index(index1, index2, index2, index3, index3, index1);
    } else
        throw new GdxRuntimeException("Incorrect primitive type");
}

From source file:gaia.cu9.ari.gaiaorbit.util.g3d.MeshBuilder2.java

License:Apache License

@Override
public void rect(short corner00, short corner10, short corner11, short corner01) {
    if (primitiveType == GL20.GL_TRIANGLES) {
        index(corner00, corner10, corner11, corner11, corner01, corner00);
    } else if (primitiveType == GL20.GL_LINES) {
        index(corner00, corner10, corner10, corner11, corner11, corner01, corner01, corner00);
    } else if (primitiveType == GL20.GL_POINTS) {
        index(corner00, corner10, corner11, corner01);
    } else/*from   w  w  w .  j  a  v  a2s  .c o m*/
        throw new GdxRuntimeException("Incorrect primitive type");
}

From source file:gaia.cu9.ari.gaiaorbit.util.g3d.MeshBuilder2.java

License:Apache License

@Override
public void box(VertexInfo corner000, VertexInfo corner010, VertexInfo corner100, VertexInfo corner110,
        VertexInfo corner001, VertexInfo corner011, VertexInfo corner101, VertexInfo corner111) {
    ensureVertices(8);//from   w w w  .  j  ava  2s  . co m
    final short i000 = vertex(corner000);
    final short i100 = vertex(corner100);
    final short i110 = vertex(corner110);
    final short i010 = vertex(corner010);
    final short i001 = vertex(corner001);
    final short i101 = vertex(corner101);
    final short i111 = vertex(corner111);
    final short i011 = vertex(corner011);

    if (primitiveType == GL20.GL_LINES) {
        ensureIndices(24);
        rect(i000, i100, i110, i010);
        rect(i101, i001, i011, i111);
        index(i000, i001, i010, i011, i110, i111, i100, i101);
    } else if (primitiveType == GL20.GL_POINTS) {
        ensureRectangleIndices(2);
        rect(i000, i100, i110, i010);
        rect(i101, i001, i011, i111);
    } else { // GL10.GL_TRIANGLES
        ensureRectangleIndices(6);
        rect(i000, i100, i110, i010);
        rect(i101, i001, i011, i111);
        rect(i000, i010, i011, i001);
        rect(i101, i111, i110, i100);
        rect(i101, i100, i000, i001);
        rect(i110, i111, i011, i010);
    }
}

From source file:mobi.shad.s3lib.gfx.node.filter.FxObject3D.java

License:Apache License

/**
 *
 *//*from  ww w. j a  v  a  2s  . c  om*/
@Override
protected void processLocal() {
    data.type = Data.Type.EFFECT_3D;

    if (formGui != null) {
        objectType = formGui.getInt("objectType");
        objectId = formGui.getInt("objectName");
    }

    switch (objectType) {
    default:
        data.primitiveType = GL20.GL_POINTS;
        break;
    case 1:
        data.primitiveType = GL20.GL_LINES;
        break;
    case 2:
        data.primitiveType = GL20.GL_TRIANGLES;
        break;
    }

    switch (objectId) {
    default:
        data.objectMesh = Cube.cube(2.0f, 2.0f, 2.0f);
        break;
    case 1:
        data.objectMesh = Sphere.sphere(2.0f, 2.0f, 2.0f, 10f, 10f);
        break;
    case 2:
        data.objectMesh = Cylinder.cylinder(2.0f, 2.0f, 10f, 10f);
        break;
    case 3:
        data.objectMesh = Plane.plane(2.0f, 2.0f);
        break;
    }
}

From source file:mobi.shad.s3lib.gfx.node.filter.FxPoint3D.java

License:Apache License

/**
 *
 *//*  w  ww  .  j av a2s .c  o  m*/
@Override
protected void processLocal() {

    data.type = Data.Type.EFFECT_3D;

    if (formGui != null) {

        objectType = formGui.getInt("objectType");

        countX = formGui.getInt("countX");
        countY = formGui.getInt("countY");

        countStepX = formGui.getFloat("countStepX") / 10;
        countStepY = formGui.getFloat("countStepY") / 10;

        speedX1 = formGui.getFloat("speedX1");
        speedY1 = formGui.getFloat("speedY1");
        stepX1 = formGui.getFloat("stepX1");
        stepY1 = formGui.getFloat("stepY1");
        amplitudeX1 = formGui.getFloat("amplitudeX1") / 10;
        amplitudeY1 = formGui.getFloat("amplitudeY1") / 10;

        speedX2 = formGui.getFloat("speedX2");
        speedY2 = formGui.getFloat("speedY2");
        stepX2 = formGui.getFloat("stepX2");
        stepY2 = formGui.getFloat("stepY2");
        amplitudeX2 = formGui.getFloat("amplitudeX2") / 10;
        amplitudeY2 = formGui.getFloat("amplitudeY2") / 10;

        speedX3 = formGui.getFloat("speedX3");
        speedY3 = formGui.getFloat("speedY3");
        stepX3 = formGui.getFloat("stepX3");
        stepY3 = formGui.getFloat("stepY3");
        amplitudeX3 = formGui.getFloat("amplitudeX3") / 10;
        amplitudeY3 = formGui.getFloat("amplitudeY3") / 10;
    }

    switch (objectType) {
    default:
        data.primitiveType = GL20.GL_POINTS;
        break;
    case 1:
        data.primitiveType = GL20.GL_LINES;
        break;
    case 2:
        data.primitiveType = GL20.GL_TRIANGLES;
        break;
    }

    data.objectMesh = new ObjectMesh(false, true, false);
    data.objectMesh.useIndicesIndex = false;

    int tmpC = countX * countY;
    for (int i = 0; i < tmpC; i++) {
        data.objectMesh.addVertex((float) Math.round(data.startX + S3Math.randomize(data.width, data.centerX)),
                (float) Math.round(data.startY + S3Math.randomize(data.height, data.centerY)),
                (float) Math.round(data.startY + S3Math.randomize(data.height, data.centerX)));
    }
}