鼠標(biāo)繪制管理類(lèi),實(shí)現(xiàn)鼠標(biāo)繪制管理的入口。 實(shí)例化該類(lèi)后,即可調(diào)用該類(lèi)提供的open 方法開(kāi)啟繪制模式狀態(tài)。 也可加入工具欄進(jìn)行選擇操作。
源文件: DrawingManager.js.
類(lèi) | 描述 |
BMapLib.DrawingManager(map, opts) | DrawingManager類(lèi)的構(gòu)造函數(shù) |
方法 | 返回值 | 描述 |
close() | 關(guān)閉地圖的繪制狀態(tài) | |
關(guān)閉距離或面積計(jì)算 | ||
打開(kāi)距離或面積計(jì)算 | ||
DrawingType | 獲取當(dāng)前的繪制模式 | |
open() | 開(kāi)啟地圖的繪制模式 | |
setDrawingMode(DrawingType) | Boolean | 設(shè)置當(dāng)前的繪制模式,參數(shù)DrawingType,為5個(gè)可選常量: |
事件 | 參數(shù) | 描述 |
circlecomplete(overlay) | {Circle} | 繪制圓完成后,派發(fā)的事件接口 |
markercomplete(overlay) | {Marker} | 繪制點(diǎn)完成后,派發(fā)的事件接口 |
{Event Object} | 鼠標(biāo)繪制完成后,派發(fā)總事件的接口 | |
polygoncomplete(overlay) | {Polygon} | 繪制多邊形完成后,派發(fā)的事件接口 |
polylinecomplete(overlay) | {Polyline} | 繪制線完成后,派發(fā)的事件接口 |
rectanglecomplete(overlay) | {Polygon} | 繪制矩形完成后,派發(fā)的事件接口 |
類(lèi)
BMapLib.DrawingManager(map, opts)
DrawingManager類(lèi)的構(gòu)造函數(shù)
var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 15); var myDrawingManagerObject = new BMapLib.DrawingManager(map, {isOpen: true, drawingType: BMAP_DRAWING_MARKER, enableDrawingTool: true, enableCalculate: false, drawingToolOptions: { anchor: BMAP_ANCHOR_TOP_LEFT, offset: new BMap.Size(5, 5), drawingTypes : [ BMAP_DRAWING_MARKER, BMAP_DRAWING_CIRCLE, BMAP_DRAWING_POLYLINE, BMAP_DRAWING_POLYGON, BMAP_DRAWING_RECTANGLE ] }, polylineOptions: { strokeColor: "#333" });
參數(shù):
{Map} map
Baidu map的實(shí)例對(duì)象
{Json Object} opts
可選的輸入?yún)?shù),非必填項(xiàng)。可輸入選項(xiàng)包括:
{"isOpen" : {Boolean} 是否開(kāi)啟繪制模式
"enableDrawingTool" : {Boolean} 是否添加繪制工具欄控件,默認(rèn)不添加
"drawingToolOptions" : {Json Object} 可選的輸入?yún)?shù),非必填項(xiàng)。可輸入選項(xiàng)包括
"anchor" : {ControlAnchor} 停靠位置、默認(rèn)左上角
"offset" : {Size} 偏移值。
"scale" : {Number} 工具欄的縮放比例,默認(rèn)為1
"drawingModes" : {DrawingType} 工具欄上可以選擇出現(xiàn)的繪制模式,將需要顯示的DrawingType以數(shù)組型形式傳入,如[BMAP_DRAWING_MARKER, BMAP_DRAWING_CIRCLE] 將只顯示畫(huà)點(diǎn)和畫(huà)圓的選項(xiàng)
"enableCalculate" : {Boolean} 繪制是否進(jìn)行測(cè)距(畫(huà)線時(shí)候)、測(cè)面(畫(huà)圓、多邊形、矩形)
"markerOptions" : {CircleOptions} 所畫(huà)的點(diǎn)的可選參數(shù),參考api中的對(duì)應(yīng)類(lèi)
"circleOptions" : {CircleOptions} 所畫(huà)的圓的可選參數(shù),參考api中的對(duì)應(yīng)類(lèi)
"polylineOptions" : {CircleOptions} 所畫(huà)的線的可選參數(shù),參考api中的對(duì)應(yīng)類(lèi)
"polygonOptions" : {PolygonOptions} 所畫(huà)的多邊形的可選參數(shù),參考api中的對(duì)應(yīng)類(lèi)
"rectangleOptions" : {PolygonOptions} 所畫(huà)的矩形的可選參數(shù),參考api中的對(duì)應(yīng)類(lèi)
方法詳述
close()
關(guān)閉地圖的繪制狀態(tài)
myDrawingManagerObject.close();
disableCalculate()
關(guān)閉距離或面積計(jì)算
myDrawingManagerObject.disableCalculate();
enableCalculate()
打開(kāi)距離或面積計(jì)算
myDrawingManagerObject.enableCalculate();
{DrawingType} getDrawingMode()
獲取當(dāng)前的繪制模式
alert(myDrawingManagerObject.getDrawingMode());
返回值:
{DrawingType} 繪制的模式
open()
開(kāi)啟地圖的繪制模式
myDrawingManagerObject.open();
{Boolean} setDrawingMode(DrawingType)
設(shè)置當(dāng)前的繪制模式,參數(shù)DrawingType,為5個(gè)可選常量:
BMAP_DRAWING_MARKER 畫(huà)點(diǎn)
BMAP_DRAWING_CIRCLE 畫(huà)圓
BMAP_DRAWING_POLYLINE 畫(huà)線
BMAP_DRAWING_POLYGON 畫(huà)多邊形
BMAP_DRAWING_RECTANGLE 畫(huà)矩形
myDrawingManagerObject.setDrawingMode(BMAP_DRAWING_POLYLINE);
參數(shù):
{DrawingType} DrawingType
返回值:
{Boolean}
事件詳述
circlecomplete(overlay)
繪制圓完成后,派發(fā)的事件接口
參數(shù):
{Circle} overlay
回調(diào)函數(shù)會(huì)返回相應(yīng)的覆蓋物,
{"overlay : {Circle}
markercomplete(overlay)
繪制點(diǎn)完成后,派發(fā)的事件接口
參考示例:myDrawingManagerObject.addEventListener("circlecomplete", function(e, overlay) {
alert(overlay);
});
參數(shù):
{Marker} overlay
回調(diào)函數(shù)會(huì)返回相應(yīng)的覆蓋物,
{"overlay : {Marker}
overlaycomplete(e)
鼠標(biāo)繪制完成后,派發(fā)總事件的接口
參考示例:myDrawingManagerObject.addEventListener("overlaycomplete", function(e) {
alert(e.drawingMode);
alert(e.overlay);
alert(e.calculate);
alert(e.label);
});
參數(shù):
{Event Object} e
回調(diào)函數(shù)會(huì)返回event參數(shù),包括以下返回值:
{"drawingMode : {DrawingType} 當(dāng)前的繪制模式
"overlay:{Marker||Polyline||Polygon||Circle} 對(duì)應(yīng)的繪制模式返回對(duì)應(yīng)的覆蓋物
"calculate:{Number} 需要開(kāi)啟計(jì)算模式才會(huì)返回這個(gè)值,當(dāng)繪制線的時(shí)候返回距離、繪制多邊形、圓、矩形時(shí)候返回面積,單位為米,
"label:{Label} 計(jì)算面積時(shí)候出現(xiàn)在Map上的Label對(duì)象
polygoncomplete(overlay)
繪制多邊形完成后,派發(fā)的事件接口
參數(shù):
{Polygon} overlay
回調(diào)函數(shù)會(huì)返回相應(yīng)的覆蓋物,
{"overlay : {Polygon}
polylinecomplete(overlay)
繪制線完成后,派發(fā)的事件接口
參數(shù):
{Polyline} overlay
回調(diào)函數(shù)會(huì)返回相應(yīng)的覆蓋物,
{"overlay : {Polyline}
rectanglecomplete(overlay)
繪制矩形完成后,派發(fā)的事件接口
參數(shù):
{Polygon} overlay
回調(diào)函數(shù)會(huì)返回相應(yīng)的覆蓋物,
{"overlay : {Polygon}