building 3d web applications - amazon s3...web 3d client architecture • developers now need to...

43
Building 3D Web Applications with ArcGIS Moxie Zhang | Javier Gutierrez

Upload: others

Post on 11-May-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Building 3D Web Applications with ArcGIS

Moxie Zhang | Javier Gutierrez

Page 2: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Topics

Introduce Web 3D

- Why Web 3D for ArcGIS - Use cases - What is Web 3D for

ArcGIS - Web 3D Architecture

What’s New and Road Ahead

- Scene Service - Web Scene - Elevation - Symbology

Develop Web 3D Apps

- Create 3D map environment

- Add 3D data - Visualize feature data - Use geoprocess - Render 3D Symbols - More …

Page 3: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Why Web 3D

Page 4: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Our users are solving real life problems using 3D tools, on the Web

WE LIVE IN A 3D WORLD

Page 5: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Introduce

Web 3D for ArcGIS

Page 6: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Web 3D initiative Enable 3D GIS on mobile devices & browsers

Story Telling in 3D

Asset Management in 3D

Situational Awareness in 3D

Page 7: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Esri is developing 3D technologies around world and around the clock

Redlands Zurich

Beijing

Page 8: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Develop Web 3D Applications

Page 9: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Web 3D – Overview New 3D Service, Viewer, Apps and APIs

3D Scene Service

ArcGIS Platform

ArcGIS Server, Online, Portal

Web Scene

ArcGIS Professional

ArcGIS Online/Portal

Developers

ArcGIS API for JavaScript

ArcGIS Runtime SDKs 3rd Party

tools

Web Scene Layer

Page 10: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Web 3D Client Architecture

Page 11: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Loosely coupled

implementation(s)

Abstracted public

API methods

Web 3D Client Architecture

• ArcGIS API for JavaScript with 3D capabilities

- New internal architecture but same* public JS API classes

* 99% backwards compatible code + new classes for 3D

Viewport(s) LayerView(s)

Map Layer

Page 12: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Loosely coupled

implementation(s)

Abstracted public

API methods

Web 3D Client Architecture

• Developers now need to choose between a Viewport type:

- 2D, 3D WebGL or 3D Plugin

* 99% backwards compatible code + new classes for 3D

2D Viewport

Layer Map

3D Viewport

2D LayerView

3D LayerView

Page 13: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Demo: Map and Viewport

Page 14: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Demo: Map and Viewport

Page 15: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

New ArcGIS API for Javascript 3D Capabilities

• Same Javascript class model extended with - New 3D Layer (Scene Service Layer) - New 3D Symbology - New 3D Mesh geometry type - Added Z values to geometries

• Same programming pattern that has been taught, learned and used for many years

• The 3D core and rendering technologies are transparent to developers and browser-independent

Page 16: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Let’s Code

Page 17: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Create a Map

Page 18: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Add a Basemap

Page 19: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 20: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Add 3D Scene Service Layer

Page 21: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 22: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Add A Dynamic Map Layer

Page 23: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 24: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Add a Graphic Layer

Page 25: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Add a Feature Service Layer

Page 26: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 27: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 28: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

3D Symbology

Page 29: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 30: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Running a Geoprocess

Page 31: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 32: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Demo: Elevation

Page 33: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

The latest and more…

Page 34: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Intro to ArcGIS Scene Service

• New service type in ArcGIS Server • For 3D vector data (mesh, point, line, polygon) • Based on vector cache (i3s)

- Spatial index - Level of detail - Optimized data encoding

• Data streaming through REST • Client-side rendering

Page 35: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Consuming ArcGIS Scene Service

• JS API - Scene Service Layer • How does it work?

- Quad-tree node traversal - Based on distance to camera - Level of Detail support - 3D Geometry / Textures

• How to use it?

Page 36: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Demo: Scene Service Layer

Page 37: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Web Scene

Web Scene

Desktop Web Device

Server Online Content and Services

• New in ArcGIS Online and Portal

• Mash-up of 3D / 2D layers

• Web Scene Viewer and Author

• Built with the JavaScript API

Page 38: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Web Scene – designed for 3D

- 3D Layers - 3D Symbology - 3D Labels - Table of Contents - 3D Popups - Tours - …

Page 39: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

Demo: Web Scene viewer

Page 40: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

ArcGIS WebApp Builder for 3D Demo

Page 41: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible

2014 Developer Summit

2014 User Conference

2014 ArcGIS 10.x

Road Ahead

Page 42: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible
Page 43: Building 3D Web Applications - Amazon S3...Web 3D Client Architecture • Developers now need to choose between a Viewport type: -2D, 3D WebGL or 3D Plugin * 99% backwards compatible