Leaflet Velocity: использовать с CRS. Простой - PullRequest
0 голосов
/ 21 мая 2019

Я уже открыл проблему на github , но, возможно, у кого-то здесь есть идея.

Я хочу использовать слой скорости листовки с Leaflet Простая система координат координат , но даже если что-то обнаруживается, результаты выглядят далеко не так, как должны.Я сделал JS Fiddle , чтобы показать, как далеко я продвинулся.

SO требует некоторого соответствующего кода, так что здесь, в основном, я создаю карту с CRS. Просто как:

var map = L.map('map', {
    crs: L.CRS.Simple
});

А затем добавьте границы к квадратной сетке 10x10, добавьте пользовательское изображение bg и наложите Velocity Layer поверх:

// add raster image layer
var imageUrl = 'https://placeimg.com/1000/1000/arch',
imageBounds = [[0,0], [10,10]];
L.imageOverlay(imageUrl, imageBounds).addTo(map);
map.fitBounds(imageBounds);

// add velocity layer
var velocityData = JSON.parse('[{"header": ... }]');
var velocityLayer = L.velocityLayer({
    displayValues: true,
    displayOptions: {
        velocityType: 'Wind',
        displayPosition: 'bottomleft',
        displayEmptyString: 'No wind data'
    },
    data: velocityData,
    maxVelocity: 10,
    velocityScale: 0.0015,
});
map.addLayer(velocityLayer);

По сути, нам нужна подробная карта ветра вокруг здания, поэтому я сделал 10x10Скоростная сетка, а также использовать простую координатную сетку 1-10 x 1-10 в Leaflet.Самые большие проблемы, которые я вижу:

  1. Скорость частиц обратно пропорциональна увеличению, поэтому чем больше я увеличиваю, тем медленнее они становятся.И поскольку я уменьшил масштаб в начале, они движутся очень быстро.По их мнению, их скорость должна оставаться постоянной или увеличиваться при увеличении масштаба, в то время как при уменьшении я буду оставаться медленным.

  2. По какой-то причине частицы движутся только вертикально, но набор данных берется из образца Wind GBR, просто сокращается до сетки 10x10 вместо их 14x22.Но в их демонстрации частицы также движутся горизонтально, поэтому не знаете, почему я этого не вижу?

По сути, мне интересно, может ли Velocity работать с Simple Custom Reference System вообще.До сих пор это выглядело как множество проблем, и я не уверен, смогу ли я сделать так, чтобы путем предоставления соответствующего набора данных JSON и настройки его параметров он выглядел правильно на Simple CRS.Если нет, то мне, вероятно, придется придерживаться карты Земли по умолчанию и размещать здание над ней.

Кто-нибудь проходил через это раньше?

...