Class RGBImageProfile

  • All Implemented Interfaces:
    ConfigurableExtension

    public class RGBImageProfile
    extends Object
    implements ConfigurableExtension
    A profile used for the creation of RGB images. The profile comprises the band arithmetic expressions for the computation of red, green, blue and alpha (optional) channels of the resulting image.
    • Field Detail

      • RED_BAND_NAME

        public static final String RED_BAND_NAME
        The default name for the band providing input for the red image channel.
        See Also:
        Constant Field Values
      • GREEN_BAND_NAME

        public static final String GREEN_BAND_NAME
        The default name for the band providing input for the green image channel.
        See Also:
        Constant Field Values
      • BLUE_BAND_NAME

        public static final String BLUE_BAND_NAME
        The default name for the band providing input for the blue image channel.
        See Also:
        Constant Field Values
      • ALPHA_BAND_NAME

        public static final String ALPHA_BAND_NAME
        The default name for the band providing input for the alpha image channel.
        See Also:
        Constant Field Values
      • RGB_BAND_NAMES

        public static final String[] RGB_BAND_NAMES
        An array of 3 strings containing the names for the default red, green and blue bands.
      • RGBA_BAND_NAMES

        public static final String[] RGBA_BAND_NAMES
        An array of 4 strings containing the names for the default red, green, blue and alpha bands.
      • PROPERTY_KEY_PREFIX_RGB_PROFILE

        public static final String PROPERTY_KEY_PREFIX_RGB_PROFILE
        Preferences key for RGB profile entries
        See Also:
        Constant Field Values
    • Constructor Detail

      • RGBImageProfile

        public RGBImageProfile​(String name,
                               String[] rgbaExpressions)
      • RGBImageProfile

        public RGBImageProfile​(String name,
                               String[] rgbaExpressions,
                               String[] pattern)
      • RGBImageProfile

        public RGBImageProfile​(String name,
                               String[] rgbaExpressions,
                               String[] pattern,
                               Range[] valueRanges)
        Creates a new RGB profile. In the pattern you can simply use '*' for a sequence of characters or use '?' for a single character. For Example: new String[]{ "MER_*_2*", "MER_*_2*", ""}
        Parameters:
        name - The name of the profile
        rgbaExpressions - the expressions for the RGBA channels. Only RGB expressions are mandatory, the one for the alpha channel can be missing
        pattern - Pattern to check if this profile can be applied to a certain product. Three patterns need to be provided. 1. Will be matched against the product type 2. Will be matched against the product name 3. Will be matched against the description of the product
    • Method Detail

      • getName

        public String getName()
      • setName

        public void setName​(String name)
      • isInternal

        public boolean isInternal()
      • setInternal

        public void setInternal​(boolean internal)
      • equalExpressions

        public boolean equalExpressions​(RGBImageProfile profile)
      • equalExpressions

        @Deprecated
        public boolean equalExpressions​(String[] rgbaExpressions)
        Deprecated.
        This API function exposes internal structure. please use equalExpressions(RGBImageProfile profile)
      • isValid

        public boolean isValid()
        Tests if one of the R,G,B expressions are non-empty strings.
        Returns:
        true, if so
      • getRgbExpressions

        public String[] getRgbExpressions()
      • setRgbExpressions

        public void setRgbExpressions​(String[] rgbExpressions)
      • getRgbaExpressions

        public String[] getRgbaExpressions()
      • setRgbaExpressions

        public void setRgbaExpressions​(String[] rgbaExpressions)
      • getRedExpression

        public String getRedExpression()
      • setRedExpression

        public void setRedExpression​(String expression)
      • getGreenExpression

        public String getGreenExpression()
      • setGreenExpression

        public void setGreenExpression​(String expression)
      • getBlueExpression

        public String getBlueExpression()
      • setBlueExpression

        public void setBlueExpression​(String expression)
      • getAlphaExpression

        public String getAlphaExpression()
      • setAlphaExpression

        public void setAlphaExpression​(String expression)
      • hasAlpha

        public boolean hasAlpha()
      • getPattern

        public String[] getPattern()
      • setPattern

        public void setPattern​(String[] pattern)
      • isApplicableTo

        public boolean isApplicableTo​(Product product)
        Tests whether this profile is applicable to the given product. With other words, the method tests if an RGB image can be created from the given product.
        Parameters:
        product - the product
        Returns:
        true, if so
      • getProperties

        public void getProperties​(Properties properties)
        Sets profile properties and accordingly sets them in the given property map.
        Parameters:
        properties - the property map which receives the properties of this profiles
      • setProperties

        public void setProperties​(Properties properties)
        Sets profile properties from the given property map.
        Parameters:
        properties - the property map which provides the properties for this profiles
      • storeRgbaExpressions

        public static void storeRgbaExpressions​(Product product,
                                                String[] rgbaExpressions)
      • storeRgbaExpressions

        public static void storeRgbaExpressions​(Product product,
                                                String[] rgbaExpressions,
                                                String[] bandNames)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • setRedMinMax

        public void setRedMinMax​(Range range)
      • getRedMinMax

        public Range getRedMinMax()
      • setGreenMinMax

        public void setGreenMinMax​(Range range)
      • getGreenMinMax

        public Range getGreenMinMax()
      • setBlueMinMax

        public void setBlueMinMax​(Range range)
      • getBlueMinMax

        public Range getBlueMinMax()