openlayers实现自定义绘图控件实现类似ArcGIS绘图工具条

接前一篇《》,绘图功能虽然实现了,但是仅仅开发到这里,做Demo还行,如果要应用到项目中,
显然是不太灵活,因此,将绘图功能封装到控件中,作为工具,将更有利于我们来使用。


先来看下openlayers自带的控件。

1、ol.control.Control类

openlayers中所有控件的基类,因此,我们自定义绘图控件,以继承该类。

2、需求

1)、一个工具条,包含指针、绘点、绘线、绘面、绘圆、绘矩形、清空绘制等按钮;
2)、单击各个绘图按钮将切换至对应的绘图状态;
2)、单击指针按钮切换为非绘图状态;
3)、单击清空绘制清理掉所有已绘制的图形。

3、代码实现

1)、继承

ol.control.DrawControl = function(opt_options){
   
   
    var opt_options = opt_options || {
   
   };

    //定义按钮
    this.drawType = ['None', 'Point', 'LineString', 'Polygon', 'Circle', 'Box', 'Clear'];
    var defaultControlClassName = 'ol-unselectable ol-control';
    this.element = document.createElement('div');
    this.element.className = defaultControlClassName + ' ' + 'drawtools';

    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值