Class DensityStyle

  • All Implemented Interfaces:
    javax.swing.Icon, Style

    public abstract class DensityStyle
    extends java.lang.Object
    implements Style, javax.swing.Icon
    Style for the way that a density map (2d histogram) is plotted.
    Since:
    1 Dec 2005
    Author:
    Mark Taylor
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  DensityStyle.Channel
      Enumeration class which describes a colour channel.
    • Constructor Summary

      Constructors 
      Constructor Description
      DensityStyle​(DensityStyle.Channel channel)
      Constructs a new style which plots in a given colour channel.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      int getIconHeight()  
      int getIconWidth()  
      javax.swing.Icon getLegendIcon()
      Returns an icon suitable for displaying in a legend for this style.
      Shader getShader()
      Returns the shader to use in indexed (non-RGB) mode.
      protected abstract boolean isRGB()
      Indicates whether the plotting is currently to be treated as three-channel RGB plotting or as single-channel intensity plotting.
      int levelBits​(byte level)
      Defines how the style looks.
      void paintIcon​(java.awt.Component c, java.awt.Graphics g, int x, int y)  
      void setShader​(Shader shader)
      Sets the shader to use in indexed (non-RGB) mode.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • DensityStyle

        public DensityStyle​(DensityStyle.Channel channel)
        Constructs a new style which plots in a given colour channel.
        Parameters:
        channel - colour channel
    • Method Detail

      • setShader

        public void setShader​(Shader shader)
        Sets the shader to use in indexed (non-RGB) mode. This should be an absolute shader.
        Parameters:
        shader - shader
      • getShader

        public Shader getShader()
        Returns the shader to use in indexed (non-RGB) mode. This should be an absolute shader.
        Returns:
        shader
      • levelBits

        public int levelBits​(byte level)
        Defines how the style looks. This converts an unsigned byte value (that is a value in the range 0-255 got by doing value=0x000000ff&level) to a bitmask which can be OR-ed with an existing integer to give a 32-type ARGB colour value.
        Parameters:
        level - unsigned byte value
        Returns:
        ORable bit mask for modifying a colour value
      • isRGB

        protected abstract boolean isRGB()
        Indicates whether the plotting is currently to be treated as three-channel RGB plotting or as single-channel intensity plotting.
        Returns:
        true iff plotting is currently three-channel
      • getLegendIcon

        public javax.swing.Icon getLegendIcon()
        Description copied from interface: Style
        Returns an icon suitable for displaying in a legend for this style.
        Specified by:
        getLegendIcon in interface Style
      • getIconHeight

        public int getIconHeight()
        Specified by:
        getIconHeight in interface javax.swing.Icon
      • getIconWidth

        public int getIconWidth()
        Specified by:
        getIconWidth in interface javax.swing.Icon
      • paintIcon

        public void paintIcon​(java.awt.Component c,
                              java.awt.Graphics g,
                              int x,
                              int y)
        Specified by:
        paintIcon in interface javax.swing.Icon
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object