Class TextureAtlas

  • All Implemented Interfaces:
    Disposable

    public class TextureAtlas
    extends java.lang.Object
    implements Disposable
    Loads images from texture atlases created by TexturePacker.

    A TextureAtlas must be disposed to free up the resources consumed by the backing textures.
    • Constructor Detail

      • TextureAtlas

        public TextureAtlas()
        Creates an empty atlas to which regions can be added.
      • TextureAtlas

        public TextureAtlas​(java.lang.String internalPackFile)
        Loads the specified pack file using Files.FileType.Internal, using the parent directory of the pack file to find the page images.
      • TextureAtlas

        public TextureAtlas​(FileHandle packFile)
        Loads the specified pack file, using the parent directory of the pack file to find the page images.
      • TextureAtlas

        public TextureAtlas​(FileHandle packFile,
                            boolean flip)
        Parameters:
        flip - If true, all regions loaded will be flipped for use with a perspective where 0,0 is the upper left corner.
        See Also:
        TextureAtlas(FileHandle)
      • TextureAtlas

        public TextureAtlas​(FileHandle packFile,
                            FileHandle imagesDir,
                            boolean flip)
        Parameters:
        flip - If true, all regions loaded will be flipped for use with a perspective where 0,0 is the upper left corner.
    • Method Detail

      • addRegion

        public TextureAtlas.AtlasRegion addRegion​(java.lang.String name,
                                                  Texture texture,
                                                  int x,
                                                  int y,
                                                  int width,
                                                  int height)
        Adds a region to the atlas. The specified texture will be disposed when the atlas is disposed.
      • addRegion

        public TextureAtlas.AtlasRegion addRegion​(java.lang.String name,
                                                  TextureRegion textureRegion)
        Adds a region to the atlas. The texture for the specified region will be disposed when the atlas is disposed.
      • findRegion

        @Null
        public TextureAtlas.AtlasRegion findRegion​(java.lang.String name)
        Returns the first region found with the specified name. This method uses string comparison to find the region, so the result should be cached rather than calling this method multiple times.
      • findRegion

        @Null
        public TextureAtlas.AtlasRegion findRegion​(java.lang.String name,
                                                   int index)
        Returns the first region found with the specified name and index. This method uses string comparison to find the region, so the result should be cached rather than calling this method multiple times.
      • findRegions

        public Array<TextureAtlas.AtlasRegion> findRegions​(java.lang.String name)
        Returns all regions with the specified name, ordered by smallest to largest index. This method uses string comparison to find the regions, so the result should be cached rather than calling this method multiple times.
      • createSprites

        public Array<Sprite> createSprites()
        Returns all regions in the atlas as sprites. This method creates a new sprite for each region, so the result should be stored rather than calling this method multiple times.
        See Also:
        createSprite(String)
      • createSprite

        @Null
        public Sprite createSprite​(java.lang.String name)
        Returns the first region found with the specified name as a sprite. If whitespace was stripped from the region when it was packed, the sprite is automatically positioned as if whitespace had not been stripped. This method uses string comparison to find the region and constructs a new sprite, so the result should be cached rather than calling this method multiple times.
      • createSprite

        @Null
        public Sprite createSprite​(java.lang.String name,
                                   int index)
        Returns the first region found with the specified name and index as a sprite. This method uses string comparison to find the region and constructs a new sprite, so the result should be cached rather than calling this method multiple times.
        See Also:
        createSprite(String)
      • createSprites

        public Array<Sprite> createSprites​(java.lang.String name)
        Returns all regions with the specified name as sprites, ordered by smallest to largest index. This method uses string comparison to find the regions and constructs new sprites, so the result should be cached rather than calling this method multiple times.
        See Also:
        createSprite(String)
      • createPatch

        @Null
        public NinePatch createPatch​(java.lang.String name)
        Returns the first region found with the specified name as a NinePatch. The region must have been packed with ninepatch splits. This method uses string comparison to find the region and constructs a new ninepatch, so the result should be cached rather than calling this method multiple times.
      • getTextures

        public ObjectSet<Texture> getTextures()
        Returns:
        the textures of the pages, unordered
      • dispose

        public void dispose()
        Releases all resources associated with this TextureAtlas instance. This releases all the textures backing all TextureRegions and Sprites, which should no longer be used after calling dispose.
        Specified by:
        dispose in interface Disposable