require(["esri/renderers/smartMapping/creators/location"], function(locationRendererCreator) { /* code goes here */ });
Object: esri/renderers/smartMapping/creators/location
Since: ArcGIS API for JavaScript 4.2

This object contains helper methods for generating location-only visualizations (not data-driven) in a Layer. The createRenderer() method generates a SimpleRenderer object that may be applied directly to the layer. This renderer contains a single symbol with a color optimally selected based on the indicated basemap.

Known Limitations

  • Generating 3D symbols is currently limited to layers with a point geometry type.
  • Only FeatureLayer, SceneLayer, and CSVLayer layer types are currently supported.

Method Overview

NameReturn TypeSummaryObject
Promise<RendererResult>

Generates a Renderer that may be applied directly to a supported Layer.

more details
more detailslocation

Method Details

createRenderer(params){Promise<RendererResult>}

Generates a Renderer that may be applied directly to a supported Layer. The renderer contains a single symbol with a color optimally chosen based on the indicated basemap.

In most cases you will provide a layer and basemap to generate this renderer. If working in a 3D SceneView, then the view and symbolType options should be used.

Parameters:
params Object

Input parameters for generating a location-based visualization. See the table below for details of each parameter.

Specification:

The layer for which the visualization is generated.

basemap String|Basemap
optional
Default Value: gray

The named string or basemap object of the Esri basemap that will be paired with the output visualization.

locationScheme LocationScheme
optional

In authoring apps, the user may select a pre-defined location scheme. Pass the scheme object to this property to avoid getting one based on the basemap.

optional

The SceneView instance in which the visualization will be rendered. This parameter is required if symbolType = "3d-volumetric", except for layers with a mesh geometryType.

symbolType String
optional
Default Value: 2d

The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter does not need to be specified for layers with a mesh geometry type. Possible values are described below.

ValueDescription
2dGenerates a visualization using 2D symbols such as SimpleMarkerSymbol, SimpleLineSymbol, or SimpleFillSymbol. Use this option if generating a visualization for data in a MapView.
3d-flatGenerates a visualization using 3D symbols with flat symbol layers such as IconSymbol3DLayer, LineSymbol3DLayer, or FillSymbol3DLayer. Use this option if generating a 2D visualization for data in a SceneView.
3d-volumetricGenerates a visualization using 3D symbols with volumetric symbol layers such as ObjectSymbol3DLayer, PathSymbol3DLayer, or ExtrudeSymbol3DLayer. Use this option if generating a 3D visualization for data in a SceneView. A SceneView instance must be provided to the view parameter if this option is used.
colorMixMode String
optional
Default Value: replace

This option only applies to generating renderers for mesh SceneLayers. Specifies how the symbol's color is applied to the geometry color/texture. See the documentation in FillSymbol3DLayer.material for more context. See the table below for possible values.

ValueDescription
tintApplies the symbol color to the desaturated geometry/texture color.
replaceRemoves the geometry/texture color and applies the symbol color.
multiplyMultiplies geometry/texture color value with the symbol color value. The result is a darker color. Multiplying with white keeps the geometry color the same.
Returns:
TypeDescription
Promise<RendererResult>Resolves to an instance of RendererResult.
Example:
var layer = new FeatureLayer({
  url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/counties_politics_poverty/FeatureServer/0"
});

// simple visualization to indicate features with a single symbol
var params = {
  layer: layer,
  basemap: map.basemap  // "satellite"
};

// when the promise resolves, apply the renderer to the layer
locationRendererCreator.createRenderer(params)
  .then(function(response){
    layer.renderer = response.renderer;
  });

Type Definitions

RendererResult

The result object of the createRenderer() method. See the table below for details of each property.

Properties:

A simple renderer configured with a single color best suited to match the given basemap. Set this to a layer's renderer property to update its visualization.

locationScheme LocationScheme

The location scheme used by the renderer.

basemapId String

The ID of the basemap used to determine the optimal fill color of the features.

API Reference search results

NameTypeModule
Loading...