ArcgisEngine实现对地图的放大、缩小和平移:
个人觉得是平移,不过网上的都是漫游,通俗的说就是把一个地图对象从一边拉到另一边而已。就看人说话吧.
具体实现:
一、引入命名空间
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Controls;
二、代码实现.
int flag = 0;
private void 放大ToolStripMenuItem_Click(object sender, EventArgs e){
axMapControl1.MousePointer = esriControlsMousePointer.esriPointerPageZoomIn;
flag = 1;
}
private void 缩小ToolStripMenuItem_Click(object sender, EventArgs e){
axMapControl1.MousePointer = esriControlsMousePointer.esriPointerPageZoomOut;
flag = 2;
}
private void 平移ToolStripMenuItem_Click(object sender, EventArgs e){
axMapControl1.MousePointer = esriControlsMousePointer.esriPointerPan;
flag = 3;
}
private void axMapControl1_OnMouseDown(object sender, IMapControlEvents2_OnMouseDownEvent e){
IEnvelope ipenv= axMapControl1.TrackRectangle();
if(flag==1){
axMapControl1.Extent = ipenv;
}else if(flag==2){
ipenv = axMapControl1.Extent;
ipenv.Expand(2, 2, true);
axMapControl1.Extent = ipenv;
}else if(flag==3){
ipenv= axMapControl1.Extent ;
axMapControl1.Pan();
}
}
}
三、补充:
在AE中,在地图控件中添加.jpg,.bmp类型图层文件时,调用下面方法会简单很多的.
IRasterLayer rasterLayer = new RasterLayer(); rasterLayer.CreateFromFilePath(str); axMapControl1.AddLayer(rasterLayer, 0);
其中,str是文件路径.
本文详细介绍了使用ArcgisEngine进行地图放大、缩小和平移的具体实现方法,包括引入命名空间、代码实现及补充内容,提供了一个简单易懂的操作指南。
992

被折叠的 条评论
为什么被折叠?



