地图中包含大量的信息,为了快速地了解所需信息,必须借助为空间数据专门编写的空间查询功能. 空间查询主要有两种类型: 基于属性的查询,也称为属性查询. 基于空间位置的查询,也称为空间查询. 查询类的基本思路(适用于属性查询以及空间查询) 1.属性查询 基于属性的查询,即属性查询,是通过对要素的属性信息设定查询条件来查询.定位空间位置. QueryFilterClass是专门用于属性查询的属性查询过滤器. 被称为过滤器是因为拥有WhereClause属性——能够设置查询条件的Sql语句. 注意: 使…
简单介绍: 拓扑学是一门研究几何图形位置关系的科学. GIS所关注的拓扑主要集中在拓扑关系——存在于地理实体间的拓扑关系. 拓扑关系在GIS中起着描述两个地理实体的相对空间位置的重要作用.它是GIS空间实体之间最重要的关系之一,在GIS空间数据建模.空间查询.空间分析.空间推理.制图综合等过程中起着重要的作用.拓扑关系对GIS具有以下重要意义:(1)不需要利用坐标或者计算距离,能够清楚地反映某一要素与另一要素的空间位置关系.(2)某些空间分析功能是基于拓扑关系而实现的.例如,要求某条河流的流域面…
缓冲分析(BufferAnalysis)的结果是一个面状要素——即缓冲要素,点状要素.线状要素和面状要素,被缓冲分析功能处理过之后,它们的周围产生一个缓冲区域,该区域即新产生的面状要素. 在缓冲方向上,点状要素和线状要素只能进行向外缓冲,面状要素可以双向缓冲——向外缓冲和向内缓冲. 在ArcGIS Engine中,缓冲分析由ITopologicalOperator.Buffer(double Distance)来实现,函数的返回值为IGeometry(表5-12).其中,输入的参数为正时向外缓冲…
空间查询功能是通过用户选择的空间几何体以及该几何体与当前地图中要素之间的几何关系进行空间查找,从而得到查询结果的操作. 相关类与接口 空间查询相关的类主要是SpatialFilter类,其实现的接口主要为ISpatialFilter接口.SpatialFilter类是空间关系过滤类,ISpatialFilter接口的成员主要用于返回和修改数据过滤器所使用的空间关系.ISpatialFilter接口同时包含了空间和属性两种查询约束,它继承了IQueryFilter接口. 1.Geometry属性:…
在ArcGIS API中查询功能是经常使用的,常用的三个查询分别是FindTask,QueryTask,IdentifyTask.它们各自都有自己的特点. 查询功能分为属性查询和空间查询 FindTask的官方API链接: https://developers.arcgis.com/javascript/3/jsapi/findtask-amd.html 这个demo是查询某一个图层的一个属性,然后把结果撒点在地图上,鼠标移上去可以看到自定的infowindow function doFind(…
来自:http://blog.csdn.net/linghe301/article/details/38925481 最近有很多用户咨询在ArcGIS Engine中希望能够实现断开其他客户端连接ArcSDE的用户,其实个人认为ArcGIS Engine实现的是业务功能,断开其他客户端用户连接是一个管理型功能,这些操作不应该在一块,但是用户的需求可能就是有一定的合理性.特别是ArcGIS10.1也的确将ArcSDE管理的功能集成到ArcGIS for Desktop,说明这种功能实现可能是可行的…
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子,这个也是学习 openlayers4 的好素材. openlayers4 入门开发系列的地图服务基于 Geoserver 发布的,关于 Geoserver 方面操作的博客,可以参考以下几篇文章: geoserver 安装部署步骤 geoserver 发布地图服务 WMS geoserver 发布地…
属性查询即基于空间数据的属性数据的查询,通过用户提交SQL语言中的where语句定义的查询条件,对属性数据进行搜索,从而得到查询结果的操作. 相关的类与接口 与属性查询功能相关的类主要有QureyFilter.QueryDef.Cursor.FeatureCursor等.涉及的接口有IQueryFilter.IQueryDef.ICursor.IFeatureCursor以及IFeatureSelection等.以上的类和接口都位于ArcGIS.Geodatabase命名空间中. 1.Query…
原文:ArcGIS Engine开发之旅08--和查询相关的对象和接口 查询在GIS领域应该是一个很频繁的操作,在GIS中除了具有属性查询(和其他关系型数据库的查询类似),还提供了空间查询.在介绍查询的时候,让我们先了解下面的对象. 1.Table 对象 Table 是不含有空间信息的一张二维表,它主要实现了 ITable 接口.在这张二维表中,每一行称之为 Row(IRow),ITable 接口 定义了对这张二维表行的插入,更新,查询,以及删除等操作. 独立表(standalone table…
原文:ArcGIS Engine开发之旅09--几何对象和空间参考 1.Geometry  Geometry 是 GIS 中使用最为广泛的对象集之一,用户在创建.删除.编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象:除了显示要素意外,控件对象选择,要素符号化,标注要素,编辑要素都需要 Geometry 参与.在 ArcGIS Engine 中,几个对象都有严格的定义,比如我们所说的直线,多断线等,于此同时 ArcGIS Engine 提供了而一个几何对象的模型图,如下: 2.Geo…
原文:<ArcGIS Engine+C#实例开发教程>第八讲 属性数据表的查询显示 第一讲 桌面GIS应用程序框架的建立 第二讲 菜单的添加及其实现 第三讲 MapControl与PageLayoutControl同步 第四讲 状态栏信息的添加与实现 第五讲 鹰眼的实现 第六讲 右键菜单添加与实现 教程Bug及优化方案1 第七讲 图层符号选择器的实现1 第七讲 图层符号选择器的实现2 第八讲 属性数据表的查询显示 摘要:这一讲中,我们将实现图层属性数据表的查询显示.在ArcMap中,单击图层右…
原文:使用ArcGIS API for Silverlight 进行复合多条件空间查询 这两天帮网上认识的一个兄弟做了一个查询的示例,多多少少总结一下,在此和大家分享. 为什么说是复合多条件呢?因为进行空间查询有时候我们查询的条件会很复杂,比如要求某一要素的某一属性大于多少,且小于多少,且又不等于多少等等.而在官网给出的例子中并没有关于复合查询的说明.不过查看API后,你会发现一句很重要的话: A where clause for the query. Any legal SQL where c…
//属性查询~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //IQueryFilter代表查询条件,QueryFilterClass代表只限于属性查询(就是没有空间查询) IQueryFilter queryFilter = new QueryFilterClass(); //属性查询的条件,跟sql语句where部分格式类似,但不完成相同,格式在开发手册有额外的补充 queryFilter.WhereClause = "name='张三'"; //获取某…
鹰眼是用于调节全视域范围内主地图显示范围情况的副地图.它体现了地图整体与详细局部的关系. 用户可以通过鼠标单击或者画框等动作实现鹰眼与主地图的交互情况. 鹰眼功能的原理是通过主地图窗口的地图控件和鹰眼地图窗口的地图控件的4个事件即可完成整个实现流程,但这4个事件之间存在一定的逻辑关系.首先我们了解一下这4个事件的触发条件以及实现的功能. (1)主地图窗口地图控件OnMapReplace_Event事件是在主地图控件加载地图文档或者图层时触发,它主要用来完成主地图与鹰眼地图的地图同步工作.OnEx…
图形查询是以用户通过鼠标操作生成的图形几何体为输入条件进行查询的查询,其查询结果为该几何体空间范围内的所有要素.常用的查询方式包括点选.线选.多边形选择.圆形选择和矩形选择等. 相关类与接口 图像查询主要使用Map类IMap接口中的方法,此外,还需要到Map类的IGraphicsContainer接口和操控图形元素中的IElement接口.使用IMap接口的SelectByShape方法. Map类是显示和操作地图数据的容器,它实现了IMap接口,该接口的成员用来控制当前的地图. 三种图形查询方…
原文:ArcGIS Engine开发的ArcGIS 版本管理的功能 转自:http://blog.csdn.net/linghe301/article/details/7965901 这是以前的ArcGIS Engine开发成果,主要是Geodatabase方面的,模仿ArcGIS版本的流程系统环境: VS2010.ArcGIS Engine10.DevExpress721(第三方控件,比较常用易于下载) ---------------------------------------------…
开森,最关注的空间分析章节终于到了,在空间查询那节逻辑性的代码简直要命(呵呵,空间分析的代码也要命...). 上目录截图: [Geodesic buffers(GeometryEngine)] 使用GeometryEngine这个类计算缓冲区,用是Graphics绘图技术. [Calculate Viewshed(Geoprocessing)] 使用Geoprocessing进行可视域分析,结果呈现在SceneView上,用色斑显示. [Calculate Hotspot(Geoprocessi…
ArcGIS Engine中空间参照(地理坐标)相关方法总结 来自:http://blog.csdn.net/u011170962/article/details/38776101 1.创建空间参考 /// <summary> /// 根据prj文件创建空间参考 /// </summary> /// <param name="strProFile">空间参照文件</param> /// <returns></return…
空间查询和属性查询是常用的两种对数据的检索与查询方式,在本节,将讲述Arcgis for Js下如何实现featurelayer的这两种查询方式,先贴图给大家看看: 实现界面 属性查询 空间查询 看完了效果,下面说说我的实现思路. 首先,实现查询的关键是Query,属性查询时query.where来实现,空间查询时query.geometry来实现,具体代码如下: 1.属性查询 on(dom.byId("query"), "click", function(even…
上文中,实现了简单的针对graphiclayer的空间查询工作,在本节,将更加详细的介绍针对graphiclayer的空间查询.首先,空间查询的方式:提供多种类型的空间查询,包括点周边.线周边.面内等多种方式:其次,图形绘制完成后状态的展示:再次,结果的显示.实现后的结果如下: 点周边--输入缓冲区距离 点周边--查询结果 线周边--输入缓冲区距离 线周边--查询结果 面内--矩形 面内--圆形 面内--多边形 首先,绘制图形. var drawToolbar = new esri.toolba…
本节讲的是Arcgis for Js的针对graphiclayer的空间查询,内容很简单,代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="initial-scale…
Arcgis engine编程报错查询 标签: arcgis arcengine arcgisengine 2016年04月10日 17:29:35429人阅读 评论(0) 收藏 举报  分类: ArcEngine(27)  版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011609113/article/details/51113898 今天编程拓扑检测遇到错误 提示{"异常来自 HRESULT:0x8004195F"} 百度一番…
转自原文 ArcGIS Engine 创建索引(属性索引)——提高查询效率 众所周知,建立索引可以提高查询的效率,当对FeatureClass中的某一列频繁的查找,且数据量比较大时,建立索引是非常有必要的. 这里介绍一下,用 ArcGIS Engine 来建立一个属性索引. IIndex pIndex = new IndexClass(); IIndexEdit pIndexEdit = pIndex as IIndexEdit; IFields pFields = new FieldsClas…
转自原文 ArcGIS Engine中空间参照(地理坐标)相关方法总结 1.创建空间参考 /// <summary> /// 根据prj文件创建空间参考 /// </summary> /// <param name="strProFile">空间参照文件</param> /// <returns></returns> public static ISpatialReference CreateSpatialRefe…
在上一篇,ArcGIS Engine开发鹰眼图的功能(基础篇) 上一篇的实现效果图如下, 如果仔细观察,会发现一个问题,即在“鹰眼”的区域,只要在红色线框内的注记会被覆盖. 如果红色框包括整张图的话,图上的注记都将不会显示. 是什么原因造成的呢? 原因是使用IFillShapeElement向鹰眼视图添加绘图框后,标注与绘图框冲突造成互相压盖. 我们来看一张表, 在基础篇中,我们使用的是IFillShapeElement面要素进行刷新的,现在我们改换为线要素的IScreenDisplay Dra…
转自:http://blog.csdn.net/wozaifeiyang0/article/details/7331450 QueryTask 查询功能在GIS中是一个不可或缺的重要功能,示例中提供了一个属性查询的Demo,下面来看一下在Android中我们怎样实现一个查询功能, 1.              我们在布局文件中添加了一个按钮,并且在代码中添加了这个按钮的点击事件监听: 2.              自定义一个 AsyncTask的扩展类,在此类中我们实现了查询功能. 3.  …
空间分析和空间查询是WebGIS有别于其他Web平台的特点.到这一章,就开始步入空间分析的内容了. [Search widget] 介绍空间查询的核心小部件"Search". [Search widget with multiple sources] 在多种信息源中进行空间搜索. [Query features from a FeatureLayer] 这个是在要素图层中进行查询.注意,查询(Query)和搜索(Search)的区别. (其实我也不是很清楚这个的界限) 感觉查询就是在地…
上一篇写道,使用Query类进行查询featureLayer图层的要素,也简单介绍了QueryTask类的使用. 这一篇博文继续推进,使用Query类和QueryTask类进行空间查询,查询USA的著名山体点要素. 同样的,只介绍重点.本章官方名字是:Query using QueryTask 照常,先看看结果:(默认三个参数都不动,直接点击按钮) 出现了绿色的圆锥体,点击圆锥体可以出现定制好的弹窗(PopupTemplate): 好,开始上课. 给出引用 require([ "esri/Map…
原文:ArcGIS Engine开发之旅04---ARCGIS接口详细说明 ArcGIS接口详细说明... 1 1.      IField接口(esriGeoDatabase)... 2 2.      IFieldEdit接口(esriGeoDatabase)... 2 3.      IFields接口(esriGeoDatabase)... 2 4. IRow接口(esriGeoDatabase)... 3 5. ITable接口(esriGeoDatabase)... 3 6. IAr…
ArcGIS Engine开发中数据库的加载 1.加载个人地理数据库数据 个人地理数据库(Personal Geodatabase)使用Miscrosoft Access文件(*.mdb)进行空间数据的存储和管理,它将不同的数据统一纳入Access文件中,便于数据的管理与迁移,容量限制为2GB.个人地理数据库支持单用户编辑,不支持版本管理.在进行ArcGIS软件操作和开发的学习过程中,一般建议采用个人地理数据库进行数据的 组织和存储,同时也便于直接导到ArcSDE空间数据库中.加载个人地理数据库…