Class TGAImage

java.lang.Object
com.jogamp.opengl.util.texture.spi.TGAImage

public class TGAImage extends Object
Targa image reader and writer adapted from sources of the Jimi image I/O class library.

Image decoder for image data stored in TGA file format. Currently only the original TGA file format is supported. This is because the new TGA format has data at the end of the file, getting to the end of a file in an InputStream orient environment presents several difficulties which are avoided at the moment.

This is a simple decoder and is only setup to load a single image from the input stream

Version:
$Revision: 1768 $
Author:
Robin Luiten, Kenneth Russell
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    This class reads in all of the TGA image header in addition it also reads in the imageID field as it is convenient to handle that here.
  • Method Summary

    Modifier and Type
    Method
    Description
    static TGAImage
    createFromData(int width, int height, boolean hasAlpha, boolean topToBottom, ByteBuffer data)
    Creates a TGAImage from data supplied by the end user.
    int
    Returns the bytes per pixel
    Returns the raw data for this texture in the correct (bottom-to-top) order for calls to glTexImage2D.
    int
    Returns the OpenGL format for this texture; e.g.
    int
    Returns the height of the image.
    int
    Returns the width of the image.
    static TGAImage
    Reads a Targa image from the specified InputStream.
    static TGAImage
    read(GLProfile glp, String filename)
    Reads a Targa image from the specified file.
    void
    write(File file)
    Writes the image in Targa format to the specified file.
    void
    write(String filename)
    Writes the image in Targa format to the specified file name.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • getWidth

      public int getWidth()
      Returns the width of the image.
    • getHeight

      public int getHeight()
      Returns the height of the image.
    • getGLFormat

      public int getGLFormat()
      Returns the OpenGL format for this texture; e.g. GL.GL_BGR or GL.GL_BGRA.
    • getBytesPerPixel

      public int getBytesPerPixel()
      Returns the bytes per pixel
    • getData

      public ByteBuffer getData()
      Returns the raw data for this texture in the correct (bottom-to-top) order for calls to glTexImage2D.
    • read

      public static TGAImage read(GLProfile glp, String filename) throws IOException
      Reads a Targa image from the specified file.
      Throws:
      IOException
    • read

      public static TGAImage read(GLProfile glp, InputStream in) throws IOException
      Reads a Targa image from the specified InputStream.
      Throws:
      IOException
    • write

      public void write(String filename) throws IOException
      Writes the image in Targa format to the specified file name.
      Throws:
      IOException
    • write

      public void write(File file) throws IOException
      Writes the image in Targa format to the specified file.
      Throws:
      IOException
    • createFromData

      public static TGAImage createFromData(int width, int height, boolean hasAlpha, boolean topToBottom, ByteBuffer data)
      Creates a TGAImage from data supplied by the end user. Shares data with the passed ByteBuffer. Assumes the data is already in the correct byte order for writing to disk, i.e., BGR or BGRA.