mirror of
https://github.com/visgl/react-map-gl.git
synced 2026-01-25 16:02:50 +00:00
59 lines
1.2 KiB
JavaScript
59 lines
1.2 KiB
JavaScript
import React, {Component} from 'react';
|
|
import {render} from 'react-dom';
|
|
import DeckGL, {ArcLayer} from 'deck.gl';
|
|
import MapGL from 'react-map-gl';
|
|
|
|
export default class App extends Component {
|
|
constructor(props) {
|
|
super(props);
|
|
this.state = {
|
|
viewport: {
|
|
longitude: -122.45,
|
|
latitude: 37.78,
|
|
zoom: 11,
|
|
bearing: 0,
|
|
pitch: 30
|
|
}
|
|
};
|
|
}
|
|
|
|
_onViewportChange = viewport => {
|
|
this.setState({viewport});
|
|
};
|
|
|
|
render() {
|
|
const {viewport} = this.state;
|
|
|
|
return (
|
|
<MapGL
|
|
{...viewport}
|
|
width="100%"
|
|
height="100%"
|
|
maxPitch={85}
|
|
onViewportChange={this._onViewportChange}
|
|
>
|
|
<DeckGL
|
|
{...viewport}
|
|
layers={[
|
|
new ArcLayer({
|
|
data: [
|
|
{
|
|
sourcePosition: [-122.41669, 37.7853],
|
|
targetPosition: [-122.45669, 37.781]
|
|
}
|
|
],
|
|
strokeWidth: 4,
|
|
getSourceColor: x => [0, 0, 255],
|
|
getTargetColor: x => [0, 255, 0]
|
|
})
|
|
]}
|
|
/>
|
|
</MapGL>
|
|
);
|
|
}
|
|
}
|
|
|
|
export function renderToDom(container) {
|
|
render(<App />, container);
|
|
}
|