Изменить порт просмотра карты и увеличить в соответствии с различными координатами - PullRequest
0 голосов
/ 09 августа 2011

Я использую OpenLayers API в качестве клиента для потоковых карт, расположенных на картографическом сервере (geoServer), когда я получил результаты поиска, размещенные на карте, порт просмотра и уровень масштабирования не изменились, я хочу сделатьмасштабирование до экстента координат результирующего набора, чтобы сделать подходящий уровень масштабирования, чтобы соответствовать всем результирующим координатам.

Я пробовал следующий код, но без какого-либо значения ..

var Newbounds= new OpenLayers.Bounds();  //global var
Newbounds.extend(lonLatMarker);     // inside the function of setting the marker data    
map.zoomToExtent(Newbounds);        // after showing results set of coordinates on the map

1 Ответ

2 голосов
/ 10 августа 2011

Что это за объект lonLatMarker? Должно быть OpenLayers.LonLat, а не OpenLayers.Marker

Учитывая, что у вас правильный тип объекта, этот код должен работать:

var newBounds = new OpenLayers.Bounds(lonLatMarker.lon, lonLatMarker.lat, lonLatMarker.lon, lonLatMarker.lat); 
map.zoomToExtent(newBounds);
...