ArcgisEngine实现对地图的放大、缩小和平移
编程技术  /  houtizong 发布于 3年前   165
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是文件路径.
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接