摘要:代码: 1 public class WorkspaceHelper 2 { 3 public static string GISConnectionString; 4 public static IWorkspace GetAccessW...
阅读全文
摘要:本文介绍c#写的利用ArcGIS Engine生成等值线的方法。c#写的根据雨量站的降雨量值内插出降雨量等值线的功能。做几点说明:根据离散点生成等值线:(1)判断等值线shapefile图层临时存放路径是否存在,如果不存在则创建,如果存在并不为空则删除重建;(2)加【降雨量】字段并赋值,生成等值线后...
阅读全文
摘要:通过IMap中的get_layers()可以遍历MapControl中当前的图层。此方法可以通过指定UID对图层进行过滤或者分类。1. 遍历矢量图层public IEnumLayer GetFeatureLayers(){UID uid = new UIDClass();uid.Value = "{...
阅读全文
摘要:刚刚说的是获取像素值。如果要进一步改变像素值的话,需要用到IRasterEdit接口的Write方法。Write方法的参数有两个,一个是在栅格图像中的左上角位置(行列值不是坐标值),另一个就是获取像素值时提到的PixelBlock. 执行完Write方法后要对实现IRasterEdit接口的对象进行...
阅读全文
摘要:在编写使用栅格图层的代码时,常常要获取栅格图层的像素值(PixelValue)。如果想获取某一点的像素值,可以使用IRaster2中的getPixelValue方法。但如果想要获得的是图层中的某一块甚至整个图层,那么用getPixelValue方法就太过缓慢了。如果利用IRasterCursor、I...
阅读全文
摘要:1 using System; 2 using System.Collections.Generic; 3 using System.Text; 4 using System.Runtime.InteropServices; 5 using ESRI.ArcGIS.Geodatabase...
阅读全文
摘要:要为SceneControl设置鼠标滚轮缩放必须定义委托,因为SceneControl没有Wheel事件,所以委托From的Wheel事件 1 public Form1() 2 { 3 InitializeComponent(); 4 this.MouseWheel += new MouseEventHandler(this.SceneControl_MouseWheel); //在这个地方输入"this.MouseWheel+=”后连续按两次Tab键 5 } 6 private void SceneControl_MouseWheel(object sender,...
阅读全文
摘要:1 private void HandleIdentify_MouseDown(object sender, ISceneControlEvents_OnMouseDownEvent e) 2 { 3 this.PipeSceneControl.Scene.ClearSelection();//清除之前的选择集,去除高亮显示 4 IHit3DSet pHit3DSet = null; 5 this.PipeSceneControl.SceneGraph.LocateMultiple(this.Pi...
阅读全文
摘要:在ArcGIS体系中,三维开发包括两种:基于Scene的三维开发和基于Globe的三维开发。由上图可以看出,两种开发的接口都很相似,掌握了Scene开发会相对容易的过渡到Globe开发中。正如上图所示,Scene开发常用的接口有IScene、ISceneGraph、ISceneViewer、I3DViewer、ICamera等接口,除此之外IGraphicsLayers3D、I3DProperties也经常使用。为了能弄明白各个接口之间的关系,我来做一个比喻:我们可以把上述接口映射到一场现场直播的球赛之中,Scene就是球赛本身,要进行足球比赛就得需要球场,SceneGraph就承担起了球场的
阅读全文
摘要:ArcGIS Desktop 需要独立的表和属性表都有一个ObjectID字段,这个字段中包含一个唯一的,长整型的数值来指定每一条记录。这个ID是由ESRI的软件来管理的,是不能够手动更改的。在Shapefiles, geodatabase feature classes, 和独立的表格中ObjectID的处理方式不同。---在一个shapefile中, 'FID'字段包含ObjectID,并且值从零开始。 ---在一个geodatabase feature class 或者geodatabase中的独立的表格中, 'OBJECTID' 字段包含ObjectID
阅读全文
摘要:Map 对象是ArcGIS Engine 的主要对象,本章将给大家介绍地图组成结构,如何创建地图,如何对组成地图的对象进行操作,在介绍这些内容时尽量结合ArcMap 学习效果会更好。在Map 对象上能显示的图形有两类一类是地理数据,一类是元素。地理数据包括矢量类型的要素数据,栅格数据,Tin 等表面数据等,这些数据都保存在Geodatabase 或数据文件如shapefile 中,它们是用于GIS 分析制图的源数据;而元素是另一种可以显示在Map 上的对象,它分为两部分一类是图形元素,一类是框架元素,图形元素可以显示出来,而框架元素充当了“容器”的角色。在ArcMap 中可以使用“Draw”工
阅读全文
摘要:在AE中数据的编辑是一个重点,也是一个难点。它包括的东西非常多,如:地物的添加,地物的修 改,地物查询,节点捕捉,地物的符号化等一系列的问题。熟练的使用地物编辑的功能,是开发一个系统必须具备的条件。数据编辑问题解决得好坏直接决定着软件是否操作方 便。在这我只是写一些相应的功能函数,至于软件开发中的架构,我不考虑。1、 添加地物什么是地物,这是 GIS的基本概念,我在这不想多说,我只想说明一点,地物可以表现在地图上,如房子、铁路、水管等等。我们把房子的总称称为一个地物类,在AE中对应一个地物类(IFeatureClass),一个地物类在地图上表示为一个地物层 (IFeatureLayer),单独
阅读全文
摘要:PageLayout管理着布局视图提供给用户者进行输出、打印,当然在这个控件中提供了要素连接(增加、删除等)我们可以来看看有那些可以使用的资源:•打印(Printer):这里是指打印机的连接、打印大小、页面设置及其他设置,主要是打印机方面的设置。•页面(Page):管理着可视或屏幕的打印机页。•要素(Elements):在页面上画地图要素。•图形(Graphics):在页面上画地图要素,地图包括图框(MapFrames),PageLayout对象有MapFrame对象并且一个MapFrame有一个地图,反过来,每一个地图都有相关联的图层和地图范围(MapSurrounds),每一个MapSur
阅读全文
摘要:使用IMap接口显示各种数据源的数据。IMap接口的成员ActiveGraphicsLayer:活动图形图层,如果没有将创建一个基本memory graphics layer。AddLayer:向地图中添加单个图层。AddLayers:向地图中添加多个图层。AddMapSurround:向地图中添加map surround。AnnotationEngine:地图使用的注记(标签)引擎。AreaOfInterest:地图的感兴趣区域。Barriers:barriers列表和标签权重。BasicGraphicsLayer:基本图形层。ClearLayers:从地图中移除所有图层。ClearMapS
阅读全文