NASAWorldWind / WorldWindAndroid

The NASA WorldWind Java SDK for Android (WWA) includes the library, examples and tutorials for building 3D virtual globe applications for phones and tablets.
Other
267 stars 125 forks source link

Map events #15

Open pdavidc opened 8 years ago

pdavidc commented 8 years ago

Feature and terrain pick events as specified by the COEv3 Map API. From the COE requirements document:

Map Interaction & Events The Map Engine shall accept input via multi touch and cursor input. In the case where a touch event and cursor event have the same behavior, the map engine will expose these as a single event to simplify the use of reacting to the events the map engine dispatches when the user switches between touch and cursor input. This section defines what types of user input the map will accept, and what events the map engine will emit following the user’s interaction

Tap / click Map Engine will emit an event containing the location and elevation of the point clicked as well as the current map view (center point, bounding box, range, scale, roll, pitch, yaw)

Long Press / Right Click Map Engine will emit an event containing the location and elevation of the point clicked as well as the current map view

Double tap / Double Click Map Engine will emit an event containing the location and elevation of the point clicked as well as the current map view.

pdavidc commented 8 years ago

NASA Comments on the COE requirements document:

It sounds like the COE needs a common mechanism for responding to equivalent event types (e.g. click and tap). The NASA team can provide this capability, but may not choose the specific solution of exposing a new event to the application.

The NASA team has found that WorldWind is more robust and extensible when the SDK itself does not emit any events. Instead, the team has moved away from the design of generating events found in WorldWind Java, and toward a design where separate modular components interpret the input event stream then emit higher level events (for exampple, touch events are interpreted and translated to tap events). These components are part of the World Wind SDK and may be used at the application's discretion.

mrdjohnson commented 7 years ago

This is related to #20

mrdjohnson commented 7 years ago

I think I may have gotten lost in translation. Can you go into more detail with the requirements here? Doubletap + hold + drag : zooms in and out

The others just emit an event with no visual response from the map? Where are the events being emitted to? Are there different expectations for double click + drag and double tap + drag?