Skip to content
Snippets Groups Projects
Commit 0e79eaef authored by esikkala's avatar esikkala
Browse files

Deck.gl: add hexagon layer

parent 65d1706a
No related branches found
No related tags found
No related merge requests found
......@@ -4,7 +4,7 @@ import { withStyles } from '@material-ui/core/styles'
import { has } from 'lodash'
import DeckGL from '@deck.gl/react'
import { ArcLayer } from '@deck.gl/layers'
import { HeatmapLayer } from '@deck.gl/aggregation-layers'
import { HeatmapLayer, HexagonLayer } from '@deck.gl/aggregation-layers'
import ReactMapGL, { NavigationControl, FullscreenControl, HTMLOverlay } from 'react-map-gl'
import MigrationsMapDialog from '../perspectives/mmm/MigrationsMapDialog'
import CircularProgress from '@material-ui/core/CircularProgress'
......@@ -146,6 +146,22 @@ class Deck extends React.Component {
})
}
createHexagonLayer = data =>
new HexagonLayer({
id: 'hexagon-layer',
data,
extruded: true,
radius: 2000,
elevationScale: 100,
getPosition: d => [+d.long, +d.lat]
/* onHover: ({ object, x, y }) => {
const tooltip = `${object.centroid.join(', ')}\nCount: ${object.points.length}`
Update tooltip
http://deck.gl/#/documentation/developer-guide/adding-interactivity?section=example-display-a-tooltip-for-hovered-object
} */
})
render () {
const { classes, mapBoxAccessToken, layerType, results } = this.props
......@@ -160,6 +176,9 @@ class Deck extends React.Component {
case 'heatmapLayer':
layer = this.createHeatmapLayer(results)
break
case 'hexagonLayer':
layer = this.createHexagonLayer(results)
break
default:
layer = this.createHeatmapLayer(results)
break
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment