import mapboxgl from 'mapbox-gl';
import Vue from 'vue';
Vue.component('root', {
template: '
A custom component!
'
})
var app = new Vue({
el: '#app',
data: {
imgs: window.imgs,
res: 280,
slider: 0,
rasterCoords: {
140: [
[33.35317413, 33.27232471],
[36.32243686, 33.27232471],
[36.32243686, 30.72293428],
[33.35317413, 30.72293428]
],
280: [
[31.93095218, 34.5156862],
[37.86644267, 34.5156862],
[37.86644267, 29.42911589],
[31.93095218, 29.42911589]
]
}
}
});
mapboxgl.accessToken = 'pk.eyJ1IjoieXV2YWRtIiwiYSI6ImNpcnMxbzBuaTAwZWdoa25oczlzZmkwbHcifQ.UHtLngbKm9O8945pJm23Nw';
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/dark-v9',
container: 'map',
maxZoom: 10,
minZoom: 5,
zoom: 6.3,
center: [35, 31.9],
hash: false
});
function addRadarSource(res, i, url) {
map.addSource('radar-' + res + '-' + i, {
type: 'image',
url: '/static/img/' + url,
coordinates: app.rasterCoords[res]
})
}
function addRadarLayer(res, i) {
map.addLayer({
id: 'radar-' + res + '-' + i,
source: 'radar-' + res + '-' + i,
type: 'raster',
paint: {
'raster-opacity': 0.85
}
})
}
function removeRadarLayer(res, i) {
map.removeLayer('radar-' + res + '-' + i)
}
map.on('style.load', function () {
var i = 0;
while (i < app.imgs['140'].length) {
addRadarSource('140', i, app.imgs['140'][i++])
}
var i = 0;
while (i < app.imgs['280'].length) {
addRadarSource('280', i, app.imgs['280'][i++])
}
addRadarLayer('280', 0)
})