#javascript #bing-maps
Вопрос:
Я использую Bing Maps V8, и, согласно запросу, я должен перемещать/перемещать карту bing, чтобы установить видимость кнопки. Основываясь на местоположении кнопки, мы можем напрямую настроить вид, как показано ниже, но я настроил/переместил карту bing только в том случае, если в текущем представлении карт bing кнопка не видна невооруженным глазом.
this.map.setView({
center: new Microsoft.Maps.Location(pin.lat, pin.long),
});
Не могли бы вы поделиться своими мыслями о том, как определить, виден ли pin-код в текущем представлении или нет?
С уважением и заранее благодарю вас.
Ответ №1:
Получите ограничивающую рамку карты, затем проверьте, содержит ли она ваше местоположение кнопок. Если это не обновит представление карты. Вот блок кода, который делает это.
var map = new Microsoft.Maps.Map(document.getElementById('myMap'), {});
var pushpin = new Microsoft.Maps.Pushpin(new Microsoft.Maps.Location(45, -110), null);
map.entities.push(pushpin);
//Get the bounding box of the current map view.
var bounds = map.getBounds();
//Check to see if the bounding box contains the pushpins location.
//And if it doesn't, center the map.
if(!bounds.contains(pushpin.getLocation())) {
map.setView({
center: pushpin.getLocation()
});
}