<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&key=xxxxxxxxxxxxxxxxxx&sensor=false"></script>
<script type='text/javascript' src='http://www.example.com/wp/wp-content/themes/ang/js/lodash.underscore.min.js'></script>
<script type='text/javascript' src='http://www.example.com/wp/wp-content/themes/ang/js/angular-google-maps.min.js'></script>
<script type='text/javascript' src='http://www.example.com/wp/wp-content/themes/ang/js/app.js'></script>
<div ng-controller="MyCtrl">
<div class="row">
<div class="col-sm-6">
<google-map
id="map-canvas"
center="map.center"
zoom="map.zoom"
draggable="true"
options="map.options"
control="map.control"
events="map.events"
>
<marker coords="map.marker" idKey="map.marker.id">
<marker-label content="map.marker.title" anchor="0 30" ></marker-label>
</marker>
</google-map>
</div>
<div class="col-sm-6">
<div id="pano" style=" height: 400px;"></div>
</div>
</div>
</div>
var mapApp = angular.module('googleMapApp', ['google-maps','ui.bootstrap']);
mapApp.controller("MyCtrl", function ($scope) {
var panorama;
angular.extend($scope, {
map: {
center: {
latitude: 35.681382,
longitude: 139.766084
},
options: {
maxZoom: 20,
minZoom: 3
},
zoom: 15,
control: {},
events: {
click: function (map, eventName, originalEventArgs) {
var sv = new google.maps.StreetViewService();
var event = originalEventArgs[0];
sv.getPanoramaByLocation(event.latLng, 50, processSVData);
}
},
marker: {id: 1},
}
});
function processSVData(data, status) {
if (status == google.maps.StreetViewStatus.OK) {
$scope.map.marker.latitude = data.location.latLng.lat();
$scope.map.marker.longitude = data.location.latLng.lng();
$scope.map.marker.id = 1;
$scope.map.marker.title = data.location.description;
panorama = new google.maps.StreetViewPanorama(document.getElementById('pano'));
panorama.setPano(data.location.pano);
panorama.setPov({
heading: 270,
pitch: 0
});
panorama.setVisible(true);
$scope.$apply();
} else {
alert('Street View data not found for this location.');
}
}
});