Class ImageWrapperDecorationPainter

java.lang.Object
org.pushingpixels.substance.api.painter.decoration.ImageWrapperDecorationPainter
All Implemented Interfaces:
SubstanceDecorationPainter, SubstanceTrait
Direct Known Subclasses:
BrushedMetalDecorationPainter, MarbleNoiseDecorationPainter

public abstract class ImageWrapperDecorationPainter extends Object implements SubstanceDecorationPainter
Implementation of SubstanceDecorationPainter that uses brushed metal painting on decoration areas.
Since:
version 4.3
  • Field Details

    • originalTile

      protected Image originalTile
      Contains the original (not colorized) image of this painter.
    • baseDecorationPainter

      protected SubstanceDecorationPainter baseDecorationPainter
      The base decoration painter - the colorized image tiles are painted over the painting of this painter. Can be null.
    • colorizedTileMap

      protected LinkedHashMap<String,Image> colorizedTileMap
      Map of colorized tiles.
    • textureAlpha

      protected float textureAlpha
      Alpha channel for the texture image (colorized tiles applied on top of the baseDecorationPainter painting).
  • Constructor Details

    • ImageWrapperDecorationPainter

      public ImageWrapperDecorationPainter()
      Creates a new image wrapper decoration painter.
  • Method Details

    • paintDecorationArea

      public void paintDecorationArea(Graphics2D graphics, Component comp, DecorationAreaType decorationAreaType, int width, int height, SubstanceSkin skin)
      Description copied from interface: SubstanceDecorationPainter
      Paints the decoration area.
      Specified by:
      paintDecorationArea in interface SubstanceDecorationPainter
      Parameters:
      graphics - Graphics context.
      comp - Component.
      decorationAreaType - Decoration area type. Must not be null.
      width - Width.
      height - Height.
      skin - Skin for painting the decoration area.
    • tileArea

      protected void tileArea(Graphics2D g, Component comp, SubstanceColorScheme tileScheme, int offsetTextureX, int offsetTextureY, int x, int y, int width, int height)
      Tiles the specified area with colorized version of the image tile. This is called after the baseDecorationPainter has painted the area. This method should respect the current textureAlpha value.
      Parameters:
      g - Graphic context.
      comp - Component.
      tileScheme - Scheme for the tile colorization.
      offsetTextureX - X offset for the tiling.
      offsetTextureY - Y offset for the tiling.
      x - X coordinate of the tiling region.
      y - Y coordinate of the tiling region.
      width - Width of the tiling region.
      height - Height of the tiling region.
    • setBaseDecorationPainter

      public void setBaseDecorationPainter(SubstanceDecorationPainter baseDecorationPainter)
      Sets the base decoration painter.
      Parameters:
      baseDecorationPainter - Base decoration painter.
    • setTextureAlpha

      public void setTextureAlpha(float textureAlpha)
      Sets the alpha channel for the image texture.
      Parameters:
      textureAlpha - Alpha channel for the image texture.
    • getColorizedTile

      protected Image getColorizedTile(SubstanceColorScheme scheme)
      Returns a colorized image tile.
      Parameters:
      scheme - Color scheme for the colorization.
      Returns:
      Colorized tile.