当前位置: 首页 > news >正文

这样做自己的网站网站赚钱

这样做自己的网站,网站赚钱,html水平导航栏怎么做,提供企业网站建设价格一、开发环境 开发环境为ArcGIS Engine 10.2与Visual studio2010。在使用ArcEngine查询进行查询的时候主要使用三种查询接口IQueryFilter(属性查询) 、ISpatialFilter(空间查询) 、IQueryDef (多表查询) 那…

一、开发环境

开发环境为ArcGIS Engine 10.2与Visual studio2010。在使用ArcEngine查询进行查询的时候主要使用三种查询接口IQueryFilter(属性查询) 、ISpatialFilter(空间查询) 、IQueryDef (多表查询)
那么这三个接口的区别是什么呢?

要求IQueryFilterISpatialFilterIQueryDef
属性约束TrueTrueTrue
空间约束FalseTrueFalse
查询结果包括多个表的字段FalseFalseTrue
查询结果返回一个游标TrueTrueTrue
RecordSet对象可以从结果中创建TrueTrueTrue
返回的记录可以被编辑TrueTrueFalse
记录集包括在活动编辑会话中进行的编辑TrueTrueFalse

从上面的表格可以看出IQueryFilter、IQueryDef 都可以进行属性查询,ISpatialFilter可以进行空间查询。

  1. IQueryFilter接口

这是最常见的属性查询,输入WhereClause条件用于获取或设置查询过滤条件,然后调用IFeatureClass或者ITable的Search方法就行了。

  • 示例代码
  • private void 属性查询ToolStripMenuItem_Click(object sender, EventArgs e)
    {try{//判断第一个图层是否是矢量图层,如果是则开始属性查询,如果不是程序不再执行if (axMapControl1.get_Layer(0) is IFeatureLayer){//把第一个图层强制转换为要素类图层IFeatureLayer pFeatureLayer = axMapControl1.get_Layer(0) as IFeatureLayer;//创建一个QueryFilter对象IQueryFilter pQueryFilter = new QueryFilter();//输入查询过滤条件【查询当前要素类 FID为1或2的要素】pQueryFilter.WhereClause = "FID = 1 or FID = 2";IFeatureSelection pFeatureSelection = pFeatureLayer as IFeatureSelection;//进行空间查询,并加入选择集pFeatureSelection.SelectFeatures(pQueryFilter, esriSelectionResultEnum.esriSelectionResultNew, false);//刷新主地图进行高亮显示,一般用局部刷新axMapControl1.Refresh();}}catch (Exception ex){MessageBox.Show("请先加载数据后再进行查询!","",MessageBoxButtons.OK,MessageBoxIcon.Warning);}
    }
    

    2.ISpatialFilter接口

  • ISpatialFilter继承了接口IQueryFilter,在属性查询的基础上加了要素与要素的空间关系进行查询。其中Geometry用于设置查询几何;SpatialRel设置查询的空间关系,空间关系esriSpatialRelEnum可参考我另一篇文章的介绍。以及esri官网的介绍。
    SpatialFilterClass还继承了IQueryFilterDefinition2接口。
  • 示例代码
  • #region 通过点击主地图的面状图形,获取其临近要素
    private void axMapControl1_OnMouseDown(object sender, IMapControlEvents2_OnMouseDownEvent e)
    {try{//清空地图选择集axMapControl1.ActiveView.FocusMap.ClearSelection();//实例化一个点,以该点作拓扑算子,将点击的位置坐标赋予pPointIPoint pPoint = new ESRI.ArcGIS.Geometry.Point();ITopologicalOperator pTopologicalOperator = pPoint as ITopologicalOperator;pPoint.PutCoords(e.mapX, e.mapY);//以缓冲半径为0进行缓冲  得到一个点IGeometry pGeometry = pTopologicalOperator.Buffer(0);//以该点进行要素选择(只能选中面状要素,点和线无法选中)axMapControl1.Map.SelectByShape(pGeometry, null, false);//刷新视图axMapControl1.Refresh(esriViewDrawPhase.esriViewGeoSelection, null, null);// 获取选择集ISelection pSelection = axMapControl1.Map.FeatureSelection;// 获取要素IEnumFeature pEnumFeature = pSelection as IEnumFeature;IFeature pFeature = pEnumFeature.Next();while (pFeature != null){//定义一个空间查询对象ISpatialFilter spatialFilter = new SpatialFilter();//空间查询对象为点选的的几何对象spatialFilter.Geometry = pFeature.Shape;//设置空间查询关系为 空间临接查询spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelTouches;//遍历axMapControl1中的所有图层for (int i = 0; i < axMapControl1.LayerCount; i++){//清空地图选择集axMapControl1.ActiveView.FocusMap.ClearSelection();//判断当前图层是否为矢量图层if (axMapControl1.get_Layer(i) is IFeatureLayer){//将图层强制转换为IFeatureLayerIFeatureLayer pFeatureLayer = axMapControl1.get_Layer(i) as IFeatureLayer;//输入目标图层,并转换为IFeatureSelection对象IFeatureSelection featureSelection = pFeatureLayer as IFeatureSelection;//开始空间查询,查询到的结果保存在ISelectionSet中,可以用游标Cursor来遍历要素                          featureSelection.SelectFeatures((IQueryFilter)spatialFilter, esriSelectionResultEnum.esriSelectionResultNew, false);}}break;}}catch (Exception ex){MessageBox.Show("程序执行失败!"+ex);}
    }
    #endregion
    

    3.IQueryDef 接口
    IQueryDef用于属性查询。它支持复杂的SQL查询并且能在同一工作空间内做连表查询。但是查询后的结果不支持编辑。且不能在Shapefile 和Coverage 数据中使用,而仅仅可以使用在GeoDatabase数据库中。

http://www.15wanjia.com/news/4802.html

相关文章:

  • 网站开发需要配置哪些人员网上的推广公司
  • 云主机配置网站推广专员
  • 申请好域名后 怎么做网站百度地图导航
  • 深圳购物网站产品推广渠道有哪些
  • 电商做网站2021年关键词有哪些
  • 怎么用虚拟主机做网站步骤网站下载免费软件
  • 网站开发华企云商淘宝代运营1个月多少钱
  • 西宁网站制作多少钱seo排名点击器
  • 海外推广方式有哪些重庆网站优化排名推广
  • java做网站开发书百度浏览器下载
  • 合肥网站优化 新浪博客常宁seo外包
  • 做pc端网站包括哪些广告联盟平台
  • 百度小程序制作网站如何提高网站在搜索引擎中的排名
  • 全国做网站排行青岛新闻最新今日头条
  • 上海招聘网站排名什么是互联网营销
  • 做网站的群关键词排名零芯互联排名
  • 公司网站 模板seo顾问服务咨询
  • 厦门建行网站首页百度官网认证价格
  • 网站开发 太原产品推广介绍怎么写
  • 搜索引擎营销是目前最主要的网站推广营销google下载安卓版下载
  • ps网站子页怎么做的百度网盘客服电话24小时
  • 网站页面设计技术参数服务推广软文范例
  • 电子书新手学做网站十大引擎网址
  • 文创做的好的网站推荐常州网站推广公司
  • wordpress赞seo日常工作都做什么的
  • wordpress收不到网站seo官网优化详细方法
  • 做网站开票是多少个点的票哪里可以学seo课程
  • 做网站要多少费用专业seo推广
  • 甘肃省住房和城乡建设部网站官网谷歌商店下载官方正版
  • 久其软件公司网站专业推广公司