版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
北京超圖軟件股份有限公司繪制對象緝私監(jiān)控指揮緝私應(yīng)急信息查詢設(shè)備監(jiān)控主要內(nèi)容矢量數(shù)據(jù)客戶端顯示方法點對象客戶端標(biāo)注方法交互式繪制幾何對象的方法氣泡窗口的顯示方法標(biāo)注對象的選擇事件矢量數(shù)據(jù)客戶端顯示方法顯示圖層矢量要素獲取/創(chuàng)建矢量要素設(shè)置矢量要素顯示風(fēng)格加載幾何對象到圖層矢量要素接口SuperMap.Feature.Vector,點、線、面、文本等SuperMap.Feature.VectorgeometryattributesstylePolygonLineStringPoint屬性信息風(fēng)格,包括點、線、面的風(fēng)格圖層對象接口SuperMap.Layer.Vector可顯示點、線、面、文本等加載矢量要素到圖層上SuperMap.Layer.Vector圖層的使用接口說明addFeatures添加要素對象removeFeatures移除要素對象removeAllFeatures移除所有要素drawFeature在圖層上繪制要素顯示樣式的說明樣式Style的使用有關(guān)Style的相關(guān)屬性請查閱幫助文檔中SuperMap.Feature.Vector.stylefill{Boolean}不需要填充則設(shè)置為false。fillColor{String}十六進(jìn)制填充顏色,默認(rèn)為”#ee9900”。fillOpacity{Number}填充不透明度。默認(rèn)為0.4。stroke{Boolean}不需要描邊則設(shè)為false。strokeColor{String}十六進(jìn)制描邊顏色。strokeOpacity{Number}描邊的不透明度(0-1),默認(rèn)為0.4。strokeWidth{Number}像素描邊寬度,默認(rèn)為1。如何給SuperMap.Layer.Vector圖層設(shè)置樣式方法一:通過設(shè)置SuperMap.Feature.Vector的樣式Style屬性獲得樣式varvectorLayer=newSuperMap.Layer.Vector("VectorLayer");feature=newSuperMap.Feature.Vector();feature.style={strokeColor:"#304DBE",strokeWidth:1,pointerEvents:"visiblePainted",fillColor:"#304DBE",fillOpacity:0.8,pointRadius:2};vectorLayer.addFeatures(feature);如何給SuperMap.Layer.Vector圖層設(shè)置樣式方法二:直接設(shè)置圖層對象的style對象varvectorLayer=newSuperMap.Layer.Vector("VectorLayer",{style:myStyle});使用優(yōu)先級比較
feature.style
>
layer.style
練習(xí)在世界地圖中,繪制赤道線練習(xí)主要代碼//顯示赤道functionshow(){ //獲取赤道的線段
varpoints=newArray(); points.push(newSuperMap.Geometry.Point(180,0)); points.push(newSuperMap.Geometry.Point(-180,0));vargeometry=newSuperMap.Geometry.LineString(points); varstyle={ strokeColor:"red",//"#304DBE", strokeWidth:2, pointerEvents:"visiblePainted", fillColor:"#304DBE", fillOpacity:0.8 } //將赤道顯示在vector圖層上
varfeature=newSuperMap.Feature.Vector(geometry,null,style); lineLayer.drawFeature(feature,style); }點對象客戶端標(biāo)注接口標(biāo)注圖層:SuperMap.Layer.Markers顯示點對象的標(biāo)注信息點對象客戶端標(biāo)注接口標(biāo)注對象:SuperMap.Marker對點進(jìn)行標(biāo)注,可以自定義選擇標(biāo)注的圖標(biāo)需添加到SuperMap.Layer.Markers圖層上SuperMap.Markericonlonlat圖片Marker的位置加載標(biāo)注對象到圖層上SuperMap.Layer.Markers圖層的使用接口說明Markers.addMarker(marker)添加Marker地標(biāo)Markers.removeMarker清除Marker地標(biāo)練習(xí)創(chuàng)建標(biāo)簽圖層,并在(0,0)的坐標(biāo)顯示圖標(biāo),并實現(xiàn)鼠標(biāo)點擊圖標(biāo)時更換圖標(biāo)的功能。練習(xí)標(biāo)注功能主要代碼//添加標(biāo)簽functionShowMarker(){ //創(chuàng)建標(biāo)簽圖層
markers=newSuperMap.Layer.Markers("Markers"); map.addLayer(markers); //添加標(biāo)簽對象
varsize=newSuperMap.Size(44,33); varoffset=newSuperMap.Pixel(-(size.w/2),-size.h); varicon=newSuperMap.Icon('./resource/controlImages/marker.png',size,offset); markers.addMarker(newSuperMap.Marker(newSuperMap.LonLat(0,0),icon));}練習(xí)點擊標(biāo)注更換圖片的主要代碼
mar=newSuperMap.Marker(newSuperMap.LonLat(0,0),icon);//添加marker對象的click事件監(jiān)聽mar.events.on({"click":onclick,"scope":mar});}functiononclick(event){ varmarker=this; varsize=newSuperMap.Size(21,25); varoffset=newSuperMap.Pixel(-(size.w/2),-size.h); varicon=newSuperMap.Icon('../theme/images/cluster4.png',size,offset); varmar=newSuperMap.Marker(marker.getLonLat(),icon); markers.addMarker(mar); markers.removeMarker(marker);}交互式繪制幾何對象的方法交互式操作繪制對象獲取幾何對象設(shè)置幾何對象顯示風(fēng)格加載幾何對象到圖層交互式操作的開發(fā)什么是地圖交互操作在瀏覽器終端通過鼠標(biāo)與地圖進(jìn)行交互操作,如設(shè)定路徑分析的起始點等地圖交互操作的控件SuperMap.Control.DragPan——平移SuperMap.Control.DragFeature——拖拽地物SuperMap.Control.DrawFeature——繪制地物SuperMap.Control.Measure——量算SuperMap.Control.ModifyFeature——修改地物形狀SuperMap.Control.SelectFeature——選擇地物地圖交互操作的實質(zhì)一種操作對應(yīng)一個控件例如:繪制幾何對象——DrawFeature控件某些操作需要Vector圖層的支持例如:DragFeature、DrawFeature、ModifyFeature、SelectFeature通過控件的事件獲取繪制后的信息包括繪制的幾何對象、量算結(jié)果等通過控件事件的回調(diào)函數(shù),整理事件數(shù)據(jù)以及后續(xù)GIS功能開發(fā)。例如:DrawFeature控件——支持的事件類型: featureadded-當(dāng)繪制完成時觸發(fā)。返回繪制的集合對象vector。DrawFeature控件實例化vardrawF=newSuperMap.Control.DrawFeature(layer,handler,options)layer{SuperMap.Layer.Vector}執(zhí)行繪制要素的圖層。handler{SuperMap.Handler}要素繪制事件處理器,指定當(dāng)前繪制的要素類型和操作方法。options{Object}設(shè)置該類及其父類開放的屬性。例如://實例化一個DrawFeature控件,調(diào)用繪制多邊形的事件處理器handler.PolygonvardrawPolygon=newSuperMap.Control.DrawFeature(vectorLayer,SuperMap.Handler.Polygon);DrawFeature控件激活/注銷控件只有處于激活狀態(tài),在地圖窗口才能執(zhí)行相應(yīng)的操作設(shè)置注銷控件,地圖窗口的操作狀態(tài)恢復(fù)到前一次操作狀態(tài)激活控件drawPoint.activate();注銷控件drawPoint.deactivate();地圖窗口當(dāng)前只能存在一種鼠標(biāo)操作動作交互式繪制對象的控件開發(fā)步驟創(chuàng)建客戶端矢量圖層,用于顯示繪制的幾何對象SuperMap.Layer.Vector
Map.addLayers實例化畫圖控件,添加事件監(jiān)聽,并向Map添加該控件SuperMap.Control.DrawFeatureDrawFeature.events.on({“featureadded”:d})激活/注消控件DrawFeature.activate()DrawFeature.deactivate()事件監(jiān)聽獲取繪制的幾何對象,并顯示arguments.feature.geometrySuperMap.Layer.Vector.addFeatures()練習(xí)采用交互式操作實現(xiàn)繪制線段主要代碼1、創(chuàng)建客戶端矢量圖層//創(chuàng)建客戶端矢量圖層,用于繪制線段lineLayer=newSuperMap.Layer.Vector("lineLayer");lineLayer.style=style;…..//加載圖層
functionaddLayer(){//向Map添加圖層
map.addLayers([layer,lineLayer]);}主要代碼2~3、創(chuàng)建繪制線段的控件,監(jiān)聽事件,激活控件//創(chuàng)建繪制線段的控件drawLine=newSuperMap.Control.DrawFeature(lineLayer,SuperMap.Handler.Path,{multi:false});//設(shè)置繪制線段控件的監(jiān)聽事件drawLine.events.on({"featureadded":drawCompleted});//創(chuàng)建地圖對象map=newSuperMap.Map("map",{controls:[drawLine]});….//距離量算functiondistanceMeasure(){ //清空上一次繪制的線段
lineLayer.removeAllFeatures(); //激活繪制線段控件
drawLine.activate();}主要代碼4、獲取線段,并顯示//繪制線段結(jié)束后觸發(fā)函數(shù),獲取繪制的線段,并執(zhí)行量算functiondrawCompleted(arguments){ //屏蔽繪制線段控件
drawLine.deactivate(); //獲取繪制的線段
varfeature=arguments.feature; //清空上一次繪制的線段
lineLayer.removeAllFeatures(); //將已知線段顯示在vector圖層上
lineLayer.drawFeature(feature,style);}氣泡窗口氣泡窗口主要用于顯示數(shù)據(jù)信息氣泡窗口類型以及接口彈窗類SuperMap.Popup固定錨點的浮動彈窗SuperMap.Popup.Anchored具有指向和邊框的浮動彈窗SuperMap.Popup.FramedCloud氣泡窗口的顯示方法創(chuàng)建氣泡向地圖添加氣泡Map.addPopup()練習(xí)向地圖中心點添加氣泡窗口//固定錨點的浮動彈窗functionShowAnchored(){ closeInfoWin(); //組織需要嵌入的HTML字符串表達(dá)
varcontentHTML="<divstyle='width:150px;border-width:2px;border-style:solid;border-color:red;font-size:12px;opacity:0.8'>"; contentHTML+="SuperMap.Popup.Anchored"; contentHTML+="</div>"; varlonLat=newSuperMap.LonLat(0,0); varpopup=newSuperMap.Popup.Anchored("AnchoredWin",lonLat,newSuperMap.Size(120,40),contentHTML,null,false,null); infowin=popup; map.addPopup(popup);}標(biāo)注對象的鼠標(biāo)事件標(biāo)注對象的事件,實現(xiàn)對標(biāo)注的鼠標(biāo)操作響應(yīng)事件名稱說明click當(dāng)鼠標(biāo)單擊maker時觸發(fā)此事件。dblclick當(dāng)鼠標(biāo)雙擊maker時觸發(fā)此事件。mousedown當(dāng)鼠標(biāo)在maker上按下時觸發(fā)此事件。mouseup當(dāng)鼠標(biāo)在maker上按下并放開時觸發(fā)此事件。mousemove當(dāng)鼠標(biāo)移過maker時觸發(fā)此事件。mouseout當(dāng)鼠標(biāo)移出maker時觸發(fā)此事件。mouseover當(dāng)鼠標(biāo)移進(jìn)maker時觸發(fā)此事件。rightclic
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年南昌理工學(xué)院單招綜合素質(zhì)筆試備考題庫含詳細(xì)答案解析
- 2026年常州紡織服裝職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試備考試題及答案詳細(xì)解析
- 2026年江西旅游商貿(mào)職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試備考試題及答案詳細(xì)解析
- 2026年長春健康職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試備考題庫及答案詳細(xì)解析
- 2026年山西青年職業(yè)學(xué)院單招綜合素質(zhì)筆試備考題庫含詳細(xì)答案解析
- 2026年安徽國防科技職業(yè)學(xué)院單招綜合素質(zhì)筆試參考題庫含詳細(xì)答案解析
- 2026年云南交通運輸職業(yè)學(xué)院單招綜合素質(zhì)筆試備考題庫含詳細(xì)答案解析
- 2026年安徽工業(yè)職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)筆試模擬試題含詳細(xì)答案解析
- 2026年河南機(jī)電職業(yè)學(xué)院單招綜合素質(zhì)考試備考試題含詳細(xì)答案解析
- 2026山東濟(jì)南中國十九冶集團(tuán)有限公司招聘考試重點試題及答案解析
- 2026年齊齊哈爾高等師范??茖W(xué)校單招職業(yè)技能測試模擬測試卷必考題
- 初中生物教師培訓(xùn)課件
- 2025年湖南省公務(wù)員錄用考試錄用考試《申論》標(biāo)準(zhǔn)試卷及答案
- 漢字的傳播教學(xué)課件
- 行政崗位面試問題庫及應(yīng)對策略
- 2025衢州市市級機(jī)關(guān)事業(yè)單位編外招聘77人筆試試題附答案解析
- 2025年中信金融業(yè)務(wù)面試題庫及答案
- 《化肥產(chǎn)品生產(chǎn)許可證實施細(xì)則(一)》(復(fù)肥產(chǎn)品部分)
- 零碳園區(qū)數(shù)字化建筑設(shè)計方案
- 不動產(chǎn)數(shù)據(jù)整合技術(shù)策略規(guī)劃方案
- GB/T 46607.1-2025塑料熱固性粉末模塑料(PMCs)試樣的制備第1部分:一般原理及多用途試樣的制備
評論
0/150
提交評論