Class TextureLoader

java.lang.Object
com.sun.j3d.utils.image.TextureLoader

public class TextureLoader extends Object
This class is used for loading a texture from an Image or BufferedImage. The Image I/O API is used to load the images. (If the JAI IIO Tools package is available, a larger set of formats can be loaded, including TIFF, JPEG2000, and so on.) Methods are provided to retrieve the Texture object and the associated ImageComponent object or a scaled version of the ImageComponent object. Default format is RGBA. Other legal formats are: RGBA, RGBA4, RGB5_A1, RGB, RGB4, RGB5, R3_G3_B2, LUM8_ALPHA8, LUM4_ALPHA4, LUMINANCE and ALPHA
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Optional flag - specifies that the ImageComponent2D is allowed to have dimensions that are not a power of two.
    static final int
    Optional flag - specifies that the ImageComponent2D will access the image data by reference
    static final int
    Optional flag - specifies that mipmaps are generated for all levels
    static final int
    Optional flag - specifies that the ImageComponent2D will have a y-orientation of y up, meaning the origin of the image is the lower left
  • Constructor Summary

    Constructors
    Constructor
    Description
    Contructs a TextureLoader object using the specified BufferedImage and default format RGBA
    TextureLoader(BufferedImage bImage, int flags)
    Contructs a TextureLoader object using the specified BufferedImage, option flags and default format RGBA
    Contructs a TextureLoader object using the specified BufferedImage and format
    TextureLoader(BufferedImage bImage, String format, int flags)
    Contructs a TextureLoader object using the specified BufferedImage, format and option flags
    TextureLoader(Image image, int flags, Component observer)
    Contructs a TextureLoader object using the specified Image flags and default format RGBA
    TextureLoader(Image image, Component observer)
    Contructs a TextureLoader object using the specified Image and default format RGBA
    TextureLoader(Image image, String format, int flags, Component observer)
    Contructs a TextureLoader object using the specified Image format and option flags
    TextureLoader(Image image, String format, Component observer)
    Contructs a TextureLoader object using the specified Image and format
    TextureLoader(String fname, int flags, Component observer)
    Contructs a TextureLoader object using the specified file, option flags and default format RGBA
    TextureLoader(String fname, Component observer)
    Contructs a TextureLoader object using the specified file and default format RGBA
    TextureLoader(String fname, String format, int flags, Component observer)
    Contructs a TextureLoader object using the specified file, format and option flags
    TextureLoader(String fname, String format, Component observer)
    Contructs a TextureLoader object using the specified file, and format
    TextureLoader(URL url, int flags, Component observer)
    Contructs a TextureLoader object using the specified URL, option flags and default format RGBA
    TextureLoader(URL url, Component observer)
    Contructs a TextureLoader object using the specified URL and default format RGBA
    TextureLoader(URL url, String format, int flags, Component observer)
    Contructs a TextureLoader object using the specified URL, format and option flags
    TextureLoader(URL url, String format, Component observer)
    Contructs a TextureLoader object using the specified URL, and format
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the associated ImageComponent2D object
    getScaledImage(float xScale, float yScale)
    Returns the scaled ImageComponent2D object
    getScaledImage(int width, int height)
    Returns the scaled ImageComponent2D object
    Returns the associated Texture object.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • GENERATE_MIPMAP

      public static final int GENERATE_MIPMAP
      Optional flag - specifies that mipmaps are generated for all levels
      See Also:
    • BY_REFERENCE

      public static final int BY_REFERENCE
      Optional flag - specifies that the ImageComponent2D will access the image data by reference
      Since:
      Java 3D 1.2
      See Also:
    • Y_UP

      public static final int Y_UP
      Optional flag - specifies that the ImageComponent2D will have a y-orientation of y up, meaning the origin of the image is the lower left
      Since:
      Java 3D 1.2
      See Also:
    • ALLOW_NON_POWER_OF_TWO

      public static final int ALLOW_NON_POWER_OF_TWO
      Optional flag - specifies that the ImageComponent2D is allowed to have dimensions that are not a power of two. If this flag is set, TextureLoader will not perform any scaling of images. If this flag is not set, images will be scaled to the nearest power of two. This is the default mode.

      Note that non-power-of-two textures may not be supported by all graphics cards. Applications should check whether a particular Canvas3D supports non-power-of-two textures by calling the Canvas3D.queryProperties() method, and checking whether the textureNonPowerOfTwoAvailable property is set to true.

      Since:
      Java 3D 1.5
      See Also:
  • Constructor Details

    • TextureLoader

      public TextureLoader(BufferedImage bImage)
      Contructs a TextureLoader object using the specified BufferedImage and default format RGBA
      Parameters:
      bImage - The BufferedImage used for loading the texture
      Throws:
      NullPointerException - if bImage is null
    • TextureLoader

      public TextureLoader(BufferedImage bImage, String format)
      Contructs a TextureLoader object using the specified BufferedImage and format
      Parameters:
      bImage - The BufferedImage used for loading the texture
      format - The format specifies which channels to use
      Throws:
      NullPointerException - if bImage is null
    • TextureLoader

      public TextureLoader(BufferedImage bImage, int flags)
      Contructs a TextureLoader object using the specified BufferedImage, option flags and default format RGBA
      Parameters:
      bImage - The BufferedImage used for loading the texture
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      Throws:
      NullPointerException - if bImage is null
    • TextureLoader

      public TextureLoader(BufferedImage bImage, String format, int flags)
      Contructs a TextureLoader object using the specified BufferedImage, format and option flags
      Parameters:
      bImage - The BufferedImage used for loading the texture
      format - The format specifies which channels to use
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      Throws:
      NullPointerException - if bImage is null
    • TextureLoader

      public TextureLoader(Image image, Component observer)
      Contructs a TextureLoader object using the specified Image and default format RGBA
      Parameters:
      image - The Image used for loading the texture
      observer - The associated image observer
      Throws:
      NullPointerException - if image is null
      ImageException - if there is a problem loading the image
    • TextureLoader

      public TextureLoader(Image image, String format, Component observer)
      Contructs a TextureLoader object using the specified Image and format
      Parameters:
      image - The Image used for loading the texture
      format - The format specifies which channels to use
      observer - The associated image observer
      Throws:
      NullPointerException - if image is null
      ImageException - if there is a problem loading the image
    • TextureLoader

      public TextureLoader(Image image, int flags, Component observer)
      Contructs a TextureLoader object using the specified Image flags and default format RGBA
      Parameters:
      image - The Image used for loading the texture
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      observer - The associated image observer
      Throws:
      NullPointerException - if image is null
      ImageException - if there is a problem loading the image
    • TextureLoader

      public TextureLoader(Image image, String format, int flags, Component observer)
      Contructs a TextureLoader object using the specified Image format and option flags
      Parameters:
      image - The Image used for loading the texture
      format - The format specifies which channels to use
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      observer - The associated image observer
      Throws:
      NullPointerException - if image is null
      ImageException - if there is a problem loading the image
    • TextureLoader

      public TextureLoader(String fname, Component observer)
      Contructs a TextureLoader object using the specified file and default format RGBA
      Parameters:
      fname - The file that specifies an Image to load the texture with
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(String fname, String format, Component observer)
      Contructs a TextureLoader object using the specified file, and format
      Parameters:
      fname - The file that specifies an Image to load the texture with
      format - The format specifies which channels to use
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(String fname, int flags, Component observer)
      Contructs a TextureLoader object using the specified file, option flags and default format RGBA
      Parameters:
      fname - The file that specifies an Image to load the texture with
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(String fname, String format, int flags, Component observer)
      Contructs a TextureLoader object using the specified file, format and option flags
      Parameters:
      fname - The file that specifies an Image to load the texture with
      format - The format specifies which channels to use
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(URL url, Component observer)
      Contructs a TextureLoader object using the specified URL and default format RGBA
      Parameters:
      url - The URL that specifies an Image to load the texture with
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(URL url, String format, Component observer)
      Contructs a TextureLoader object using the specified URL, and format
      Parameters:
      url - The URL that specifies an Image to load the texture with
      format - The format specifies which channels to use
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(URL url, int flags, Component observer)
      Contructs a TextureLoader object using the specified URL, option flags and default format RGBA
      Parameters:
      url - The URL that specifies an Image to load the texture with
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
    • TextureLoader

      public TextureLoader(URL url, String format, int flags, Component observer)
      Contructs a TextureLoader object using the specified URL, format and option flags
      Parameters:
      url - The url that specifies an Image to load the texture with
      format - The format specifies which channels to use
      flags - The flags specify what options to use in texture loading (generate mipmap etc)
      observer - The associated image observer
      Throws:
      ImageException - if there is a problem reading the image
  • Method Details

    • getImage

      public ImageComponent2D getImage()
      Returns the associated ImageComponent2D object
      Returns:
      The associated ImageComponent2D object
    • getScaledImage

      public ImageComponent2D getScaledImage(float xScale, float yScale)
      Returns the scaled ImageComponent2D object
      Parameters:
      xScale - The X scaling factor
      yScale - The Y scaling factor
      Returns:
      The scaled ImageComponent2D object
    • getScaledImage

      public ImageComponent2D getScaledImage(int width, int height)
      Returns the scaled ImageComponent2D object
      Parameters:
      width - The desired width
      height - The desired height
      Returns:
      The scaled ImageComponent2D object
    • getTexture

      public Texture getTexture()
      Returns the associated Texture object.
      Returns:
      The associated Texture object