Skip to content

Commit

Permalink
add open questions
Browse files Browse the repository at this point in the history
  • Loading branch information
Xiaoji Chen committed Apr 2, 2019
1 parent 1ab031e commit 81c855d
Showing 1 changed file with 47 additions and 1 deletion.
48 changes: 47 additions & 1 deletion dev-docs/RFCs/v7.0/google-maps-integration.md
Expand Up @@ -46,7 +46,7 @@ The proposed `@deck.gl/google-maps` module will have a single export `DeckOverla

Parameters:

* `props.api` - the `google.maps` client, from which we pull the Maps API classes
* `props.api` - the client from which we pull the Maps API classes. Default `google.maps`.
* The following [Deck](/docs/api-reference/deck.md) props are supported:
- `layers`
- `layerFilter`
Expand All @@ -72,3 +72,49 @@ Add/remove the overlay from a map.

Update (partial) props.

##### `pickObject`

Equivalent of `deck.pickObject`.

##### `pickObjects`

Equivalent of `deck.pickObjects`.

##### `pickMultipleObjects`

Equivalent of `deck.pickMultipleObjects`.

##### `finalize`

Remove the overlay and release all resources.


## Cost, Risks, Open Questions

### How aligned should the API be with the mapbox module?

While `MapboxLayer` from `@deck.gl/mapbox` is a wrapper of a single layer, the `DeckOverlay` class is a wrapper of `Deck`. The `DeckOverlay` API is designed to align with 1) the Google Maps overlay API, and 2) the Deck class.

This module will be much simpler than `@deck.gl/mapbox`. Because there is no context sharing, there is no need for WebGL state management, custom rendering order, etc. All layers are rendered once the overlay is redrawn.

### What Deck features are supported?

Supported features:

- Layers
- Effects
- Auto-highliting
- Transitions / Animations
- Interaction callbacks

Not supported features:

- Multi view
- Controller
- React integration (there is no official React wrapper of Google Maps)

### How do we test these features?

We do not have any internal application that uses Google Maps, so there is always a risk of breakage in a future release.

As a start, we can set up automated render tests with CI to ensure that the basic functionalities continue to work. Bugs in the interaction features will be harder to catch. We will work with partners at Google to improve the CI process.

0 comments on commit 81c855d

Please sign in to comment.