当前位置:  编程技术>.net/c#/asp.net

C#制作鹰眼的详细全过程(带注释)实例代码

    来源: 互联网  发布时间:2014-10-17

    本文导语:  axMapControl1是主控件,axMapControl2是鹰眼控件 要看清楚事件响应   1.鹰眼地图资源载入 代码如下:privatevoid axMapControl1_OnMapReplaced(object sender, IMapControlEvents2_OnMapReplacedEvent e)         {             //当主地图显示控件的地图...

axMapControl1是主控件,axMapControl2是鹰眼控件

要看清楚事件响应

 

1.鹰眼地图资源载入

代码如下:

privatevoid axMapControl1_OnMapReplaced(object sender, IMapControlEvents2_OnMapReplacedEvent e)

        {

            //当主地图显示控件的地图更换时,鹰眼中的地图也跟随更换

            axMapControl2.LoadMxFile(axMapControl1.DocumentFilename);

            axMapControl2.Extent = axMapControl2.FullExtent;

        }


2.绘制鹰眼矩形框
代码如下:

private void axMapControl1_OnExtentUpdated(object sender, IMapControlEvents2_OnExtentUpdatedEvent e)

        {

 

            // 得到新范围

            IEnvelope pEnv = (IEnvelope)e.newEnvelope;

 

            IGraphicsContainer pGra = axMapControl2.Map as IGraphicsContainer;

            IActiveView pAv = pGra as IActiveView;

            //在绘制前,清除axMapControl2中的任何图形元素

            pGra.DeleteAllElements();

 

            IRectangleElement pRectangleEle = new RectangleElementClass();

            IElement pEle = pRectangleEle as IElement;

            pEle.Geometry = pEnv;

 

            //设置鹰眼图中的红线框

            IRgbColor pColor = new RgbColorClass();

            pColor.Red = 255;

            pColor.Green = 0;

            pColor.Blue = 0;

            pColor.Transparency = 255;

            //产生一个线符号对象

            ILineSymbol pOutline = new SimpleLineSymbolClass();

            pOutline.Width = 2;

            pOutline.Color = pColor;

 

            //设置颜色属性

            pColor = new RgbColorClass();

            pColor.Red = 255;

            pColor.Green = 0;

            pColor.Blue = 0;

            pColor.Transparency = 0;

            //设置填充符号的属性

            IFillSymbol pFillSymbol = new SimpleFillSymbolClass();

            pFillSymbol.Color = pColor;

            pFillSymbol.Outline = pOutline;

 

            IFillShapeElement pFillShapeEle = pEle as IFillShapeElement;

            pFillShapeEle.Symbol = pFillSymbol;

            pGra.AddElement((IElement)pFillShapeEle, 0);

            pAv.PartialRefresh(esriViewDrawPhase.esriViewGraphics, null, null);

        }
 


3. 实现互动
代码如下:

   private void axMapControl2_OnMouseDown(object sender, IMapControlEvents2_OnMouseDownEvent e)

        {

            IPoint pPt=new PointClass ();

            pPt.PutCoords (e.mapX ,e.mapY );

            //改变主控件的视图范围

            axMapControl1 .CenterAt (pPt );

        }



    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 想安装samba服务,想制作iso镜像来挂载,如何制作iso文件?
  • ubuntu8.10有个制作u盘启动盘的功能,谁能制作个u盘启动盘的iso给我?小点的,有桌面的。
  • 数据库 iis7站长之家
  • usb闪存启动盘制作工具 Flashboot
  • 制作usb启动盘
  • USB启动盘制作软件 iBurnMgr
  • 图标、光标制作工具 Greenfish
  • 探讨下启动盘的制作原理!
  • 如何制作FC4启动光盘(grub)?
  • Java安装程序制作工具 IzPack
  • 图表制作软件 Openchart2
  • ThinkPHP标签怎么制作?thinkphp标签制作实例教程
  • 电子杂志制作软件 Scribus
  • 利用Wordpress轻松制作电子书 Anthologize
  • 如何利用Linux安装盘制作启动盘?
  • Linux下怎么制作帮助文件
  • chm制作工具 CHMWriter
  • 视频制作工具 FlasKMPEG
  • DVD 视频光盘制作软件 Bombono DVD
  • 图标制作工具 IconDeveloper


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3