Class TLcdEarthVertexArray

All Implemented Interfaces:
Direct Known Subclasses:
TLcdEarthIndexedVertexArray, TLcdEarthTerrainTileVertexArray

public class TLcdEarthVertexArray extends Object implements ILcdBounded
A container for vertex array data that can be drawn directly with OpenGL (for instance using glDrawArrays()). A vertex array contains the following data:
  • a FloatBuffer that contains the vertex coordinates and any other vertex attributes, in an interleaved fashion;
  • a vertex format, which defines the layout of the aforementioned FloatBuffer; the vertex format is one of the symbolic constants accepted by glInterleavedArrays();
  • a primitive type, which defines the type of primitive to be used when drawing from this vertex array; the primitive type is one of the symbolic constants accepted by glBegin()
  • ;
  • the bounds of the vertices in the array;
  • an optional local coordinate origin against which the vertices are defined; if this is set, the camera should be transformed to the local coordinate system before drawing the vertex array.
  • Field Details

  • Constructor Details

    • TLcdEarthVertexArray

      public TLcdEarthVertexArray()
      Constructs an empty TLcdEarthVertexArray.
    • TLcdEarthVertexArray

      public TLcdEarthVertexArray(TLcdEarthVertexArray aVertexArray)
      Constructs a TLcdEarthVertexArray with the same properties as the specified vertex array. Note that no actual data is copied. For example writing to the vertices buffer will also affect the specified vertex array.
      aVertexArray - a vertex array
  • Method Details

    • getVertices

      public FloatBuffer getVertices()
    • setVertices

      public void setVertices(FloatBuffer aVertices)
    • getVertexFormat

      public int getVertexFormat()
    • setVertexFormat

      public void setVertexFormat(int aVertexFormat)
      aVertexFormat - the OpenGL interleaved vertex format or -1 if it is custom
    • getPrimitiveType

      public int getPrimitiveType()
    • setPrimitiveType

      public void setPrimitiveType(int aPrimitiveType)
    • getBounds

      public ILcdBounds getBounds()
      Description copied from interface: ILcdBounded
      Returns the ILcdBounds by which the geometry of this ILcdBounded object is bounded.

      If the geometry does not allow retrieving valid bounds (for example a polyline with 0 points) the return value is unspecified. It is highly recommended to return an undefined bounds. You can create undefined bounds using the default constructors of TLcdLonLatBounds or TLcdXYBounds.

      Specified by:
      getBounds in interface ILcdBounded
      the ILcdBounds by which the geometry of this ILcdBounded object is bounded.
    • setBounds

      public void setBounds(ILcdBounds aBounds)
    • getCoordinateOrigin

      public ILcdPoint getCoordinateOrigin()
    • setCoordinateOrigin

      public void setCoordinateOrigin(ILcdPoint aCoordinateOrigin)