Guest User

Untitled

a guest
Nov 12th, 2018
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.37 KB | None | 0 0
  1. <script type="text/javascript" src="http://api-maps.yandex.ru/2.0/?load=package.full&lang=ru-RU"></script>
  2. <script>
  3. ymaps.ready(function(){
  4. var map, center, zoom;
  5. var objectManager;
  6. var myPolygon;
  7. var coords = [];
  8.  
  9. var map = new ymaps.Map("map", {
  10. center: [ymaps.geolocation.latitude, ymaps.geolocation.longitude],
  11. zoom: 10,
  12. behaviors: ["default", "scrollZoom"],
  13. type : 'yandex#map'
  14. });
  15.  
  16. document.getElementById("btnStartDraw").addEventListener('click', createPolygon, false);
  17. document.getElementById("btnStopDraw").addEventListener('click', stopPolygon, false);
  18.  
  19. function createPolygon() {
  20. myPolygon = new ymaps.Polygon([], {}, {
  21. editorDrawingCursor: "crosshair",
  22. fillColor: '#00FF00',
  23. strokeColor: '#0000FF',
  24. strokeWidth: 3
  25. });
  26. map.geoObjects.add(myPolygon);
  27.  
  28. var stateMonitor = new ymaps.Monitor(myPolygon.editor.state);
  29. stateMonitor.add("drawing", function (newValue) {
  30. myPolygon.options.set("strokeColor", newValue ? '#FF0000' : '#0000FF');
  31. });
  32.  
  33. myPolygon.editor.startDrawing();
  34. myPolygon.editor.events.add("drawingstop", function (e) {
  35. getCoords(myPolygon.geometry.getCoordinates());
  36. });
  37. };
  38. function getCoords(coordsArr) {
  39. coords.push(coordsArr);
  40. var stateMonitor = new ymaps.Monitor(myPolygon.editor.state);
  41. if (!stateMonitor.drawing) createPolygon();
  42. };
  43.  
  44. function removePolygon() {
  45. map.geoObjects.remove(myPolygon);
  46. };
  47.  
  48. function stopPolygon() {
  49. myPolygon.editor.stopDrawing();
  50.  
  51. };
  52.  
  53.  
  54. });
  55. </script>
  56. <div id="map" class="map" style="width: 600px; height: 500px;">
  57. <button id="btnStartDraw">Начать рисовать</button>
  58. <button id="btnStopDraw" > Остановить рисование</button>
  59.  
  60. </div>
  61.  
  62. myPolygon.editor.events.add("drawingstop", function (e) {
  63. isDraw ? getCoords(myPolygon.geometry.getCoordinates()) : myPolygon.editor.stopDrawing();
  64. });
Add Comment
Please, Sign In to add comment