Upload
others
View
22
Download
0
Embed Size (px)
Citation preview
ArcGIS for Developers Part 2• Andy Gup• Michael Branscomb
ArcGIS API for JavaScript
• 2D and 3D visualizations
• Simple and consistent API
• Rich visualizations possible with simple layer styling
• Works well with various JS frameworks and development environments
• High performance display- WebGL driven
- Client side engines for local processing of data
https://developers.arcgis.com/javascript/
JavaScript API Intro Demo
ArcGIS API for JavaScript2D and 3D Mapping
• Programming pattern similar between 2D and 3D views- Views share implementation for layers, renderers, tasks, geometry, symbology, pop-ups, and
navigation
• 3D adds specific capabilities for environmental aspects and camera
• Unique 3D symbology
• Data driven visualization
Maps, Scenes and Layers Demo
ArcGIS API for JavaScriptHigh Performance Map Display
• Combination of fast rendering on the client and efficient delivery of content
• Tiled feature services support efficient delivery of GIS features- Tiles generated on the fly on the server and cached
- Updated automatically when underlying data changes
- Geometry and attributes are sent to client
- Supports editing
• Vector Tiles supported when full features or data currency not required- After initial creation less server load
Rendering Performance Demo
ArcGIS API for JavaScriptAnalytics Server and Client Side
• Local engines- Geometry
- Projection
• Interactive scene analysis
• Network analysis on the server
• Geoprocessing on the server
Analysis Demo
ArcGIS API for JavaScriptUser Experience
• Responsive user interface design
• Comprehensive widget set means rapid application development- Over 25 widgets including; Legend, Coordinate conversion, Measure, Search, Popup, Print, …
- Rich popup implementation
- Consistent out of the box styling
• Possible to reuse business logic and style custom user interfaces - Use themes, write your own CSS styles or customization via SASS
- Repurpose widgets to work with frameworks such as React, Angular, Vue and others.
Agenda
• Overview• Capabilities• Developer Resources
Agenda
• Overview• Capabilities• Developer Resources
Device
ArcGIS Online
ArcGIS Enterprise
Overview
App
ArcGIS Runtime API
ArcGISRuntime
OGC ServicesLocal Data
Runtime on multiple devices
Overview – ArcGIS Runtime SDKsNative App Development
• Support 6 operating systems / platforms- Android, iOS, macOS, Linux, Universal Windows Platform (UWP) and Windows
• 5 APIs- .NET, Android, iOS, Java, and Qt
• You select the development environment of your choice- Integrates with your solution- Makes you productive
• Your users benefit from the optimum solution
https://developers.arcgis.com/arcgis-runtime/
Overview – ArcGIS Runtime SDKsWhy Build a Native App?
• Native apps give the best performance• Fully leverage device capabilities• Access all peripherals via their native SDKs• Best debugging experience• Offline use of ArcGIS
- Maps, scenes, editing, analysis, routing…
Overview – ArcGIS RuntimeAn Architecture Designed to Maximize Performance and Reuse
C++ runtime core
WinLinux OS XAndroid iOS UWP
x86 x64 ARM ARM64DirectXOpenGLOpenGL ES
Agenda
• Overview• Capabilities• Developer Resources
Working with Layers
Capabilities – ArcGIS Runtime SDKsWorking with Layers from Services
• Feature layer• Raster layer• Map Image Layer• Scene Layer• Vector tiles• Raster tiles• OGC services
- WMTS, WMS, KML and WFS*
* Release in Q1 2019
Capabilities – ArcGIS Runtime SDKsLayers from Local GIS Data
• Feature Layer with vector data- Mobile Geodatabase, GeoPackage, Shapefile
• ENC Layer – S57 with S52 symbology; S-63 data protection support• Raster Layer
- Mosaic dataset, GeoPackage, - Raster file formats: ASRP/USRP, CRF, DTED, GeoTIFF/TIFF, HFA, HRE, IMG, JPEG, JPEG2000, NITF, PNG, RPF, SRTM (HGT), USGS DEM
• KML Layer- OGC KML 2.2 + extensions; OGC KML 2.3
• Mobile Map Packages• Mobile Scene Packages*• Scene Layer Packages• Raster Tile Package Basemaps• Vector Tile Package Basemaps * Release in Q1 2019
Working with Maps
Capabilities – ArcGIS Runtime SDKsWorking with Maps
• Working with maps- Maps are a central API component
- Build a Map, display it in a MapView- Maps are created from items or code
• Platform sharing of maps and layers- Share & consume maps from Portal, ArcGIS Pro or other apps- Share maps and layers in Mobile Map Packages
• Offline maps and layers- Take maps and layers offline using on-demand or pre-planned workflows
Working with Scenes
ArcGIS Runtime SDKsWorking with 3D Content
• High performance on desktops and mobile devices• 2D layers work in 3D• Specific 3D layers for 3D content
- Terrain- 3D features- Models- Integrated meshes*- Point clouds*
• Services for connected scenarios • Packages for offline scenarios
* Release in Q1 2019
Analysis
ArcGIS Runtime SDKsAnalysis
• Works with services- Geoproessing- Network analyst- Geocoding
• Local Engines- Geometry- Projection- Network- Geocoding
• Interactive 3D Analysis- Viewshed - Line of Sight- Measure
Real-time Performance
ArcGIS Runtime SDKsUltimate Performance
• Device capabilities continue to grow• Harnessing this power is critical for tomorrows Apps• ArcGIS Runtime brings it all together
- Display- Data access- Analytics
• Online and offline• ArcGIS Runtime enables you to build apps with large data volumes updating in real-time
Augmented and Virtual Reality
ArcGIS Runtime AR / VR Beta Program
• Started November 2017• Available for ArcGIS Runtime SDKs for:
- Android- iOS- .NET (Xamarin.Android, Xamarin.iOS)
• Targeting mobile devices• Includes beta API to support building AR or VR
Request access to the beta program: [email protected]
ArcGIS Runtime – Augmented Reality
• Initial release will focus on capabilities of the predominant AR platforms- ARKit – iOS- ARCore – Android
• Available for ArcGIS Runtime SDKs for:- Android- iOS- .NET (Xamarin.Android, Xamarin.iOS)
• Two scenarios- Small scale representations of virtual content placed in the real world ‘Table top’- Full scale real world view
Agenda
• Overview• Capabilities• Developer Resources
ArcGIS for Developers - developers.arcgis.com
• Your starting point for finding ArcGIS Runtime SDK resources- Sign up to receive credits for developing and testing your apps!
• Downloads- ArcGIS Runtime SDKs for all platforms
• Documentation- Developers guide, API reference, Samples documentation
• Samples- Focused samples to illustrate API functionality- Full example apps
• Tutorials- DevLabs: Data, Design, and Develop
• Toolkit
Start here!
Documentation
• Developers guide – developers.arcgis.com/documentation/- Conceptual documentation with focused examples (snippets)
- High-level documentation that applies to all ArcGIS Runtime SDKs- .NET-specific documentation
• API reference – developers.arcgis.com/net/latest/wpf/api-reference/- Documentation for each class and member in the API
• Sample documentation – developers.arcgis.com/net/latest/wpf/sample-code/- Brief description and screenshot of the sample- Relevant code (text)
Sample code
• Sample viewer projects github.com/esri/arcgis-runtime-samples-dotnet- Contains all source code for over 130 samples on all platforms- Small examples of focused API functionality- Add layers, create symbols, run a geoprocessing tool
• Demos - github.com/Esri/arcgis-runtime-demos-dotnet- Larger samples that illustrate some common workflows- Portal item browser, turn-by-turn routing, external GPS
• Example apps - developers.arcgis.com/example-apps/- Focused functional apps: indoor routing, map viewer, data collection- All source code (github.com/esri/)- Well documented and configurable
Tutorials and support
• DevLabs – developers.arcgis.com/labs/- Short focused tutorials- Most will take 15 minutes or less to complete- Guides you through all aspects of creating a custom map app
- Data – Import data, create a new dataset, share your content- Design – Style a web map, configure pop-ups- Develop – Search and geocode, display a map, access private layers
- Includes solution code (or data)
• GeoNet – ArcGIS Runtime SDK for .NET community.esri.com/community/developers/native-app-developers/arcgis-runtime-sdk-for-net/- Public forum for questions, discussion, blogs, etc.
Additional controls and utilities (toolkit)
• Toolkit project – github.com/Esri/arcgis-toolkit-dotnet- UI controls to provide additional functionality- Includes all source code and samples- Available as a NuGet package
- Compass- Layer legend- Scale line- Symbol display- Time slider- and more …
Example Apps
Learn from Esri developersProduction quality apps built by Esri developers and released open source for you to use
Don’t start from scratchReleased under Apache 2.0 license so you can make them your own
Receive the support you needBuilt and maintained by the Example Apps team
Help the community (if you want)Fix issues, submit PRs, and contribute your ideas and hard work to the community
https://developers.arcgis.com/example-apps/
Summary
• Extension APIs for customizing and extending ArcGIS- Desktop- Server
• Client APIs for building Apps- Web- Mobile- Desktop
Questions
Print Your Certificate of AttendancePrint Stations Located at L Street Bridge
Tuesday Wednesday12:30 pm – 6:30 pm GIS Solutions Expo Hall D
5:15 pm – 6:30 pm GIS Solutions Expo SocialHall D
10:45 am – 5:15 pm GIS Solutions Expo Hall D
6:30 pm – 9:00 pm Networking ReceptionNational Museum ofNatural History
Please Take Our Survey on the AppDownload the Esri Events app and find your event
Select the session you attended
Scroll down to find the feedback section
Complete answersand select “Submit”