<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no"/> <title>画面 - 4.11</title> <!--<link rel="stylesheet" href="https://js.arcgis.com/4.11/esri/themes/light/main.css"/>--> <!--<script src="https://js.arcgis.com/4.11/"></script>--> <!--我的接口。--> <link rel="stylesheet" href="http://localhost:8080/arcgis_js_v411_api/arcgis_js_api/library/4.11/esri/themes/light/main.css"> <script src="http://localhost:8080/arcgis_js_v411_api/arcgis_js_api/library/4.11/dojo/dojo.js"></script> <!--上下两接口都行。--> <!--<script src="http://localhost:8080/arcgis_js_v411_api/arcgis_js_api/library/4.11/init.js"></script>--> <style> html, body, #viewDiv{ height: 100%; width: 100%; margin: 0; padding: 0; } </style> <script> require([ "esri/Map", "esri/views/MapView", "esri/views/draw/Draw", "esri/Graphic" ], function(Map, MapView, Draw, Graphic) { const map = new Map({ basemap: "gray" }); const view = new MapView({ container: "viewDiv", map: map, zoom: 16, center: [18.06, 59.34] }); // 添加绘图工具按钮。 // view.ui.add("line-button", "top-left"); view.ui.add("polygon-button", "top-left"); const draw = new Draw({ view: view }); // 给绘制多边形按钮添加单击事件。 document.getElementById("polygon-button").onclick = function() { view.graphics.removeAll(); // 创建并返回一个PolyLineDrawAction实例。 const action = draw.create("polygon"); // 在视图上绘制折线时,监听PolyLineDrawAction事件,以便立即向用户提供视觉反馈。 action.on([ "vertex-add", "vertex-remove", "cursor-update", "draw-complete" ], createPolygonGraphic ); }; function createPolygonGraphic(event){ const vertices = event.vertices; // 此行代码用于,移除各种事件之前添加的图形。 // 即当前视图中的图形,是实时刷新添加的图形。 view.graphics.removeAll(); let vertices2 = vertices.slice(); vertices2[vertices2.length] = vertices2[0]; const graphic = new Graphic({ geometry: { type: "polygon", // autocasts as Polygon rings: vertices2, spatialReference: view.spatialReference }, symbol: { type: "simple-fill", // autocasts as SimpleFillSymbol color: "purple", style: "solid", outline: { // autocasts as SimpleLineSymbol color: "white", width: 1 } } }); view.graphics.add(graphic); } }); </script> </head> <body> <div id="viewDiv"> <!--<div id="line-button" class="esri-widget esri-widget--button esri-interactive" title="画折线">--> <!--<span class="esri-icon-polyline"></span>--> <!--</div>--> <div id="polygon-button" class="esri-widget esri-widget--button esri-interactive" title="画面"> <span class="esri-icon-polygon"></span> </div> </div> </body> </html>
画面.html
猜你喜欢
转载自blog.csdn.net/weixin_42193179/article/details/89735759
今日推荐
周排行