<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Feature Layer not appearing when map extent changes in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582030#M54329</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Chris,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Let me start by asking a simple question. Why are you not use scale dependency (minScale and maxScale) on those layer instead of trying it this way?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 20 Jun 2016 17:32:59 GMT</pubDate>
    <dc:creator>RobertScheitlin__GISP</dc:creator>
    <dc:date>2016-06-20T17:32:59Z</dc:date>
    <item>
      <title>Feature Layer not appearing when map extent changes</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582029#M54328</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Good afternoon.&amp;nbsp; I have a map service that shows different layers at different scales -- layer 0 has point data, but layers 1 - 4 have polygon data.&amp;nbsp; I am using the JavaScript API to visualize the data, but I am having an issue where at some scales, the feature layer does not show.&amp;nbsp; Unfortunately, my map service is not publicly-available.&amp;nbsp; However, the JavaScript code that I use is below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;html&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;head&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;title&amp;gt;Case 01792708&amp;lt;/title&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;lt;link rel="stylesheet" type="text/css" href="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fjs.arcgis.com%2F3.16%2Fdijit%2Fthemes%2Fclaro%2Fclaro.css" rel="nofollow" target="_blank"&gt;https://js.arcgis.com/3.16/dijit/themes/claro/claro.css&lt;/A&gt;&lt;SPAN&gt;" /&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;lt;link rel="stylesheet" type="text/css" href="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fjs.arcgis.com%2F3.16%2Fesri%2Fcss%2Fesri.css" rel="nofollow" target="_blank"&gt;https://js.arcgis.com/3.16/esri/css/esri.css&lt;/A&gt;&lt;SPAN&gt;" /&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;style type="text/css"&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; html, body, #divMap {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; height: 100%;&lt;/P&gt;&lt;P&gt;&amp;nbsp; width: 100%;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; padding: 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;/style&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;lt;script src="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fjs.arcgis.com%2F3.16%2F" rel="nofollow" target="_blank"&gt;https://js.arcgis.com/3.16/&lt;/A&gt;&lt;SPAN&gt;"&amp;gt;&amp;lt;/script&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;script type="text/javascript"&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var map, grid, fl_url, symbol, polygonSymbol, highlightSymbol, pointSymbol, line, renderer, polygonrenderer, pointrenderer, featureLayer, loading;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var visiblelayers = [], symbolArray = [], labelArray = [];&lt;/P&gt;&lt;P&gt;&amp;nbsp; var renderedField = "somefield", lowCI = "anotherfield", highCI = "yetanotherfield", DataUnavailableTxt = "Data unavailable";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; require([&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "esri/map", "esri/graphic", "esri/layers/FeatureLayer", "esri/geometry/Extent", "esri/geometry/Polygon",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "esri/symbols/SimpleFillSymbol", "esri/layers/ArcGISDynamicMapServiceLayer", "esri/layers/ImageParameters", "esri/InfoTemplate",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "esri/renderers/ClassBreaksRenderer", "esri/tasks/GenerateRendererParameters", "esri/tasks/GenerateRendererTask",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "esri/tasks/ClassBreaksDefinition", "esri/symbols/SimpleMarkerSymbol", "esri/symbols/SimpleLineSymbol", "esri/renderers/SimpleRenderer", "esri/tasks/AlgorithmicColorRamp", "esri/lang", "esri/geometry/Point",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "esri/layers/LayerDrawingOptions", "esri/request", "dojo/dom-construct",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "esri/tasks/query", "esri/Color",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "dojo/on", "dojo/_base/array", "dojox/gfx", "esri/symbols/jsonUtils",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "dojo/_base/array", "dojo/dom", "dijit/form/Button", &lt;/P&gt;&lt;P&gt;&amp;nbsp; "dijit/registry",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "dojo/parser", "dojo/_base/declare",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; "dijit/layout/BorderContainer", "dijit/layout/ContentPane", "dojo/domReady!"&lt;/P&gt;&lt;P&gt;&amp;nbsp; ], function (&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Map, Graphic, FeatureLayer, Extent, Polygon, SimpleFillSymbol, ArcGISDynamicMapServiceLayer, ImageParameters,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; InfoTemplate, ClassBreaksRenderer, GenerateRendererParameters, GenerateRendererTask, ClassBreaksDefinition,&lt;/P&gt;&lt;P&gt;&amp;nbsp; SimpleMarkerSymbol, SimpleLineSymbol, SimpleRenderer, AlgorithmicColorRamp, esriLang, Point, LayerDrawingOptions, esriRequest, domConstruct,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Query, Color,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; on, arrayUtils, gfx, jsonUtils,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; array, dom, Button,&lt;/P&gt;&lt;P&gt;&amp;nbsp; registry,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; parser, declare, BorderContainer, ContentPane, ready&lt;/P&gt;&lt;P&gt;&amp;nbsp; )&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; parser.parse();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; // define symbols&lt;/P&gt;&lt;P&gt;&amp;nbsp; highlightSymbol = new SimpleFillSymbol(&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; SimpleFillSymbol.STYLE_SOLID,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; new SimpleLineSymbol(&lt;/P&gt;&lt;P&gt;&amp;nbsp; SimpleLineSymbol.STYLE_SOLID,&lt;/P&gt;&lt;P&gt;&amp;nbsp; new Color([91, 91, 91]), 3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; new Color([125, 125, 125, 0.35])&lt;/P&gt;&lt;P&gt;&amp;nbsp; );&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; polygonSymbol = new SimpleFillSymbol().setStyle(SimpleFillSymbol.STYLE_SOLID).setOutline(new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new Color([85, 85, 85]), 1)).setColor(new Color([153, 153, 153]));&lt;/P&gt;&lt;P&gt;&amp;nbsp; //polygonsymbol = new SimpleFillSymbol();&lt;/P&gt;&lt;P&gt;&amp;nbsp; //polygonsymbol.setColor(new Color([150, 150, 150, 0.5]));&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointSymbol = new SimpleMarkerSymbol().setStyle(SimpleMarkerSymbol.STYLE_CIRCLE).setSize(8).setOutline(new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new Color([85, 85, 85]), 1)).setColor(new Color([153, 153, 153]));&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var DynamicMapServiceLayerURL = "myUrl";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var imageParameters = new ImageParameters();&lt;/P&gt;&lt;P&gt;&amp;nbsp; imageParameters.format = "png";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var dynamicMapServiceLayer = new ArcGISDynamicMapServiceLayer(DynamicMapServiceLayerURL, {&lt;/P&gt;&lt;P&gt;&amp;nbsp; "opacity": 1.0,&lt;/P&gt;&lt;P&gt;&amp;nbsp; "imageParameters": imageParameters&lt;/P&gt;&lt;P&gt;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; // always show State boundaries&lt;/P&gt;&lt;P&gt;&amp;nbsp; //visiblelayers.push(1);&lt;/P&gt;&lt;P&gt;&amp;nbsp; //dynamicMapServiceLayer.setVisibleLayers(visiblelayers);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; // define the initial extent of the map&lt;/P&gt;&lt;P&gt;&amp;nbsp; var initialExtent = new esri.geometry.Extent({&lt;/P&gt;&lt;P&gt;&amp;nbsp; "xmin": -14901092.916080378,&lt;/P&gt;&lt;P&gt;&amp;nbsp; "ymin": 2570827.677759068,&lt;/P&gt;&lt;P&gt;&amp;nbsp; "xmax": -7382135.317726159,&lt;/P&gt;&lt;P&gt;&amp;nbsp; "ymax": 7046980.0541378,&lt;/P&gt;&lt;P&gt;&amp;nbsp; "spatialReference": { "wkid": 102100 }&lt;/P&gt;&lt;P&gt;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; // add a map to the page&lt;/P&gt;&lt;P&gt;&amp;nbsp; map = new Map("divMap", {&lt;/P&gt;&lt;P&gt;&amp;nbsp; zoom: 9,&lt;/P&gt;&lt;P&gt;&amp;nbsp; basemap: "topo",&lt;/P&gt;&lt;P&gt;&amp;nbsp; extent: initialExtent//,&lt;/P&gt;&lt;P&gt;&amp;nbsp; //infoTemplate: infoTemplate//,&lt;/P&gt;&lt;P&gt;&amp;nbsp; //infoTemplate: popup&lt;/P&gt;&lt;P&gt;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; function showErr(err)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; 'use strict;'&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Error Details: " + err);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; function applyPolygonRenderer(polygonrenderer)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Polygon symbol:" + polygonSymbol);&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Polygon renderer:" + polygonrenderer);&lt;/P&gt;&lt;P&gt;&amp;nbsp; polygonrenderer.defaultSymbol = polygonSymbol;&lt;/P&gt;&lt;P&gt;&amp;nbsp; polygonrenderer.defaultLabel = "Data unavailable";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; featureLayer.setRenderer(polygonrenderer);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; //map.removeLayer("operationallayer");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.addLayers([featureLayer]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; function applyPointRenderer(pointrenderer)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Point symbol:" + pointSymbol);&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Point renderer:" + pointrenderer);&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointrenderer.defaultSymbol = pointSymbol;&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointrenderer.defaultLabel = "Data unavailable";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; featureLayer.setRenderer(pointrenderer);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; //map.removeLayer("operationallayer");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.addLayers([dynamicMapServiceLayer, featureLayer]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; function createPolygonRenderer(field)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; var classDef = new ClassBreaksDefinition();&lt;/P&gt;&lt;P&gt;&amp;nbsp; classDef.classificationField = field;&lt;/P&gt;&lt;P&gt;&amp;nbsp; classDef.classificationMethod = "quantile";&lt;/P&gt;&lt;P&gt;&amp;nbsp; classDef.breakCount = 4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; classDef.baseSymbol = polygonSymbol;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var colorRamp = new AlgorithmicColorRamp();&lt;/P&gt;&lt;P&gt;&amp;nbsp; colorRamp.fromColor = new Color.fromHex("#F0F9E8");&lt;/P&gt;&lt;P&gt;&amp;nbsp; colorRamp.toColor = new Color.fromHex("#2b8cbe");&lt;/P&gt;&lt;P&gt;&amp;nbsp; colorRamp.algorithm = "hsv";&lt;/P&gt;&lt;P&gt;&amp;nbsp; classDef.colorRamp = colorRamp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var params = new GenerateRendererParameters();&lt;/P&gt;&lt;P&gt;&amp;nbsp; params.classificationDefinition = classDef;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var generatePolygonRenderer = new GenerateRendererTask(fl_url);&lt;/P&gt;&lt;P&gt;&amp;nbsp; generatePolygonRenderer.execute(params, applyPolygonRenderer, showErr);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; function createPointRenderer(field)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; var pointclassDef = new ClassBreaksDefinition();&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointclassDef.classificationField = field;&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointclassDef.classificationMethod = "quantile";&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointclassDef.breakCount = 4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointclassDef.baseSymbol = pointSymbol;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var pointcolorRamp = new AlgorithmicColorRamp();&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointcolorRamp.fromColor = new Color.fromHex("#F0F9E8");&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointcolorRamp.toColor = new Color.fromHex("#2b8cbe");&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointcolorRamp.algorithm = "hsv";&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointclassDef.colorRamp = pointcolorRamp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var pointparams = new GenerateRendererParameters();&lt;/P&gt;&lt;P&gt;&amp;nbsp; pointparams.classificationDefinition = pointclassDef;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var generatePointRenderer = new GenerateRendererTask(fl_url);&lt;/P&gt;&lt;P&gt;&amp;nbsp; generatePointRenderer.execute(pointparams, applyPointRenderer, showErr);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; // adds a feature layer to the map, based on the layer to show and based on the field on which to classify the data&lt;/P&gt;&lt;P&gt;&amp;nbsp; function addFeatureLayer(layerid, fieldRendered)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; fl_url = DynamicMapServiceLayerURL + "/" + layerid;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; featureLayer = new FeatureLayer(fl_url, {&lt;/P&gt;&lt;P&gt;&amp;nbsp; mode: FeatureLayer.MODE_ONDEMAND,&lt;/P&gt;&lt;P&gt;&amp;nbsp; outFields: ["*"],&lt;/P&gt;&lt;P&gt;&amp;nbsp; //infoTemplate: infoTemplate,&lt;/P&gt;&lt;P&gt;&amp;nbsp; id: "operationallayer"&lt;/P&gt;&lt;P&gt;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; featureLayer.on("mouse-over", function (evt)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.graphics.clear();&amp;nbsp; //use the maps graphics layer as the highlight layer&lt;/P&gt;&lt;P&gt;&amp;nbsp; var graphic = evt.graphic;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.infoWindow.setContent(graphic.getContent());&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.infoWindow.setTitle(graphic.getTitle());&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (evt.graphic.geometry.type === 'point')&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; var highlightGraphic = new Graphic(graphic.geometry, pointSymbol);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; else&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; var highlightGraphic = new Graphic(graphic.geometry, highlightSymbol);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.graphics.add(highlightGraphic);&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.infoWindow.show(evt.screenPoint, map.getInfoWindowAnchor(evt.screenPoint));&lt;/P&gt;&lt;P&gt;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; switch (layerid)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; case 0:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setVisibleLayers([1]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; createPointRenderer(fieldRendered);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case 1:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setVisibleLayers([1, 2]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; symbol = new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new Color([85, 85, 85]), 1);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; renderer = new SimpleRenderer(symbol);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var optionsArray = [];&lt;/P&gt;&lt;P&gt;&amp;nbsp; var drawingOptions = new LayerDrawingOptions();&lt;/P&gt;&lt;P&gt;&amp;nbsp; drawingOptions.renderer = renderer;&lt;/P&gt;&lt;P&gt;&amp;nbsp; optionsArray[2] = drawingOptions;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setLayerDrawingOptions(optionsArray);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.addLayers([dynamicMapServiceLayer]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case 2:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setVisibleLayers([1, 2]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; symbol = new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new Color([85, 85, 85]), 1);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; renderer = new SimpleRenderer(symbol);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var optionsArray = [];&lt;/P&gt;&lt;P&gt;&amp;nbsp; var drawingOptions = new LayerDrawingOptions();&lt;/P&gt;&lt;P&gt;&amp;nbsp; drawingOptions.renderer = renderer;&lt;/P&gt;&lt;P&gt;&amp;nbsp; optionsArray[2] = drawingOptions;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setLayerDrawingOptions(optionsArray);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.addLayers([dynamicMapServiceLayer]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case 3:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; createPolygonRenderer(fieldRendered);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case 4:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; createPolygonRenderer(fieldRendered);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; default:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setVisibleLayers([1]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; symbol = new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new Color([85, 85, 85]), 1);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; renderer = new SimpleRenderer(symbol);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var optionsArray = [];&lt;/P&gt;&lt;P&gt;&amp;nbsp; var drawingOptions = new LayerDrawingOptions();&lt;/P&gt;&lt;P&gt;&amp;nbsp; drawingOptions.renderer = renderer;&lt;/P&gt;&lt;P&gt;&amp;nbsp; optionsArray[2] = drawingOptions;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setLayerDrawingOptions(optionsArray);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.addLayers([dynamicMapServiceLayer]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; function addLayerToMap()&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; switch (true)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; case (map.getScale() &amp;gt;= 36978595): // point layer&lt;/P&gt;&lt;P&gt;&amp;nbsp; addFeatureLayer(0, renderedField);&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case (map.getScale() &amp;lt; 36978595 &amp;amp;&amp;amp; map.getScale() &amp;gt;= 6000000):&lt;/P&gt;&lt;P&gt;&amp;nbsp; addFeatureLayer(2, renderedField);&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case (map.getScale() &amp;lt; 6000000 &amp;amp;&amp;amp; map.getScale() &amp;gt; 2311162):&lt;/P&gt;&lt;P&gt;&amp;nbsp; addFeatureLayer(3, renderedField);&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; case (map.getScale() &amp;lt;= 2311162): // polygon layer&lt;/P&gt;&lt;P&gt;&amp;nbsp; addFeatureLayer(4, renderedField);&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; default:&lt;/P&gt;&lt;P&gt;&amp;nbsp; addFeatureLayer(1, renderedField);&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.on("load", function ()&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; // log some info&lt;/P&gt;&lt;P&gt;&amp;nbsp; //var geo = map.geographicExtent;&lt;/P&gt;&lt;P&gt;&amp;nbsp; //console.log(geo.xmin, geo.ymin, geo.xmax, geo.ymax);&lt;/P&gt;&lt;P&gt;&amp;nbsp; //console.log("Level: " + map.getLevel() + "; Scale:" + map.getScale());&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Map loaded");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.graphics.enableMouseEvents();&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.infoWindow.resize(275, 150);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addLayerToMap();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }, showErr);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.on("extent-change", function ()&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Map extent changed");&lt;/P&gt;&lt;P&gt;&amp;nbsp; console.log("Level: " + map.getLevel() + "; Scale:" + map.getScale());&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; addLayerToMap();&lt;/P&gt;&lt;P&gt;&amp;nbsp; }, showErr);&lt;/P&gt;&lt;P&gt;&amp;nbsp; });&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;/script&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;/head&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;body&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;div id="divMap"&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;lt;/body&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;/html&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When the map renders, a layer draws.&amp;nbsp; On zooming out, the same layer draws, as expected (it is at the same scale).&amp;nbsp; However, continued zooming out to the point layer data scale does not result in the points being displayed.&amp;nbsp; The reverse is also true.&amp;nbsp; If I load the map at the zoom level for points to show, the polygon layers do not show.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas on what could possibly wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks...Chris&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2016 16:32:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582029#M54328</guid>
      <dc:creator>ChristopherJohnson1</dc:creator>
      <dc:date>2016-06-20T16:32:51Z</dc:date>
    </item>
    <item>
      <title>Re: Feature Layer not appearing when map extent changes</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582030#M54329</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Chris,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Let me start by asking a simple question. Why are you not use scale dependency (minScale and maxScale) on those layer instead of trying it this way?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2016 17:32:59 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582030#M54329</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2016-06-20T17:32:59Z</dc:date>
    </item>
    <item>
      <title>Re: Feature Layer not appearing when map extent changes</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582031#M54330</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Robert.  Thanks for the reply.  Can you clarify your question, please?  On the map service, there are display rules that determine which layers display at which scale.  However, I am using the generateRenderer function to display the data, based upon a user’s selection of classification method and number of classes.  I hope that this helps to clarify my approach.  If not, let me know the other questions you may have.  I appreciate your help.  Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2016 18:04:42 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582031#M54330</guid>
      <dc:creator>ChristopherJohnson1</dc:creator>
      <dc:date>2016-06-20T18:04:42Z</dc:date>
    </item>
    <item>
      <title>Re: Feature Layer not appearing when map extent changes</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582032#M54331</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Robert, I believe that your question led me to an answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I utilized the code below in the applyRenderer functions and it seems to be working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;var optionsArray = [];&lt;/P&gt;&lt;P&gt;&amp;nbsp; var drawingOptions = new LayerDrawingOptions();&lt;/P&gt;&lt;P&gt;&amp;nbsp; drawingOptions.renderer = renderer;&lt;/P&gt;&lt;P&gt;&amp;nbsp; optionsArray[5] = drawingOptions;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dynamicMapServiceLayer.setLayerDrawingOptions(optionsArray);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; map.addLayers([dynamicMapServiceLayer]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Chris&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2016 18:33:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582032#M54331</guid>
      <dc:creator>ChristopherJohnson1</dc:creator>
      <dc:date>2016-06-20T18:33:10Z</dc:date>
    </item>
    <item>
      <title>Re: Feature Layer not appearing when map extent changes</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582033#M54332</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Chris,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Glad that got you going in the right direction.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2016 18:53:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582033#M54332</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2016-06-20T18:53:49Z</dc:date>
    </item>
    <item>
      <title>Re: Feature Layer not appearing when map extent changes</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582034#M54333</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Robert, thanks for your help with this so far.&amp;nbsp; As I mentioned below, I have an alternate method of using the LayerDrawingOptions,&amp;nbsp; but I need to use the feature layer, as I am using a feature table that depends on the feature layer.&amp;nbsp; Can you tell me the reason (from looking at the code) that the renderer is not appearing when I change map extents when using the generateRenderer function, as shown above?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any help would be greatly appreciated.&amp;nbsp; Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Chris&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 Jun 2016 13:56:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/feature-layer-not-appearing-when-map-extent/m-p/582034#M54333</guid>
      <dc:creator>ChristopherJohnson1</dc:creator>
      <dc:date>2016-06-29T13:56:56Z</dc:date>
    </item>
  </channel>
</rss>

