MapABC地圖使用手冊.doc_第1頁
MapABC地圖使用手冊.doc_第2頁
MapABC地圖使用手冊.doc_第3頁
MapABC地圖使用手冊.doc_第4頁
MapABC地圖使用手冊.doc_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

MapABC 地圖使用手冊MapABC API包括MapABC地圖API和MapABC搜索API。MapABC地圖API可以讓您在自己的網(wǎng)頁中嵌入地圖,制作基于地圖的應(yīng)用,并提供了封裝JavaScript接口的Flash地圖引擎和Ajax地圖引擎,通過接口您可以像MapABC地圖網(wǎng)站一樣,給地圖添加各類標(biāo)注,并顯示信息提示窗口。MapABC搜索API為您提供了豐富的地圖數(shù)據(jù)搜索接口,并提供了值得信賴的基礎(chǔ)地圖數(shù)據(jù)和強(qiáng)大的用戶地圖數(shù)據(jù)服務(wù),這些數(shù)據(jù)都可以展現(xiàn)在您的地圖中。MapABC使用Flash和Ajax技術(shù)的地圖引擎, 開放基于HTTP請求(REST)的服務(wù)接口。(一)Mapabc主要特點(diǎn)是:1、支持開發(fā)者標(biāo)注開發(fā)者在開發(fā)自己的地圖時,不僅希望通過接口自由的調(diào)用展示地圖數(shù)據(jù),也希望將自己的一些個性數(shù)據(jù)加入進(jìn)地圖中。Mapabc的地圖API是國內(nèi)第一個支持開發(fā)者通過接口將自己的數(shù)據(jù)標(biāo)注在地圖上的API。這將讓廣大開發(fā)者真正實(shí)現(xiàn)“我的地圖我做主”的想法。2、 支持FLASH技術(shù)做展現(xiàn)層的地圖 目前,F(xiàn)lash技術(shù)已成為IT網(wǎng)絡(luò)技術(shù)平臺的主流技術(shù)。Mapabc的地圖API在展現(xiàn)層支持最新的Flash技術(shù),這不僅可保證開發(fā)者開發(fā)出的地圖能被所有網(wǎng)友看到,更可使開發(fā)出的地圖更具動態(tài)表現(xiàn)效果。3、支持公交查詢 目前,雖然自駕車一族越來越多,但搭乘公交出行,依然是廣大網(wǎng)友出行的主要方式。是否能為瀏覽者提供靈活的公交查詢也是眾多電子地圖的開發(fā)者所關(guān)注的問題。Mapabc的地圖API是國內(nèi)第一個支持公交查詢的地圖API。4、支持地址匹配我們知道,將一段文本地址信息直接轉(zhuǎn)換為一個在地圖上的對應(yīng)位置點(diǎn)的技術(shù)被稱為地址匹配技術(shù)。這種技術(shù)將極大的方便開發(fā)者開發(fā)地圖。Mapabc的地圖API也是國內(nèi)第一個支持地址匹配的地圖API,即使你有成千上萬條數(shù)據(jù)也不用再擔(dān)心標(biāo)點(diǎn)的繁瑣了,通過地址匹配接口將可快速將點(diǎn)位標(biāo)注在地圖上。5、國內(nèi)最強(qiáng)的本地位置服務(wù)數(shù)據(jù)庫支撐眾所周知,在使用地圖API時,人們普遍會很關(guān)注地圖服務(wù)商的數(shù)據(jù)實(shí)力。Mapabc的地圖API的背后有國內(nèi)最大的位置服務(wù)數(shù)據(jù)庫做支撐,其地圖數(shù)據(jù)覆蓋了全國363個城市,可供使用者調(diào)用展現(xiàn)的位置點(diǎn)數(shù)據(jù)量達(dá)到了千萬級別,同時,眾多城市的底圖數(shù)據(jù)的更新頻率及POI(興趣位置點(diǎn))的更新數(shù)量等也均處于行業(yè)的龍頭位置。6、支持多城市的實(shí)時路況圖層的加載 Mapabc的地圖API目前支持將北京的實(shí)時路況圖層加載到自己的地圖上,不僅能看到所要查詢的地點(diǎn)的位置,也能同時了解城市里的實(shí)時交通情況。(二)Mapabc的使用示例。用戶MapABC服務(wù)器系統(tǒng)服務(wù)器Internet訪問MapABC提供的接口根據(jù)請求,MapABC返回相應(yīng)的信息服務(wù)器回應(yīng)用戶請求用戶請求服務(wù)器 用戶請求系統(tǒng)服務(wù)器,系統(tǒng)服務(wù)器調(diào)用MapABC 服務(wù)器提供的接口。1. “Hello World”程序讓我們從最簡單的“Hello, World”開始吧。下面的例子顯示一個500*400的地圖,中心點(diǎn)位于北京的故宮博物院。代碼示例1:/創(chuàng)建一個MmapOptions對象var mapOptions = new MMapOptions();/設(shè)置地圖組件的IdmapOptions.mapId = fmptest;/設(shè)置地圖的初始Zoom值mapOptions.zoomLevel = 15;/設(shè)置地圖的中心點(diǎn)mapOptions.center = new MLatLng(LQGXRMMVKHDLL, JIOMSTNTPOLHLH);/創(chuàng)建地圖對象var mapObj = new MMap(mapObj, mapOptions); 在上面的例子中,地址/fmp/v1.0/js/fmp.js包含了在您的頁面放置MapABC地圖的全部JavaScript代碼。您的頁面必須包含指向這個地址的 script 標(biāo)記,并加上您的 API Key。例如,如果您的 API Key 是123456,那么您的 script 標(biāo)記應(yīng)該類似這樣:表示地圖的類是 MMap。這個類代表頁面上的單個地圖。您可以根據(jù)需要創(chuàng)建任意多個該類的實(shí)例(一個實(shí)例對應(yīng)頁面上的一個地圖)。在創(chuàng)建地圖實(shí)例時,您需要指定一個頁面上已命名的元素(通常是 div 元素)作為地圖控件的容器。除非您明確地指定了地圖的大小,默認(rèn)情況下,地圖大小會取決于容器的尺寸。2. 地圖基本操作地圖API支持基本的地圖操作,如單擊平移地圖、拖動平移地圖、雙擊放大、滾輪放大等,這些功能也可以通過JavaScript代碼調(diào)用。下面的例子運(yùn)行后,在頁面下方有四個按鈕,分別是“拉框放大”、“拉框縮小”、“測距”和“平移地圖”。測距時可以雙擊結(jié)束測距,也可以點(diǎn)擊“平移地圖”退出測距狀態(tài)。代碼示例2:代碼示例1(把示例1的例子復(fù)制過來) 移動地圖下面這個例子先顯示一張地圖,等待2秒鐘后,地圖的中心會移動到一個新的坐標(biāo)上。示例代碼3:代碼示例1(把示例1的例子復(fù)制過來)/將地圖的中心移到一個新的坐標(biāo)window.setTimeout(function() mapObj.setCenterByLatLng(LQGXQQNRHHHD,JIOMSSPURUHPHH), 2000);鷹眼地圖您可以根據(jù)需要,加載或卸載地圖上的鷹眼,還可以設(shè)置鷹眼的大小比例。示例代碼4:代碼示例1(把示例1的例子復(fù)制過來)/設(shè)置羅盤大小為原來的70%/mapObj.setCompassScale(70);/卸載羅盤/mapObj.removeCompass();3. 在地圖上標(biāo)注MapABC地圖API提供豐富的標(biāo)注功能。這個例子在地圖上放置一個標(biāo)注,點(diǎn)擊標(biāo)注,會打開該標(biāo)注的信息窗口。當(dāng)然,您也可以用方法添加標(biāo)注、刪除標(biāo)注、打開信息窗口。示例代碼5:代碼示例1(把示例1的例子復(fù)制過來)function drawPoint()var pointStyle = new MStyle();pointStyle.lineColor = 0xff0000; /設(shè)置氣泡(TIP)外部 線的顏色pointStyle.lineSize = 3; /線的寬度pointStyle.fillColor = 0xddaabb; /氣泡填充顏色pointStyle.fillOpacity = 50; /填充的透明度pointStyle.labelColor = 0x00ff00; /不打開氣泡(TIP) 顯示文字的顏色var sContent = Hello Word!小學(xué);sContent += 這個是我的加點(diǎn)程序!;sContent += ;pointStyle.textContent = sContent;/這個點(diǎn)是個全局變量,以便使用removePoint刪除point = new MPointOverlay(new MLatLng(MRGYMVMLPH,KJONOWRELHL), 加點(diǎn), pointStyle, 1000);/加true是畫完點(diǎn)后調(diào)整視野,使點(diǎn)在地圖的中心。mapObj.addOverlay(point, true);用圖片和Flash動畫標(biāo)注MapABC地圖API不僅提供缺省的標(biāo)注樣式,還允許您用圖片和Flash動畫標(biāo)注。下面這個例子與前一個例子的功能相同,只不過是把標(biāo)注點(diǎn)換成了Flash動畫。示例代碼6:代碼示例1(把示例1的例子復(fù)制過來)/加載圖片畫用戶自定義點(diǎn)function drawCustomPointImg()var pointStyle = new MStyle();pointStyle.lineColor = 0xff0000;pointStyle.lineSize = 3;pointStyle.fillColor = 0xddaabb;pointStyle.fillOpacity = 50;pointStyle.labelColor = 0x00ff00;var sContent = 中信銀行富華大廈支行;sContent += 北京東城區(qū)朝陽門北大街8號富華大廈C座;sContent += 郵政編碼:100027 ;sContent += 電話pointStyle.textContent = sContent;var customPoint = new MCustomPointOverlay(new MLatLng(LQGXSKKVPDHLL,JIOMTNMTIPDLLL), /fmp/test/components/point/DynamicPoint/redbubble.swf, pointStyle, 3000);mapObj.addOverlay(customPoint, true);/true 為自動調(diào)整視野 標(biāo)注一組點(diǎn)您可以一次標(biāo)注多個點(diǎn),標(biāo)注后,為了同時在地圖內(nèi)顯示這些標(biāo)注,地圖會自動調(diào)整視野。示例代碼7:代碼示例1(把示例1的例子復(fù)制過來)function drawPoints()var pointStyle1 = new MStyle();pointStyle1.lineColor = 0xff0000;pointStyle1.lineSize = 3;pointStyle1.fillColor = 0xddaabb;pointStyle1.fillOpacity = 50;pointStyle1.labelColor = 0x00ff00;pointStyle1.textContent = 第一個點(diǎn)的文字描述詳細(xì)信息;var point1 = new MPointOverlay(new MLatLng(KJONOWKMHLL,MRGYNMLHL), 第一個點(diǎn), pointStyle1, 2001);var pointStyle2 = new MStyle();pointStyle2.lineColor = 0x3300ff;pointStyle2.lineSize = 2;pointStyle2.fillColor = 0xddaaff;pointStyle2.fillOpacity = 60;pointStyle2.labelColor = 0x553344;pointStyle2.textContent = 第二個點(diǎn)的文字描述詳細(xì)信息;var point2 = new MPointOverlay(new MLatLng(KJONOWOILHH,MRGYMXEHHL), 第二個點(diǎn), pointStyle2, 2002);var pointStyle3 = new MStyle();pointStyle3.lineColor = 0xf0aaf0;pointStyle3.lineSize = 5;pointStyle3.fillColor = 0xddaa33;pointStyle3.fillOpacity = 30;pointStyle3.labelColor = 0xff0000;pointStyle3.textContent = 第三個點(diǎn)的文字描述詳細(xì)信息;var point3 = new MPointOverlay(new MLatLng(KJONOWQMHLH,MRGYMVEHHL), 第三個點(diǎn), pointStyle3, 2003);var pointStyle4 = new MStyle();pointStyle4.lineColor = 0x3366ff;pointStyle4.lineSize = 4;pointStyle4.fillColor = 0xddaa99;pointStyle4.fillOpacity = 80;pointStyle4.labelColor = 0x00ffaa;pointStyle4.textContent = 第四個點(diǎn)的文字描述詳細(xì)信息;var point4 = new MPointOverlay(new MLatLng(KJONOWRELHL,MRGYMVMLPH), 第四個點(diǎn), pointStyle4, 2004);var points = new Array();points.push(point1);points.push(point2);points.push(point3);points.push(point4);mapObj.drawPoints(points, true);drawPoints();畫多折線下面這個例子演示了在地圖上畫多折線的功能。您可以設(shè)置多折線的樣式示例代碼8:代碼示例1(把示例1的例子復(fù)制過來)/畫多折線function drawPolyline()polylineStyle = new MStyle();polylineStyle.lineColor = 0x0000ff;/線的顏色polylineStyle.lineSize = 5; /線的寬度polylineStyle.showTip = false; /不顯示tippolyline=newMPolylineOverlay(newMLatLng(LQGUXQPVODHPH,JINMWQJQLPLDDL),new MLatLng(LQGWPLQVKHLLL,JINMYKIOIQHLLL),newMLatLng(LQGUQTJOPHDHL,JINMYPORJLDHH),new MLatLng(LQGWWMNQMLLHD,JIOMPTORQQHHHL), new MLatLng(LQGVVNQWHHLD,JIOMQQNONHLHH), new MLatLng(LQGXVRKULPHLD,JIOMSLHQMRDLLL),polylineStyle, 1001); mapObj.addOverlay(polyline,true);/true 為自動調(diào)整視野畫矩形在實(shí)現(xiàn)拉框搜索、拉框選擇時都需要用到矩形。下面這個例子演示了如何在地圖上畫一個矩形。示例代碼9:代碼示例1(把示例1的例子復(fù)制過來)/畫矩形function drawRectangle()var rectStyle = new MStyle();rectStyle.lineSize = 2;rectStyle.lineColor = 0x00ff00;rectStyle.fillColor = 0x0000ff;rectStyle.fillOpacity = 50;rectStyle.textContent = 這是一個矩形;rectStyle.labelColor = 0xff0000;/參數(shù)分別為 左上角坐標(biāo) 和對應(yīng)和對角線坐標(biāo) , 樣式 , IDrect = new MRectOverlay(new MLatLng(qqhrqjgojKHEJ, oipgkglllgOLIJ), new MLatLng(qqhrqfhohODMF,oipgkgmgljOLIJ), rectStyle, 1002);mapObj.addOverlay(rect);/添加調(diào)整視野代碼mapObj.setCenterByLatLng(qqhrqjgojKHEJ, oipgkglllgOLIJ);mapObj.setZoomLevel(15);4. 畫公交線路在地圖上畫一條公交換乘的路線,并且有小車演示行駛過程,其中還有一個換乘點(diǎn)。示例代碼10:代碼示例1(把示例1的例子復(fù)制過來)/畫公交線路function drawBusLineDemo() /公交線路的所有X坐標(biāo)var arrX = lksfiiqlhuGMDJ,lksfiipmhmKEHJ,lksfiiolltOIDN,lksfiiqlotKIDN,lksfiivejsOIHF,lksfiivikuGELN,lksfiisjmqOIDN,lksfiiseipOELF,lksfiisngmOELJ,lksfiitgimGMLJ,lksfiiuhiOEHJ,lksfiivmpnGEHJ,lksfijpfgpGILN,lksfijrhnsOMHN,lksfijrfnuGILF,lksfijokpnKILJ,lksfijofhuOMLN,lksfijngisOIHN,lksfijnepKEDF,lksfijnfouOMHJ,lksfijnfprOILJ,lksfijnelmKMHN,lksfiivglmOIHF,lksfiivkmoKIDF,lksfiivhisKILJ,lksfiiumlpGIHN,lksfiiphjGILN,lksfiiphhqGMLN,lksfiiqgmuGIHN,lksfiiqmmpKMDF,lksfiingpoKILJ,lksfihvnprKIHJ,lksfihunouOMDN,lksfihskmnKMLJ,lksfihsjmoOILN,lksfihrmjmKEHN,lksfihrjjoKILF,lksfihrjhtGIDJ,lksfihrekqGEDJ,lksfihqknuKMLN,lksfihpnjuKMHF,lksfigvejoGELN,lksfigsnmqOMHJ,lksfigsmitKMHF,lksfigsfjpKEDF,lksfigrjkrOILJ,lksfigregqOMHF,lksfigpnkpGEHF,lksfigonnqGMLJ,lksfignjjoKIHJ,lksfifvkmpGMHJ,lksfifufnrOEHJ,lksfiftjnpOMHN;/公交線路的所有X坐標(biāo)var arrY = nskoknoijojKIHF,nskoljrmnqKIHF,nskomipmnqKEDJ,nskonevkgtjGIHJ,nskonmngoojOIDJ,nskoofphmrmKEHJ,nskpfksfkmmOILN,nskphfumgtjKMHF,nskphmpimrmOMLN,nskpjmphpmmOMLJ,nskpklpfltjGIHJ,nskplkrniqKMDJ,nskpllukmrmGMHN,nskpllwmkmmOMLN,nskplnslpmmOMHN,nskplnpjlOMLJ,nskplnumgtjOELF,nskpmnngkmmKIHJ,nskpnkrgoojKIHN,nskpogwnjojOILJ,nskpogwggtjGMLF,nskpokveoojGMLJ,nskpokunmrmGMDN,nskpolwhnqOMLJ,nskponslnqKMHN,nskponslOMLJ,nskponqlpmmKILJ,nskqffnjKIHN,nskqfjqfpmmKELF,nskqflqnkmmGILJ,nskqflqnnqOEDJ,nskqfluhKIHJ,nskqfluhjojKIHN,nskqfluhnqOIHN,nskqfmtfgtjGELF,nskqgfqnhrmKMDN,nskqgnogKIDJ,nskqhiqhpmmOMDN,nskqhmvhiqOMLJ,nskqigrhnqKILN,nskqigsfnqKILF,nskqigrmjojOIHN,nskqigrmmrmGMHJ,nskqikrniqOILN,nskqjhvlKIHF,nskqjmoiiqOILJ,nskqkgpmlOIHN,nskqleoepmmOMLN,nskqljqhpmmGIDN,nskqlmvlhrmKILN,nskqmhqnhrmOMLF,nskqmlqglOMLJ,nskqngtfltjKIDN;/換成站的坐標(biāo)var changeStationLngs = lksfijnfouOMHJ,lksfijnfprOILJ;var changeStationLats = nskpogwnjojOILJ,nskpogwggtjGMLF;var startStyle = new MStyle();startStyle.textContent=大興;var endStyle = new MStyle();endStyle.textContent=中關(guān)村;var lineStyle = new MStyle();lineStyle.lineSize = 3;lineStyle.lineColor = 0x0000ff;lineStyle.carSpeed = 5;var startPoint = new MPointOverlay(new MLatLng(lksfiiqlhuGMDJ,nskoknoijojKIHF), 起點(diǎn), startStyle);var endPoint = new MPointOverlay(new MLatLng(lksfiftjnpOMHN,nskqngtfltjKIDN), 終點(diǎn), endStyle);mapObj.drawBusLine(arrX, arrY, changeStationLngs, changeStationLats, startPoint, endPoint, lineStyle, true); /參數(shù)true 為自動調(diào)整視野5. 用鼠標(biāo)畫圖使用MapABC地圖API您可以隨心所欲的用鼠標(biāo)在地圖上繪制幾何圖形。下面的例子演示了使用鼠標(biāo)畫點(diǎn)、多折線、多邊形、矩形、圓、正多邊形等幾何圖形,也演示了如何刪除繪制的圖形。示例代碼11:代碼示例1(把示例1的例子復(fù)制過來)/注冊地圖初始化完成事件 地圖初始化完執(zhí)行 mapInited() 方法mapObj.addEventListener(MMap.EVENT_MAP_INITIALIZED, mapInited);/注冊地圖鼠標(biāo)雙擊點(diǎn)擊事件 之后執(zhí)行dbclickmapObj.addEventListener(MMap.EVENT_MAP_DBCLICK, dbclick);/注冊鼠標(biāo)畫多折線后事件 之后執(zhí)行polylineDrawnmapObj.addEventListener(MMap.EVENT_POLYLINE_DRAWN, polylineDrawn);/注冊鼠標(biāo)畫矩形后事件 之后執(zhí)行rectDrawnmapObj.addEventListener(MMap.EVENT_RECT_DRAWN, rectDrawn);/注冊鼠標(biāo)畫多邊形后事件 之后執(zhí)行polygonDrawnmapObj.addEventListener(MMap.EVENT_POLYGON_DRAWN, polygonDrawn);/注冊鼠標(biāo)畫圓后事件 之后執(zhí)行circleDrawnmapObj.addEventListener(MMap.EVENT_CIRCLE_DRAWN, circleDrawn);/注冊鼠標(biāo)畫正多邊形后事件 之后執(zhí)行regularpolygonDrawnmapObj.addEventListener(MMap.EVENT_REGULARPOLYGON_DRAWN, regularpolygonDrawn);function mapInited(event)alert(地圖初始化完成!);/關(guān)閉默認(rèn)鼠標(biāo)放大地圖操作mapObj.switchDefaultDBClickProcessor(false);function dbclick(event)alert(您雙擊的位置點(diǎn)的地圖ID,ZOOM值,坐標(biāo)為:+event.args);/返回坐標(biāo)為該點(diǎn)的XY 值function polylineDrawn(event)alert(您畫多折線的地圖ID,ZOOM值,坐標(biāo)為:+event.args);/返回坐標(biāo)為多點(diǎn)的XY 值function rectDrawn(event)alert(您畫矩形的地圖ID,ZOOM值,坐標(biāo)為:+event.args);/*當(dāng)用鼠標(biāo)在地圖上畫完一個矩形時觸發(fā)。event.type=”onRectDrawn”event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,idargs 的值是一個以“,”分隔的字符串,其中:mapId:地圖的IdzoomLevel:地圖當(dāng)前的zoom 值point1Lng,point1Lat,point2Lng,point2Lat:表示矩形對角線上的兩個頂點(diǎn)。每對坐標(biāo)都是經(jīng)度在前,緯度在后。根據(jù)鼠標(biāo)畫矩形時的順序,這兩個點(diǎn)有可能為左上和右下或者右上和左下。id:矩形的Id,引擎隨機(jī)生成的一個guid。*/function polygonDrawn(event)alert(您畫多邊形的地圖ID,ZOOM值,坐標(biāo)為:+event.args);/*event.type=”onPolygonDrawn”event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,idargs 的值是一個以“,”分隔的字符串,其中:mapId:地圖的IdzoomLevel:地圖當(dāng)前的zoom 值33point1Lng,point1Lat,point2Lng,point2Lat,:一個坐標(biāo)序列,表示多邊形的每一個頂點(diǎn)。節(jié)點(diǎn)坐標(biāo)按照經(jīng)度在前,緯度在后順序排列。id:多邊形的Id,引擎隨機(jī)生成的一個guid。*/function circleDrawn(event)alert(您畫圓的地圖ID,ZOOM值,坐標(biāo)為:+event.args);/*event.type=”onCircleDrawn”event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,idargs 的值是一個以“,”分隔的字符串,其中:mapId:地圖的IdzoomLevel:地圖當(dāng)前的zoom 值point1Lng,point1Lat,point2Lng,point2Lat:兩對坐標(biāo),第一對是圓心坐標(biāo),第二對是圓的外接矩形的一個頂點(diǎn)。每對坐標(biāo)都是經(jīng)度在前,緯度在后。根據(jù)鼠標(biāo)畫圓形時的順序,第二對坐標(biāo)可能為外接矩形的任一個頂點(diǎn)。id:圓形的Id,引擎隨機(jī)生成的一個guid。*/function regularpolygonDrawn(event)alert(您畫正多邊形的地圖ID,ZOOM值,坐標(biāo)為:+event.args);/*event.type=”onRegularPolygonDrawn”event.args=mapId,zoomLevel,point1Lng,point1Lat,point2Lng,point2Lat,idargs 的值是一個以“,”分隔的字符串,其中:mapId:地圖的IdzoomLevel:地圖當(dāng)前的zoom 值point1Lng,point1Lat,point2Lng,point2Lat:兩對坐標(biāo),第一對是正多邊形的圓心坐標(biāo),第二對是畫正多邊形時鼠標(biāo)拖動結(jié)束的位置,即正多邊形的一個頂點(diǎn)。每對坐標(biāo)都是經(jīng)度在前,緯度在后。id:正多邊形的Id,引擎隨機(jī)生成的一個guid。*/鼠標(biāo)畫折線function beginDrawPolylineOnMap()mapObj.quitMouseDraw();var polylineStyle = new MStyle();polylineStyle.lineColor = 0xff0000;polylineStyle.lineSize = 5;mapObj.beginDrawPolylineOnMap(polylineStyle);/鼠標(biāo)畫矩形function beginDrawRectOnMap()mapObj.quitMouseDraw();var rectStyle = new MStyle();rectStyle.lineColor = 0x00ff00;rectStyle.lineSize = 3;rectStyle.fillOpacity = 30;rectStyle.fillColor = 0x009999;mapObj.beginDrawRectOnMap(rectStyle);/鼠標(biāo)畫多邊形function beginDrawPolygonOnMap()mapObj.quitMouseDraw();var polygonStyle = new MStyle();polygonStyle.lineColor = 0xff0000;polygonStyle.lineSize = 5;polygonStyle.fillOpacity = 50;polygonStyle.fillColor = 0x999900;mapObj.beginDrawPolygonOnMap(polygonStyle);/鼠標(biāo)畫圓function beginDrawCircleOnMap()mapObj.quitMouseDraw();var circleStyle = new MStyle();circleStyle.lineColor = 0xff00ff;circleStyle.lineSize = 4;circleStyle.fillOpacity = 60;circleStyle.fillColor = 0xff9900;mapObj.beginDrawCircleOnMap(circleStyle);/鼠標(biāo)畫正多邊形function beginDrawRegularPolygonOnMap()mapObj.quitMouseDraw();var regularPolygonStyle = new MStyle();regularPolygonStyle.lineColor = 0x6600ff;regularPolygonStyle.lineSize = 6;regularPolygonStyle.sideCount = 6;regularPolygonStyle.fillOpacity = 40;regularPolygonStyle.fillColor = 0x009900;mapObj.beginDrawRegularPolygonOnMap(regularPolygonStyle); 6. 事件處理事件是面向?qū)ο缶幊痰膹?qiáng)大工具,可以提高應(yīng)用的交互性。MapABC地圖API提供了大量的事件,讓您輕松開發(fā)更多互動應(yīng)用。鼠標(biāo)單擊事件是最常用的事件,注冊一個單擊事件的事件處理函數(shù),當(dāng)鼠標(biāo)在地圖上單擊時,會把地圖的id,當(dāng)前的縮放級別,鼠標(biāo)點(diǎn)擊處的坐標(biāo)返回到事件處理函數(shù)里。示例代碼12:代碼示例1(把示例1的例子復(fù)制過來)/注冊地圖初始化完成事件 地圖初始化完執(zhí)行 mapInited() 方法mapObj.addEventListener(MMap.EVENT_MAP_INITIALIZED, mapInited);/注冊鼠標(biāo)畫點(diǎn)后事件mapObj.addEventListener(MMap.EVENT_POINT_DRAWN, pointDrawn);function mapInited()alert(初始化完成,請?jiān)诘貓D上加點(diǎn)!);beginDrawPointOnMap();function beginDrawPointOnMap()var pointStyle = new MStyle();pointStyle.lineColor = 0x445599;pointStyle.lineSize = 3;pointStyle.fillColor = 0xaa9900;pointStyle.fillOpacity = 30;pointStyle.label = 一個點(diǎn);pointStyle.textContent = 鼠標(biāo)畫點(diǎn);mapObj.beginDrawPointOnMap(pointStyle);function pointDrawn(event)alert(event.args);7. 右鍵菜單想實(shí)現(xiàn)更多的定制化?MapABC地圖API讓您隨意定義右鍵菜單。您可以增加自己的右鍵菜單選項(xiàng)。點(diǎn)擊右鍵菜單,選擇菜單項(xiàng)后,地圖引擎會拋出右鍵菜單點(diǎn)擊事件,并傳出當(dāng)前點(diǎn)擊的參數(shù)。您可以在右鍵菜單事件處理函數(shù)里添加代碼,實(shí)現(xiàn)菜單項(xiàng)對應(yīng)的功能。示例代碼13:代碼示例1(把示例1的例子復(fù)制過來)/注冊右鍵菜單 回調(diào)方法mapObj.addEventListener(MMap.EVENT_POPUP_MENU_CLICK

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論