摘要: ae的官方类库没有提供该控件,需要自己实现,不过也比较简单,原理或实现的思路是,另外增加一个axMapControl控件,把他的视图设为地图的全图范围,把当前地图的范围,在这个地图控件上用红色框画出来即可。 首先新建一个用户控件,名称设为MapEagle,在控件上拖拽一个axmapcontrol控件,名称设为axMapEagle ,用来显示地图。 接下来,增加一个自定义属性,用来和地图主窗口关... 阅读全文
posted @ 2009-09-28 22:11 liuyh208 阅读(2743) 评论(2) 推荐(0) 编辑
摘要: 上一个视图命令可以快速的回退到最后一次地图操作以前的地图范围, 下一个视图命令和上一个视图命令恰好相反。举个简单的例子,我现在看北京市的地图,同事甲过来想看看上海的地图,刚看不久,同事乙过来了,他想看北京的,这时上一个视图和下一个视图的命令就有用了,呵呵,同事甲过来后,我把地图平移到上海市范围,同事乙过来后,我点击上一个视图 地图会快速定位到北京市范围,很方便。   ... 阅读全文
posted @ 2009-09-23 21:58 liuyh208 阅读(2072) 评论(1) 推荐(0) 编辑
摘要: 这两个功能,和全图一样简单,也是继承CommandBase基类 1: public FixedZoomIn() 2: : base("FixedZoomIn") 3: { 4: } 5: public override void OnClick() 6: { 7: //Get IEnvelope interface 8: IEnvelope pEnvelope = (IEnve... 阅读全文
posted @ 2009-09-21 23:13 liuyh208 阅读(2087) 评论(0) 推荐(0) 编辑
摘要: 昨天写了一半突然断电,没有存盘,只有重写了,郁闷啊! 和zoomout、zoomin等工具不同,全图工具不用和地图交互,属于命令类工具,只要实现ICommand接口即可。参考zoomout的实现,首先新建一个基类CommandBase,实现Icommand接口,然后新建FullExtent类,继承这个基类,重写一下OnClick方法,即可。 1: public class CommandBas... 阅读全文
posted @ 2009-09-17 20:47 liuyh208 阅读(2784) 评论(1) 推荐(0) 编辑
摘要: 地图平移,可以说是最重要的功能之一,许多地图的默认工具就是平移。AE实现平移,比较简单,代码如下 1: /// <summary> 2: /// 地图漫游工具 3: /// </summary> 4: public class Pan : GISTools.Base.ToolBase 5: { 6: 7: private bool m_PanOperation; 8: 9... 阅读全文
posted @ 2009-09-08 21:25 liuyh208 阅读(3407) 评论(3) 推荐(0) 编辑
摘要: 继承自定义基类ToolBase,代码如下,比以前清爽多了! 1: /// <summary> 2: /// 地图缩小工具 3: /// </summary> 4: public class ZoomOut : ToolBase 5: { 6: private INewEnvelopeFeedback m_feedBack; 7: private IPoint m_point... 阅读全文
posted @ 2009-09-07 21:22 liuyh208 阅读(1698) 评论(5) 推荐(0) 编辑
摘要: 本打算这次写缩小的,发现还得实现Itool和Icommend接口,真是麻烦啊!想到后面还有那么多的工具要写,每个都要实现这两个接口,要ctrl+c 和ctrl+V 多次,对于像我这样的懒人,一次也不想干。重新设计一下,增加个基类,在基类里实现这两个接口,所有的工具都继承这个基类,就OK了! tool和command 的工作方式不同,tool是与地图有交互,command是没有,因此最好设计两个基类... 阅读全文
posted @ 2009-09-06 15:43 liuyh208 阅读(1342) 评论(7) 推荐(0) 编辑
摘要: 地图操作的工具,大部分ArcEngine都有现成的,但是这些工具不太好用,比如提示和名称都是英文,地图操作中没有右键,无法和vs提供的工具条控件或第三方工具条控件集成等,还是自己实现比较灵活方便。     我们就从最简单的放大工具开始来实现地图操作常用的工具吧! 废话少说,先上代码 using System;using ESRI.ArcGIS.Carto;usi... 阅读全文
posted @ 2009-09-04 15:51 liuyh208 阅读(1783) 评论(1) 推荐(0) 编辑
摘要:    随着搞GIS已经有两年了,虽然干过的项目不少,但没有时间总结过,借此机会,谢谢博客,就当是总结+学习了。 对应搞GIS的人来说,ESRI肯定不陌生,ArcEngine就是ESRI的CS开发组件,基于COM接口实现的,目前最新的是9.3.1,支持.net、java、C++、VB等语言的二次开发。它功能强大,ArcMap实现的功能,用它,基本都能实现。 废话少说,进入正题... 阅读全文
posted @ 2009-09-01 15:35 liuyh208 阅读(1280) 评论(3) 推荐(0) 编辑
摘要: 记得第一次用dos时,已经是N年前的事了,呵呵,今天要写个批处理的东西,搜了一些资料,备份一下,以备不时之需。dos下各种常见命令索引▲ dir▲ attrib▲ cd▲ copy▲ xcopy▲ del▲ undelete▲ deltree▲ dos=high▲ doskey&... 阅读全文
posted @ 2009-06-20 15:50 liuyh208 阅读(509) 评论(0) 推荐(0) 编辑