maps_geofence.html 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>maps-geofence</title>
  5. <link href="./5.2.0/ol.css" rel="stylesheet">
  6. <link href="./css/map_ol3.css" rel="stylesheet">
  7. </head>
  8. <body style="background-color:rgb(240,240,240);">
  9. <div class="row">
  10. <div class="col-xs-12">
  11. <div class="panel">
  12. <header class="panel-heading">
  13. <div class="form-inline tools">
  14. <button id="Circle" class="btn btn-primary btn-sm" type="button">Circle</button>
  15. <button id="Polygon" class="btn btn-primary btn-sm" type="button">Polygon</button>
  16. <button id="Modify" class="btn btn-warning btn-sm" type="button">Modify</button>
  17. <button id="Draw" class="btn btn-warning btn-sm" type="button">Draw</button>
  18. <button id="Clear" class="btn btn-danger btn-sm" type="button">Clear</button>
  19. <input id="Radius" type="hidden" readonly="readonly" placeholder="radius" title="radius">
  20. <input id="Range" type="text" style="width:460px;" readonly="readonly"
  21. placeholder="Please select the range from the map..." title="Please select the range from the map...">
  22. </div>
  23. </header>
  24. <div id="mapPanel" class="panel-body" style="padding: 0px;">
  25. <div id="map" style="width: 100%; height: 100%;"></div>
  26. </div>
  27. </div>
  28. </div>
  29. </div>
  30. <script type="text/javascript" src="./5.2.0/ol.js"></script>
  31. <script type="text/javascript" src="./js/openLayers.util.js"></script>
  32. <script type="text/javascript" src="./js/layerSwitcher.js"></script>
  33. <script type="text/javascript" src="./js/maps.util.js"></script>
  34. <script type="text/javascript" src="./js/jquery-3.1.1.min.js"></script>
  35. <script type="text/javascript">
  36. chengeSize();
  37. window.onresize = chengeSize;//褰撴祻瑙堝櫒澶у皬鍙戠敓鍙樺寲鏃惰皟鐢╢unName鍑芥暟
  38. function chengeSize() {
  39. var sHeight = $(window).height();//缃戦〉鍙鍖哄煙楂�
  40. document.getElementById("mapPanel").style.height = sHeight - 70 + "px";
  41. }
  42. MapsUtil.initMap(window.OL,"openStreetMap","${basePath}");
  43. //MapsUtil.viewExtent([point.getCoordinates()]);
  44. window.OL.tools.addDraw($('#Range').val(), setRange);
  45. function setRange(text){
  46. $('#Range').val(text);
  47. if(text.length>0){
  48. window.saveGeofenceData(text);
  49. }
  50. }
  51. function setGeofenceData(type,radius,latlng){
  52. //var geofence = JSON.parse(data);
  53. //$('#Range').val('');
  54. var range = {};
  55. range.type = type;
  56. range.radius = parseInt(radius);
  57. range.latlng = JSON.parse(latlng);
  58. var rangeJsonData = JSON.stringify(range);
  59. $('#Range').val(rangeJsonData);
  60. window.OL.tools.addDraw(rangeJsonData, setRange);
  61. }
  62. function saveGeofenceData(text){
  63. window.saveGeofenceData(text);
  64. }
  65. function isJSON(str) {
  66. if (typeof str == 'string') {
  67. try {
  68. var obj=JSON.parse(str);
  69. if(typeof obj == 'object' && obj ){
  70. return true;
  71. }else{
  72. return false;
  73. }
  74. } catch(e) {
  75. console.log('error:'+str+'!!!'+e);
  76. return false;
  77. }
  78. }
  79. }
  80. </script>
  81. </body>
  82. </html>