drawingManager.js
3.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
var DrawingManagerObj = function () {
// 创建鼠标绘制管理类
var drawingManager = '';
var draMangerObj = {
/** 初始化绘制工具类 */
init : function(map, styleOptions) {
drawingManager = new BMapLib.DrawingManager(map, {
//是否开启绘制模式
isOpen : false,
//是否显示工具栏
enableDrawingTool : false,
drawingToolOptions : {
//位置
anchor : BMAP_ANCHOR_TOP_RIGHT,
//偏离值
offset : new BMap.Size(5, 5),
//工具栏缩放比例
scale : 0.8
},
//线的样式
polygonOptions : styleOptions
});
// 添加绘画完成事件
drawingManager.addEventListener('polygoncomplete', function(polygon) {
drawingManager.close();
var points = polygon.getPath();
if (points.length < 3) {
// 弹出提示消息
layer.msg('坐标点不能小于三个,请点击"退出编辑"后重新修改');
WorldsBMap.getmapBValue().removeOverlay(polygon);
return false;
} else {
var bufferPolygonWkt = new Array();
for(var i = 0;i < points.length;i++) {
bufferPolygonWkt.push(points[i].lng + ' ' + points[i].lat)
}
bufferPolygonWkt.push(points[0].lng + ' ' + points[0].lat)
var add = AddStationObj.getAddStation(), edit = EditStationObj.getEditStation();
if(!$.isEmptyObject(add)){
/** 设置新增站点集合对象范围图形类型属性值 @param:<shapesType:范围图形类型) */
AddStationObj.setAddStationShapesType('d');
/** 设置新增站点集合对象圆形半径属性值 @param:<radius:圆形半径) */
AddStationObj.setAddStationRadius('');
/** 设置新增站点集合对象图形百度坐标集合属性值 @param:<bPolygonGrid:图形百度坐标集合) */
AddStationObj.setBPolygonGrid(bufferPolygonWkt.join(','));
$.get('add_stationroute_step2.html', function(m){
$(pjaxContainer).append(m);
$('#add_stationroute_step2_modal').trigger('modal.show', [WorldsBMap,GetAjaxData,AddStationObj,LineObj,PublicFunctions]);
});
}
if(!$.isEmptyObject(edit)){
/** 设置修改站点集合对象范围图形类型属性值 @param:<shapesType:范围图形类型) */
EditStationObj.setEditStationShapesType('d');
/** 设置修改站点集合对象圆形半径属性值 @param:<radius:圆形半径) */
EditStationObj.setEditStationRadius('');
/** 设置修改站点集合对象图形百度坐标集合属性值 @param:<bPolygonGrid:图形百度坐标集合) */
EditStationObj.setEitdBPolygonGrid(bufferPolygonWkt.join(','));
// 加载编辑页面
$.get('edit_stationroute_step2.html', function(m){
$(pjaxContainer).append(m);
$('#edit_stationroute_step2_modal').trigger('modal.show', [WorldsBMap,GetAjaxData,EditStationObj,LineObj,PublicFunctions]);
});
}
}
});
return drawingManager;
},
openDrawingManager : function() {
// 打开鼠标绘画工具
drawingManager.open();
// 设置属性
drawingManager.setDrawingMode(BMAP_DRAWING_POLYGON);
},
closeDrawingManager : function() {
drawingManager.close();
}
}
return draMangerObj;
}();