0

스트리트 뷰지도가로드되는 즉시 앞쪽에 마커 아이콘을 표시 할 수있는 방법이 있습니까? 사용자가 마커 아이콘을 볼 때까지 팬을 움직여서는 안됩니다. 코드를 업데이트했습니다. 아래 링크스트리트 뷰 전경에 Google 마커 표시

var fenway = new google.maps.LatLng(40.729884, -73.990988); 
    var mapOptions = { 
    center: fenway, 
    zoom: 14 
    }; 
    var map = new google.maps.Map(
     document.getElementById('map-canvas'), mapOptions); 
    var panoramaOptions = { 
    position: fenway, 
    pov: { 
     heading: 500, 
     pitch: 0 
    } 
    }; 

var panorama = new google.maps.StreetViewPanorama(document.getElementById('pano'),panoramaOptions); 
var panorama1 = new google.maps.StreetViewPanorama(document.getElementById('pano1'),panoramaOptions); 


var marker = new google.maps.Marker({ 
    position:fenway,         
    map:panorama  
}); 


var marker1 = new google.maps.Marker({ 
    position:fenway,         
    map:panorama1, 
}); 

map.setStreetView(panorama,fenway); 
map.setStreetView(panorama1); 

http://jsfiddle.net/vinothpsv/JKx3Z/ 

답변

0

머리글을 바꾸고 싶다는 소리 ... 원하는 것을 잘 모르는 경우. 마커는 제목이있는 위치를 기반으로합니다.

0

트릭은 "google.maps.geometry.spherical.computeHeading"

<!DOCTYPE html> 
 
<html> 
 

 
    <head> 
 
    <meta charset="utf-8"> 
 
    <title>Street View service</title> 
 
    <style> 
 
     html, 
 
     body, 
 
     #map-canvas { 
 
     height: 100%; 
 
     margin: 0px; 
 
     padding: 0px 
 
     } 
 

 
    </style> 
 
    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=geometry"></script> 
 
    <script> 
 
     var panorama = null; 
 
     var fin; 
 

 
     function initialize() { 
 
     //var fenway = new google.maps.LatLng(42.345573,-71.098326); 
 
     var fenway = new google.maps.LatLng(40.729884, -73.990988); 
 
     var mapOptions = { 
 
      center: fenway, 
 
      zoom: 14 
 
     }; 
 
     var map = new google.maps.Map(
 
      document.getElementById('map-canvas'), mapOptions); 
 

 

 

 

 

 

 
    var panorama = new google.maps.StreetViewPanorama(document.getElementById('pano')); 
 
      panorama.setPosition(fenway); 
 
      google.maps.event.addListenerOnce(panorama, 'status_changed', function() { 
 
       var heading = google.maps.geometry.spherical.computeHeading(panorama.getLocation().latLng, fenway); 
 
       panorama.setPov({ 
 
        heading: heading, 
 
        pitch: 0 
 
       }); 
 
       setTimeout(function() { 
 
       marker = new google.maps.Marker({ 
 
        position: fenway, 
 
        map: panorama, 
 

 
       }); 
 
       if (marker && marker.setMap) marker.setMap(panorama);}, 500); 
 
      }); 
 

 

 
     } 
 

 
     google.maps.event.addDomListener(window, 'load', initialize); 
 

 
    </script> 
 
    </head> 
 

 
    <body> 
 
    <div id="map-canvas" style="width: 400px; height: 300px"></div> 
 
    <div id="pano" style="position:absolute; left:410px; top: 8px; width: 400px; height: 300px;"></div> 
 
    <div id="pano1" style="position:relative; left:410px; top: 8px; width: 400px; height: 300px;"></div> 
 
    </body> 
 

 
</html>