Проблема с отображением пользовательского пина на карте Bing - PullRequest
0 голосов
/ 05 августа 2020

Я показываю использование карты Bing на моей веб-странице, и я пытаюсь использовать пользовательский PIN-код для местоположения, но он не отображается. Мой проект - Asp. Net Core, мое изображение хранится в wwwroot/images, а это javascript находится в wwwroot/js/site.js. Я не уверен, что мой путь просто неправильный или что.

var renderRequestsMap = function (divIdForMap, requestData) {
if (requestData) {
    var bingMap = createBingMap(divIdForMap);
    addRequestPins(bingMap, requestData);
}
}

function createBingMap(divIdForMap) {
var map = new Microsoft.Maps.Map(
    document.getElementById(divIdForMap), {
        credentials: BingMapKey,
        zoom: 2
});

// tile url from Iowa Environmental Mesonet of Iowa State University
var urlTemplate = 'https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0q-{timestamp}/{zoom}/{x}/{y}.png';
var timestamps = ['900913-m50m', '900913-m45m', '900913-m40m', '900913-m35m', '900913-m30m', '900913-m25m', '900913-m20m', '900913-m15m', '900913-m10m', '900913-m05m', '900913'];
var tileSources = [];
for (var i = 0; i < timestamps.length; i++) {
    var tileSource = new Microsoft.Maps.TileSource({
        uriConstructor: urlTemplate.replace('{timestamp}', timestamps[i])
    });
    tileSources.push(tileSource);
}
var animatedLayer = new Microsoft.Maps.AnimatedTileLayer({ mercator: tileSources, frameRate: 500 });
map.layers.insert(animatedLayer);

return map;
}

function addRequestPins(bingMap, requestData) {
var locations = [];
$.each(requestData, function (index, data) {
    var location = new Microsoft.Maps.Location(data.lat, data.long);
    locations.push(location);
    var order = index + 1;
    alert(data.pinurl);
    var pin = new Microsoft.Maps.Pushpin(location, { icon: 'images/low-risk-south-pin.png' });
    bingMap.entities.push(pin);
});
var rect = Microsoft.Maps.LocationRect.fromLocations(locations);
bingMap.setView({ bounds: rect, padding: 80 });
}

Кроме того, когда карта загружается, моя булавка сильно увеличивается, и что бы я ни делал, я не могу заставить ее начать с очень большим увеличением.

Любая помощь приветствуется!

1 Ответ

0 голосов
/ 07 августа 2020

Если можете, взгляните на трассировку сети. Здесь вы должны увидеть, откуда запрашиваются изображения, и это поможет вам проверить, запрашиваются ли они из правильного места.

Что касается масштабирования, вы вычисляете в LocationRect из местоположения контактов, а затем настройка вида карты на основе этого. Похоже, это работает, как и ожидалось. Если вы не хотите увеличивать булавки, удалите этот код.

...