您好我搜索了所有的网络和stackoverflow。
任何人都知道如何在Google地图街景视图中的特定位置找到自定义叠加层?
以下是一个例子:
在本导览中,您可以看到某些图标和项目位于特定位置。
有谁知道怎么做?这太棒了,我想知道怎么做。
我有使用Google地图javascript API的经验,但我不能这样做。
解决了这个问题答案 0 :(得分:1)
我认为这可能是相关的: https://developers.google.com/maps/documentation/javascript/examples/streetview-overlays
这是在街景地图上放置位置标记的示例。 它首先定义一个地点的位置,然后定义标记,为它提供图标和名称等属性。
var map;
var panorama;
var astorPlace = new google.maps.LatLng(40.729884, -73.990988);
var busStop = new google.maps.LatLng(40.729559678851025, -73.99074196815491);
var cafe = new google.maps.LatLng(40.730031233910694, -73.99142861366272);
var bank = new google.maps.LatLng(40.72968163306612, -73.9911389350891);
function initialize() {
// Set up the map
var mapOptions = {
center: astorPlace,
zoom: 18,
streetViewControl: false
};
map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
// Setup the markers on the map
var cafeMarker = new google.maps.Marker({
position: cafe,
map: map,
icon: 'http://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=cafe|FFFF00',
title: 'Cafe'
});
var bankMarker = new google.maps.Marker({
position: bank,
map: map,
icon: 'http://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=dollar|FFFF00',
title: 'Bank'
});
var busMarker = new google.maps.Marker({
position: busStop,
map: map,
icon: 'http://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=bus|FFFF00',
title: 'Bus Stop'
});
// We get the map's default panorama and set up some defaults.
// Note that we don't yet set it visible.
panorama = map.getStreetView();
panorama.setPosition(astorPlace);
panorama.setPov(/** @type {google.maps.StreetViewPov} */({
heading: 265,
pitch: 0
}));
}
function toggleStreetView() {
var toggle = panorama.getVisible();
if (toggle == false) {
panorama.setVisible(true);
} else {
panorama.setVisible(false);
}
}
google.maps.event.addDomListener(window, 'load', initialize);
答案 1 :(得分:0)
我在寻找如何实现类似的事情时发现了这一点:
我仍然在寻找解决方案,而且我在Google服务外部找到了一些不错的库:
事实上,使用google API之外的解决方案有利有弊 - 但这种评估取决于你。