Hide Table of Contents
Tutorials
About the API
Work with the API
Graphics and feature layers
Popups and Info Windows
Mobile
ArcGIS Server Services
References
What's New archive
Smart Mapping is a new approach that both developers and users of the ArcGIS platform will be able to leverage for making maps that are useful and visually stunning. This exciting new capability will increase productivity in developing and configuring applications by taking the guesswork out of the various decisions involved in generating cartographically appropriate, yet visually stunning maps. The goal is to be smarter about how the initial parameters of the map (color, scale, styling, etc.) are calculated so both novice and experienced developers/users will have better tools at their disposal to configure settings and visualize map data.
Cartographic workflows simplified by Smart Mapping options include:
Common mapping questions that Smart Mapping will help answer:
For more information on Smart Mapping see the Introducing Smart Mapping blog article, Smart Mapping video on esritv, API Reference, and sample below.
esri/renderers/smartMapping moduleFeatureLayerStatistics plugin
A new synchronous and asynchronous client-side geometry engine is part of this release. There are over 30 different methods for performing operations that previously would have required a round-trip to a server. For more information on the these new modules, follow the previous links. Note: These features are currently in beta.
require([
"esri/geometry/Point",
"esri/geometry/geometryEngine",
"esri/SpatialReference"
], function (Point, geometryEngine, SpatialReference){
var pt1 = new Point(-118.15, 33.80, new SpatialReference({wkid: 4326}));
var pt2 = new Point(-119.15, 32.80, new SpatialReference({wkid: 4326}));
// Using Module to Union
var union = geometryEngine.union([pt1, pt2]);
console.log("geometryEngine.union: %o", union);
});
The Search Widget supersedes the Geocoder Widget (now deprecated). It's been reimagined, renamed and redesigned to provide a single searching and suggestion experience. It allows you to search across multiple Locator and Feature Layer services from a simple interface.
The Search dijit was designed to handle multiple types of sources including Locator tasks, Feature Layers and potentially others, whereas the Geocoder dijit is limited to only searching Locator tasks. You can customize the Search dijit to search or get suggestions from all defined sources or limit it to a single source. The user interface has been improved to handle searching one or more of these sources.
Much of the same functionality found in the Geocoder widget is also present in the Search widget, but many new features have been added and redesigned for a better user and developer experience. As a developer, it should be easier for you to configure the Search widget and involve writing less code to handle common searching tasks.
For more information, see the Working with the Search Widget topic and the Search Widget API reference, in addition to these samples:
There are new ways to visualize and interact with image services on client side through two new layer classes: ArcGISImageServiceVectorLayer and RasterLayer.
ArcGISImageServiceVectorLayer displays image service pixel values with vector point symbols. The image services supported by this layer are two-band rasters that serve vector field data (as U-V or Magnitude-Direction). For more information, see the ArcGISImageServiceVectorLayer API reference and this sample.
RasterLayer is used to display image services. Upon creation, the layer retrieves image data from a specified image service and applies client side pixel filtering (e.g. mask, stretch, etc.). This layer is particularly useful when the user needs to interactively manipulate pixel values and get an immediate response. For more information, see the RasterLayer API reference and this sample.
useMyCurrentLocation() method.
mapClickActive property. This replaces the deprecated activate() and deactivate() methods.showActivateButton allows for making the button visible or non-visible.map-click-active event fires each time the button's state changes. This replaces the deprecated activate and deactivate events.The Analysis Widgets were released at version 3.12. See Working with Analysis Widgets for general information or the API Reference pages for the details.
<script>var dojoConfig = {locale: "el"};</script> to any code sample to see it in Greek. <script>var dojoConfig = {locale: "tr"};</script> to any code sample to see it in Turkish.StreamLayer sample to support spatial filtering and Stream Service endpoint.ClassedColorSliderClassedSizeSliderColorInfoSliderColorPickerHeatmapSliderHorizontalSliderOpacitySliderRendererSliderSearchSizeInfoSliderSymbolStyleresri/dijit/util/busyIndicatorVisibleScaleRangeSlideresri/geometry/geometryEngineesri/geometry/geometryEngineAsyncArcGISImageServiceVectorLayerPixelBlockRasterLayerFeatureLayerStatisticsesri/renderers/smartMappingVectorFieldRendereresri/styles/basicesri/styles/choroplethesri/styles/heatmapesri/styles/sizeesri/styles/typefolderId, folderName on class AnalysisBasemapClickActive, showActivateButton on class DirectionsgraphicsLayer on class Geocodercache on class GeometrypurgeInterval on class StreamLayer.on("activate"), .on("deactivate"), .on("map-click-active") on class Directions.on("visible-layers-change") on class ArcGISDynamicMapServiceLayer.on("purge-interval-change") on class StreamLayeruseMyCurrentLocation() on class Directionsstartup() on class ScalebargetNode() on object esri/domUtilsclearCache(), getCacheValue(), setCacheValue() on class GeometrygetUnitValueForSR() on object esri/geometry/scaleUtilsstripTags() on object esri/langsetPurgeInterval() on class StreamLayerBe certain to check out any updates to the repository on GitHub with TypeScript definitions for the JS API as well as the jshint options file used by the JS API team.
Version 3.13 of the ArcGIS API for JavaScript uses Dojo 1.10.4. dgrid version 0.3.17. put-selector version 0.3.6 and xstyle version 0.1.3 are also included.