polygon-arrays.html 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <!DOCTYPE html>
  2. <html ng-app="myapp">
  3. <head>
  4. <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
  5. <script src="https://maps.googleapis.com/maps/api/js?v=3.exp"></script>
  6. <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.5/angular.min.js"></script>
  7. <script src="scripts/app.js"></script>
  8. <!-- build:js scripts/ng-map.min.js -->
  9. <script src="../app/scripts/app.js"></script>
  10. <script src="../app/scripts/directives/map_controller.js"></script>
  11. <script src="../app/scripts/directives/map.js"></script>
  12. <script src="../app/scripts/directives/marker.js"></script>
  13. <script src="../app/scripts/directives/shape.js"></script>
  14. <script src="../app/scripts/services/geo_coder.js"></script>
  15. <script src="../app/scripts/services/navigator_geolocation.js"></script>
  16. <script src="../app/scripts/services/attr2_options.js"></script>
  17. <!-- endbuild -->
  18. <script>
  19. var app = angular.module('myapp', ['ngMap']);
  20. app.controller('PolygonArraysCtrl', function($scope) {
  21. var infoWindow = new google.maps.InfoWindow();
  22. $scope.showArrays = function(event) {
  23. // Since this polygon has only one path, we can call getPath()
  24. // to return the MVCArray of LatLngs.
  25. var vertices = this.getPath();
  26. var contentString = '<b>Bermuda Triangle polygon</b><br>' +
  27. 'Clicked location: <br>' + event.latLng.lat() + ',' + event.latLng.lng() +
  28. '<br>';
  29. // Iterate over the vertices.
  30. for (var i =0; i < vertices.getLength(); i++) {
  31. var xy = vertices.getAt(i);
  32. contentString += '<br>' + 'Coordinate ' + i + ':<br>' + xy.lat() + ',' +
  33. xy.lng();
  34. }
  35. // Replace the info window's content and position.
  36. infoWindow.setContent(contentString);
  37. infoWindow.setPosition(event.latLng);
  38. infoWindow.open($scope.map);
  39. }
  40. });
  41. </script>
  42. </head>
  43. <body>
  44. <div ng-controller="PolygonArraysCtrl">
  45. <map zoom="5"
  46. center="24.886436490787712, -70.2685546875"
  47. map-type-id="TERRAIN">
  48. <shape name="polygon"
  49. on-click="showArrays()"
  50. paths="[
  51. [25.774252, -80.190262],
  52. [18.466465, -66.118292],
  53. [32.321384, -64.75737]
  54. ]"
  55. stroke-color="#FF0000"
  56. stroke-opacity="0.8"
  57. stroke-weight="2"
  58. fill-color="#FF0000"
  59. fill-opacity="0.35">
  60. </shape>
  61. </map>
  62. </div>
  63. </body>
  64. </html>