PIE SDK地图书签】的更多相关文章

地图书签,可以理解为暂时记录当前地图的范围和放大级别,在后续的操作中如果想回到地图之前的状态,就可以点击保存的书签就可以回到此状态,如图所示: 地图刚加载的时候是一幅世界地图 我们将地图的中心拖到南美洲,将地图放大到一定比例,创建以“南美洲”为名称的书签,如下图所示: 创建后书签,在地图上随意拖动地图,并进行放大或缩小,然后点击“南美洲”书签,地图会定位到书签的南美洲视图范围. 下面来介绍下实现的主要代码: 要实现地图书签功能主要有两个步骤: 1.如何创建书签: 2.点击书签地图如何定位到书签的…
1.功能简介 地图范围设置主要就是对图层的地图浏览控制,例如地图的放大.缩小.漫游.全图显示.1:1视图.比例尺等功能,能更好的与地图有一个互动的地图浏览体验.PIE SDK对地图范围设置主要利用ICommand命令或者ITool对对应功能命令的调用,调用简单易于实现. 2.功能实现说明 2.1. 实现思路及原理说明 第一步 创建对应的命令实例化对象 第二步 创建插件对象 第三步 调用OnClick方法触发事件 2.2. 核心接口与方法 接口/类 方法/属性 说明 PIE.SystemUI.IC…
1. 功能简介 在数据种类较多.渲染规则复杂的情况下,逐个设置其渲染方式是一件繁琐的工作.PIE SDK提供了一种省力省心的办法, PIE SDK提供栅格和矢量数据渲染方案的打开与保存.能够将配色方案存储为xml文件,并能通过读取xml文件,实例化出Render对象,这将简化同类数据的渲染配置工作,并减少开发人员的代码维护. 栅格数据渲染方案控制主要是在程序开发之前,根据数据分类组织对应的渲染方案,实现在程序中能够动态的加载显示方案文件(简而言之就是每一个渲染方案都有一个指定的渲染方案xml文件…
鹰眼图,是GIS的一个基本功能,在鹰眼图上可以像从空中俯视一样查看地图框中所显示的地图在整个图中的位置,是对全局地图的一种概述表达,能够起到很好的空间提示和导航的作用.网上有很多Arcengine 二次开发的相关的鹰眼图的例子,思路差不多. 现在呢,具体介绍下基于我们PIE SDK是如何实现这基本工具鹰眼图功能的基本实现. 要实现鹰眼图功能主要就是通过两个mapControl控件,主地图控件是mapControlMain,鹰眼图控件是mapHawkEyeControl,实现关键点有两点:1.如何…
地图平移校正,当加载两幅空间参考一样的影像,其中一幅影像有点偏移,这时就以另一幅影像为基准将其进行平移校正,然后保存,再次加载就不会出现偏移了. 下面来介绍下实现的主要代码: 首先通过选中目录树中的要平移的图层,拖动图层进行平移校正,计算出图层平移的偏移量,然后修改栅格数据集的仿射变换参数的坐标即可,核心方法就是PIE SDK的SetOffset 和GetOffset方法: 平移校正的过程主要涉及到鼠标的MouseDown.MouseUp和MouseMove事件. 当鼠标按下,记录鼠标的坐标,为…
1. 功能简介 地图图层控制就是图层的相关操作,如地图图层数据的添加.删除.移动和拖拽等功能. 2. 功能实现说明 2.1. 实现思路及原理说明 第一步 图层添加是调用AddLayer方法将图层添加到地图中 第二步 图层删除是调用Delete方法将指定索引的图层删除 第三步 图层移动是调用MoveLayerTo方法将指定的图层移动到指定的索引位置 2.2 . 核心接口与方法 接口/类 方法/属性 说明 PIE.AxControls.MapControl AddLayer 添加图层 DeleteL…
1. 功能简介 地图范围设置的监听就是通过IMapControlEvents接口对地图的视图范围更新或者地图的分辨率发生变化进行监听,然后做出相应的操作. 图层事件的监听就是通过IActiveViewEvents接口对地图的添加,删除和移动图层操作进行监听,然后做出相应操作,例如鹰眼图,当监听主地图添加一个新图层数据时,鹰眼图就可以通过将新图层显示在鹰眼图中. 2. 功能实现说明 2.1. 实现思路及原理说明 第一步 绑定地图视图事件,添加地图控制的监听事件 第二步 根据不同的事件进行不同的功能…
1.1. 功能简介 地图显示范围截图是将当前地图显示的范围进行输出.输出的 格式是png.bmp,主要思路就是通过IActiveView接口下的Output()方法进行输出 1.2. 功能实现说明 2.1. 实现思路及原理说明 第一步 设置图片导出路径 第二步 设置输出的属性ExportPNG(宽度.高度.导出路径等) 第三步 地图调用OutPut()方法进行输出 2.2. 核心接口与方法 接口/类 方法/属性 说明 PIE.Display.IDisplayTransformation Devi…
1.功能简介 地图鼠标事件包含鼠标的按下MouseDown(),弹起MouseUp(),移动MouseMove()等事件,通过这些事件可以对地图进行动态的操作,接下来以地图状态栏的信息为例具体介绍如何使用 这三种事件. 2.功能实现说明 2.1. 实现思路及原理说明 第一步:右键程序主界面控件->属性->点击事件(⚡符号)->找到鼠标模块 第二步:找到对应的事件在表格出直接回车键或者双击就可以进入到代码模块(例如鼠标点击事件在MouseDown的第二列回车或者双击即可) 第三步:根据事件…
放大镜,在地图的浏览过程中在主地图和次地图中起到很好的辅助作用, 要实现放大镜功能主要就是通过两个mapControl控件,主地图控件是mapControlMain,放大镜控件是UserControl_Magnifier,实现关键点有两点:1.如何使两个控件使用的数据保持一致:2.如何绘制放大镜中的元素框. 一.数据一致 当主地图添加地图图层数据就会触发接口IActiveViewEvents接口中的地图添加事件OnLayerAdded,或者图层的删除等操作,放大镜的控件就会将图层数据添加到放大镜…