最近开始接触GIS,在做有关地图的项目中,发现距离测量非常的常见,自己试了几次,在这里和大家分享一下。
1、首先,地图都是基于图层进行操作的,所以首先要为测量画线准备一个图层。
var drawLine, lineLayer;
2、接着便在地图的加载事件里实例该图层。
//新建线矢量图层
lineLayer = new SuperMap.Layer.Vector("lineLayer");
//对线图层应用样式style,样式可以自己设置
//画线样式
var style = {
strokeColor: "#304DBE",//线颜色
strokeWidth: 2,//线宽度
pointerEvents: "visiblePainted",//点事件
fillColor: "#304DBE",
fillOpacity: 0.8
};
lineLayer.style = style;
//创建画线控制,图层是lineLayer;这里DrawFeature(图层,类型,属性);multi:true在将要素放入图层之前是否现将其放入几何图层中
drawLine = new SuperMap.Control.DrawFeature(lineLayer, SuperMap.Handler.Path, { multi: true });
//注册绘制完成后触发的事件drawCompleted() 可以注册其他事件
drawLine.events.on({ "featureadded": drawLineCompleted