Skip to content

Cesium standard actions

mramato edited this page Jan 29, 2013 · 2 revisions

This page is very much a work in progress, contributions are welcome.

Globe and map applications share many simple tasks in common with each other. The goal of this page is an attempt to define what those tasks are and describe an architecture that can be used to easily enable applications to perform those tasks with little effort. To put it more concretely, the goal is to provide Cesium users with a predefined set of actions that can be hooked up to application specific UI. We also hope to provide a standard HTML toolbar widget for the various web toolkits, such as Dojo and jQuery and make it easy to dynamically build context-sensitive menus.

Architecture

In order to separate the GUI specific code from the action itself, we propose a new "base" type, Action which contains all of the engine-level code to perform a task.

TODO: Action prototype pseudo-code

Toolbar Widget

Table of proposed commands

This table describes some of the actions we have in mind; though there are most likely many more.

Name Description 2D 3D Columbus View Mobile
Stored Views Provides a user definable list of standard views. For example, Earth Fixed, and Earth Inertial reference frames may be here by default and CZML files can specify stored views that showcase a particular event or tour of the data. Y Y Y Y
Scene Mode Allows the user to select between 2D, 3D, and Columbus view modes. Y Y Y Y
Map Projection Allows the user to select between Geographic and Web Mercator projections when in 2D and Columbus view. Other projections can be added as Cesium supports them. Y N Y Y
Default Mouse Puts the user back into the default mouse mode of the current scene mode. Y Y Y ?
Bounding Box Zoom Zooms to a selected bounding box picked on the earth. Y Y Y ?
Measuring Tool Draws a line measuring and displaying surface distance on the earth. Y Y Y Y
Full screen Toggles the supplied HTML element (usually the entire Cesium App) into full screen mode. Y Y Y Y