Я пытаюсь использовать MQA.TileMap.zoomToRect
, чтобы установить порт представления заданного ограничивающего прямоугольника.Как правильно масштабировать до границ в MapQuest?
var cust;
var rect = new MQA.RectLL();
for (var i = 0, len = custs.length; i < len; i++) {
cust = custs[i];
poi = new MQA.Poi({lat:cust.lat, lng:cust.lng});
map.addShape(poi); // This works
rect.extend(poi.latLng); // Does nothing to `rect'.
}
map.zoomToRect(rect, false); // This fails
Оказывается, что rect
значения остаются 0,0
для обоих lr
и ul
свойствами. Результаты вызова в следующем выходе в firebog
"NetworkError: 500 Internal Server Error - http://coverage.mqcdn.com/coverage?format=json&jsonp=MQA._covCallback&loc=NaN,NaN,NaN,NaN&zoom=2&projection=sm&cat=map%2Chyb%2Csat"
EDIT: Я добавил примечание к примеру, что добавление формы работает отлично, поэтому объект пои прекрасно, а также проверки poi.latLng
прекрасно.
я забыл местный 'присваивание cust' в моем примере. Я должен отметить, что объект POI прекрасен, потому что я получаю объекты POI, отображаемые на карте в правильных местах. –
Я никогда не делал ничего с расширением видового экрана таким образом (как правило, просто использование метода «bestFit» соответствует моим потребностям), но я не уверен, что метод rect.extend примет объект POI в качестве входа. Похоже, что он ищет объект lat/long (MQA.LatLon), по крайней мере, согласно справочному руководству API. Возможно, я ошибаюсь - я все еще учился. – jharahush
Да, он принимает 'MQA.LatLng', поэтому я передаю ему свойство' MQA.Poi.latLng'. –