getPixelFromCoordinate возвращает ноль
В моем приложении я добавил слой mapquest с открытыми слоями 3, нарисованными точками и линиями...
Теперь мне нужно узнать координаты пикселя из точки long/lat на карте (видимой области), используя
map.getPixelFromCoordinate(coordinate).
эта функция всегда возвращает null
(Тестирование):
center = map.getView().getCenter();
px = map.getPixelFromCoordinate(center);
alert(JSON.stringify(px));
Что я делаю не так или что я не правильно понял?
1 ответ
Я нашел этот ответ:
Я был бы осторожен с этим. Вы можете получить неправильные результаты, например, когда карта еще не имеет окончательного макета. Лучше подождать с преобразованием первой координаты в пиксель, пока карта не будет отрисована. Для этого вам не нужно время ожидания, у нас есть событие postrender на ol.Map. Итак, в вашем коде инициализации вы можете сделать что-то вроде этого:
map.once('postrender', function() {
// safe to call map.getPixelFromCoordinate from now on
});
Источник: https://github.com/openlayers/ol3/issues/5456
Надеюсь, это поможет.