Summary
Provides the ability to select a set of features based on their symbol color. This allows features with specific colors to be used as input into additional geoprocessing tools, such as the Intersecting Layers Masks tool.
Usage
This tool accepts point, line, and polygon feature layers as well as geodatabase annotation layers as input.
The returned selection set is a selection of the feature geometries.
The input layer color space and the color space selected in the tool do not need to match. If the color space selected in the tool does not match the input layer color space, the equivalent color in the input layer will be found. For example, if an input layer has a symbol defined using CMYK values of 0 0 0 100 (black), running the tool using RGB as the color space and 0 0 0 as the color values will select black features in the input layer.
Labels are not supported, only annotation layers stored in a geodatabase.
Layers with transparency are not supported. They will be excluded from processing when the tool is run.
Layers with Picture Marker or Picture Fill symbols are not supported. They will be excluded from processing when the tool is run.
Syntax
arcpy.production.SelectFeaturesBySymbolColor(in_layers, reference_scale, colorspace, color_values, {use_symbol_part}, {selection_type})
Parameter | Explanation | Data Type |
in_layers | The symbolized input layers from which features will be selected based on the colors in their symbology. These can be point, polyline, polygon, or annotation feature layers. | Feature Layer |
reference_scale | The scale at which the input layers will be analyzed. If no value is provided, it will be derived in the following order:
| Double |
colorspace [colorspace,...] | Specifies the color space in which the input color values are defined. Three color spaces are supported:
| String |
color_values | A string of color values separated by spaces. When using the CMYK colorspace, enter four values between 0 to 100. When using the RGB color space, enter three values between 0 and 255. When using the HSV color space, enter three values: H must be between 0 and 360; S and V must be between 0 and 100. | String |
use_symbol_part [use_symbol_part,...] (Optional) | Specifies which part of the input layer symbols should be used when evaluating the input color values.
| String |
selection_type [selection_type,...] (Optional) | Determines how the selection will be applied and what to do if a selection already exists.
| String |
Code sample
SelectFeaturesBySymbolColor example (Python window)
The following script demonstrates how to use the SelectFeaturesBySymbolColor tool.
# Import modules
import arcpy
# Define local variables
in_layer = r"C:\Project\Buildings.lyr"
contours = r"C:\Project\Contours.lyr"
# check out extension
arcpy.CheckOutExtension("foundation")
# Execute Select Features By Symbol Color tool to select brown buildings
arcpy.SelectFeaturesBySymbolColor_production(in_layer, "50000", "CMYK", "43 65 92 0", "ALL_PARTS", "NEW_SELECTION")
# Use the selected features for more processing like generating masks
arcpy.IntersectingLayersMasks_cartography(in_layer, contours,
r"C:\Project\Data.gdb\contour_mask","25000", 26912, "2 Millimeters",
"EXACT_SIMPLIFIED", "")
Environments
Licensing information
- Basic: No
- Standard: Requires Production Mapping
- Advanced: Requires Production Mapping