跟著書做的,看起來比較粗糙,但還是能實現基本的鷹眼功能。
點滴記錄學習,早日出人頭地!
同步鷹眼
private
void mainmapcontrol_onmapreplaced(object
sender, esri.arcgis.controls.imapcontrolevents2_onmapreplacedevent e)
#region 鷹眼同步
//////鷹眼同步
/// private
void
synchronizeeagleeye()
//設定鷹眼和座標系統一致
eagleeyemapcontrol.spatialreference = mainmapcontrol.spatialreference;//
spatialreference 參考空間
for (int i = mainmapcontrol.layercount - 1; i >= 0; i --)}}
}else}}
//設定鷹眼地圖全圖顯示
eagleeyemapcontrol.extent =mainmapcontrol.fullextent;
penv = mainmapcontrol.extent as
ienvelope;
drawrectangle(penv);
// eagleeyemapcontrol.activeview.refresh();//重新整理}
}
#endregion
//移動矩形框
private
void eagleeyemapcontrol_onmousemove(object
sender, esri.arcgis.controls.imapcontrolevents2_onmousemoveevent e)
else
if(bcandrag)}}
private
void eagleeyemapcontrol_onmousedown(object sender, esri.arcgis.controls.imapcontrolevents2_onmousedownevent e) //
按下滑鼠不放
pmoverectpoint = new pointclass(); //
moverectpoint 移動矩形點
//pointclass 報錯,修改報錯引用嵌入操作為false
pmoverectpoint.putcoords(e.mapx, e.mapy);//
記錄點選的第乙個座標
}
else
if (e.button == 2) //
按下滑鼠右鍵繪製矩形框}}
private
void eagleeyemapcontrol_onmouseup(object sender, esri.arcgis.controls.imapcontrolevents2_onmouseupevent e) //
滑鼠抬起時觸發
//感覺更是click事件....
bcandrag = false
; }
}private
void mainmapcontrol_onextentupdated(object
sender, imapcontrolevents2_onextentupdatedevent e)
#region 鷹眼矩形框
//////鷹眼矩形框
/// ///
private
void
drawrectangle(ienvelope penvelope)
#endregion
#region 獲取rgb顏色
//////獲取rgb顏色
/// ///
紅 ///
綠 ///
藍 ///
private irgbcolor getrgbcolor(int intr, int intg, int
intb)
prgbcolor = new rgbcolorclass();//
若出現無法嵌入互操作...,引用 display,屬性,嵌入互操作型別 選擇 false
prgbcolor.red =intr;
prgbcolor.green =intg;
prgbcolor.blue =intb;
return
prgbcolor;
}#endregion
#region 載入地圖
private
void btnaddmx_click(object
sender, eventargs e)
if(mainmapcontrol.checkmxfile(pfilename))
else}}
catch
(exception ex)
}#endregion
#region clearalldata
private
void
clearalldata()
}#endregion
}}
AE 中鷹眼實現
private void axmapcontrol1 onmapreplaced object sender,imapcontrolevents2 onmapreplacedevent e 同步mapcontrol1 與 2 else axmapcontrol2.loadmxfile axmapco...
VC MapX鷹眼實現
我的基本實現想法是,在同乙個view視窗下家兩個cmapx控制項,乙個稱為主圖,乙個稱為鷹眼圖。cmapx m ctrlmapx 主圖 cmapx m eaglemapx 鷹眼圖 注意事項 在view裡的oncreate函式一定要想建立m eaglemapx,這樣才能看見鷹眼圖。既如此 m eagl...
MapX系列 鷹眼
鷹眼 map物件的ctlbounds 是當前可視地圖區域的邊框矩形,可以用 ctlbounds 生成鷹眼。if not m mxmapee is nothing then dim mxpoints as new mapxlib.points dim mxrectangle as new mapxli...