Mapbox GL JS ImageSource неверные координаты - PullRequest
0 голосов
/ 05 мая 2019

Я изо всех сил стараюсь правильно расположить изображение на моей карте.Я использую один из следующих URL для моего (живого) изображения:

Это связанные возможности WMS: https://maps.dwd.de/geoserver/ows?service=wms&version=1.3.0&request=GetCapabilities

Я попытался добавить источник изображения в соответствии с этим примером .Используя эти координаты:

[2.0714827302884133, 55.07980923136505],
[15.72075796095801, 55.07980923136505],
[15.72075796095801, 47.14423415016973],
[2.0714827302884133, 47.14423415016973]

Проблема в том, что изображение выровнено не на 100% правильно, а слегка смещено / растянуто.Я читал что-то о Mapbox, используя проекцию Меркатора и не в состоянии справиться с другими?Вот почему выше три разных URL, но все они терпят неудачу.Затем я попытался преобразовать мои координаты следующим образом:

var westLongitude = 2.0714827302884133;
var eastLongitude = 15.72075796095801;  
var southLatitude = 47.14423415016973;
var northLatitude = 55.07980923136505;  

var topLeft = { lng: westLongitude, lat: northLatitude};
var mTopLeft = mapboxgl.MercatorCoordinate.fromLngLat(topLeft, 0).toLngLat();

var topRight = { lng: eastLongitude, lat: northLatitude};
var mTopRight = mapboxgl.MercatorCoordinate.fromLngLat(topRight, 0).toLngLat();

var bottomRight = { lng: eastLongitude, lat: southLatitude};
var mBottomRight = mapboxgl.MercatorCoordinate.fromLngLat(bottomRight, 0).toLngLat();

var bottomLeft = { lng: westLongitude, lat: southLatitude};
var mBottomLeft = mapboxgl.MercatorCoordinate.fromLngLat(bottomLeft, 0).toLngLat();

var mercatorCoordinates = [[mTopLeft.lng, mTopLeft.lat], [mTopRight.lng, mTopRight.lat], [mBottomRight.lng, mBottomRight.lat], [mBottomLeft.lng, mBottomLeft.lat]];

Однако это также не выровняло изображение правильно.Я думаю, я использую неправильные координаты.Любая идея, как это сделать правильно?

Большое вам спасибо.

Вот код, с которым можно поиграться ( Пожалуйста, сравните местоположение слепой точки радара (серого) с изображениемниже, чтобы увидеть смещение ): js fiddle

Вот где должна быть слепая точка радара (розовая): enter image description here

1 Ответ

1 голос
/ 06 мая 2019

Использование следующих координат / проекции, похоже, работает:

CRS=EPSG:3857&BBOX=614360.8293587392,5933210.01991552,1713821.866597408,7423590.537061271

Вот еще одна js fiddle .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...