Class MultilayerSymbol

  • All Implemented Interfaces:
    JsonSerializable
    Direct Known Subclasses:
    MultilayerPointSymbol, MultilayerPolygonSymbol, MultilayerPolylineSymbol

    public class MultilayerSymbol
    extends Symbol
    Multilayer symbols are built from multiple layers of symbols, which combine to make rich graphical depictions. They may be returned from feature layers based on web maps, feature services, or mobile map packages, and can also be created from JSON by calling Symbol.fromJson(String).

    Multilayer symbols can also be created programmatically through the MultilayerPointSymbol, MultilayerPolylineSymbol, and MultilayerPolygonSymbol subclasses. The layers that comprise the symbol can be accessed through getSymbolLayers(). Symbol layer properties can be modified - for example the color of a multilayer symbol. Some subclasses also expose additional symbol properties.

    The symbol layers that comprise the symbol can be of different types. For example, a Polyline geometry may be drawn with a MultilayerPolylineSymbol that has line (stroke) symbol layers that draw the line geometry, and also point (marker) symbol layers that are drawn at specified point locations relative to the line geometry. For more information about multilayer symbols, refer to Symbols in the ArcGIS Pro help.

    Since:
    100.2.0
    • Method Detail

      • getColor

        public int getColor()
        Gets the color of this Symbol as an ARGB(alpha, red, green, blue) value.
        Returns:
        the color in the form 0xAARRGGB
        Since:
        100.2.0
      • setColor

        public void setColor​(int color)
        Sets the color of this Symbol using an ARGB(alpha, red, green, blue) value.

        The color of specific symbol layers within a multilayer symbol can be locked; the new color value will be applied to any symbol layers that are not locked. Color locking can be enabled or disabled through SymbolLayer.setColorLocked(boolean).

        Parameters:
        color - the color to set, in the form 0xAARRGGBB
        Since:
        100.2.0
      • getSymbolLayers

        public List<SymbolLayer> getSymbolLayers()
        Gets a list containing the symbol layers within this multilayer symbol. The list is modifiable and symbol layers can be added or removed. The symbol layers are in reverse order of how they appear in the JSON representation from the server.
        Returns:
        the list of symbol layers
        Since:
        100.5.0