/// <summary>/// 删除fieldName属性值为1的弧段/// </summary>/// <param name="fieldName"></param>/// <param name="t"></param>public void DelectPolyline(string fieldName, int t){ILayer pLayer = axMapControl1.get_Layer(0);IFeatureLayer pFeatureLayer = pLayer as IFeatureLayer;IFeatureClass pFeatureClass = pFeatureLayer.FeatureClass;IFields pIFields = pFeatureLayer.FeatureClass.Fields;int fieldIndex = pIFields.FindField(fieldName);var pDataset = pFeatureClass as IDataset;IWorkspace pWorkspace = pDataset.Workspace;IFeatureWorkspace pFWs = pWorkspace as IFeatureWorkspace;IWorkspaceEdit pWorkspaceEdit = (IWorkspaceEdit)pFWs;pWorkspaceEdit.StartEditing(true);pWorkspaceEdit.StartEditOperation();IFeatureCursor pEF = pFeatureLayer.Search(null, false);IFeature pFeatureDe = pEF.NextFeature();while (pFeatureDe != null){if (Convert.ToInt32(pFeatureDe.get_Value(fieldIndex)) != t){pFeatureDe.Delete();}pFeatureDe = pEF.NextFeature();}pWorkspaceEdit.StopEditOperation();pWorkspaceEdit.StopEditing(true);MessageBox.Show("删除成功");}

///若干个线要素合并成一个private void MergeFeatures(List<int> OneFeatureArr,ILayer tSelectLayer){IFeatureLayer tFeatureLayer = tSelectLayer as IFeatureLayer;IFeatureClass pFeatureClass = tFeatureLayer.FeatureClass;var pDataset = pFeatureClass as IDataset;IWorkspace pWorkspace = pDataset.Workspace;IFeatureWorkspace pFWs = pWorkspace as IFeatureWorkspace;IWorkspaceEdit pWorkspaceEdit = (IWorkspaceEdit)pFWs;pWorkspaceEdit.StartEditing(true);pWorkspaceEdit.StartEditOperation();IFeatureLayer pFeatureLayer = tSelectLayer as IFeatureLayer;IFeatureCursor pEF = pFeatureLayer.Search(null, false);IFeature pFeatureFirst = pEF.NextFeature();while (pFeatureFirst != null){//找到在数组里的第一个要素if (pFeatureFirst.OID == OneFeatureArr[0]){//OneFeatureArr.RemoveAt(0);//除掉第一个要素break;}elsepFeatureFirst = pEF.NextFeature();}pEF = pFeatureLayer.Search(null, false);IGeometry pGeometryFirst = pFeatureFirst.Shape;ITopologicalOperator2 pTopOperatorFirst = (ITopologicalOperator2)pGeometryFirst;IRelationalOperator pRelOperatorFirst = (IRelationalOperator)pGeometryFirst;pTopOperatorFirst.IsKnownSimple_2 = false;pTopOperatorFirst.Simplify();pGeometryFirst.SnapToSpatialReference();IGeometry pGeometrySecond = null;IFeature pFeatureSecond = pEF.NextFeature();IGeometryCollection Geometrybag = new GeometryBagClass();//装geometry的袋子object oMissing = Type.Missing;while (pFeatureSecond != null){if (OneFeatureArr.IndexOf(pFeatureSecond.OID) == -1){pFeatureSecond = pEF.NextFeature();continue;}pGeometrySecond = pFeatureSecond.ShapeCopy;Geometrybag.AddGeometry(pGeometrySecond, ref oMissing, ref oMissing);//将geometry装进袋子//pFeatureSecond.Delete();pFeatureSecond = pEF.NextFeature();}IEnumGeometry tEnumGeometry = (IEnumGeometry)Geometrybag;pTopOperatorFirst.ConstructUnion(tEnumGeometry);pTopOperatorFirst.IsKnownSimple_2 = false;pTopOperatorFirst.Simplify();pFeatureFirst.Shape = pGeometryFirst;           pFeatureFirst.Store();            pWorkspaceEdit.StopEditOperation();pWorkspaceEdit.StopEditing(true);}

转载于:https://www.cnblogs.com/jinqier/p/4153525.html

Arcengine 基本操作(待更新)相关推荐

  1. ADS-B显示终端6.8 基本操作视频 更新

    ADS-B显示终端基本操作视频,视频中演示了ADS-B显示终端的基本功能操作方法,包括 地图放大与缩小.地图拖动.数据库浏览.目标飞行轨迹浏览.目标列表.数据解析.目 标批注.软件设置等功能. 亲们, ...

  2. 总结一下矩阵的基本操作

    总结一下矩阵的基本操作 同步更新于这里 加减法 非常简单,只要对应位置相加就行了(余老师:这不是今天的重点!!! 数乘 嗯,把所有元素同时乘以那个数就行了 矩阵乘矩阵 比较复杂, A*B首先要A的列数 ...

  3. 前端人应该知道的 Centos/Docker/Nginx/Node/Jenkins 的基本操作

    点击上方关注 前端技术江湖,一起学习,天天进步 来源:ask_the_sky https://juejin.cn/post/6951684431597797389 服务器作为开发的一环,并且现在非常多 ...

  4. 【MySQL】数据库的高级查询

    前言 上次我们讲了数据库的基本查询,这次继续接上来数据库的高级查询.高级查询是建立在基础查询的基础上面的,如果你还没有看过建议你先去学习数据库的基础查询. 传送门:MySQL数据库的基本查询 数据库的 ...

  5. 视频教程-Kali Linux渗透测试全程课与脚本语言编程系列课程-渗透测试

    Kali Linux渗透测试全程课与脚本语言编程系列课程 本人有多年的服务器高级运维与开发经验,擅长计算机与服务器攻防及网络攻防技术!对网络安全领域有持续的关注和研究! 林晓炜 ¥899.00 立即订 ...

  6. 前端开发者应该知道的 Centos/Docker/Nginx/Node/Jenkins 操作

    点击上方 程序员成长指北,关注公众号 回复1,加入高级 Node 进阶交流群 来源:ask_the_sky https://juejin.cn/post/6951684431597797389 服务器 ...

  7. 超实用,一口气学会 Centos/Docker/Nginx/Node/Jenkins 等基础操作

    作者:ask_the_sky https://juejin.cn/post/6951684431597797389 服务器作为开发的一环,并且现在非常多的商业公司部署在生产环境上的服务器都是CentO ...

  8. Redis常用的五种数据类型

    转载 [Redis]五种数据类型及其使用场景 https://blog.csdn.net/zzu_seu/article/details/106323114?spm=1001.2101.3001.66 ...

  9. USRP N321上手

    第一次使用USRP N321 要做什么 连接设备前工作 更新SD卡 1)下载更新文件 2)将文件镜像载入SD卡 写入镜像文件的两种方法: 安装screen(用于串口连接的指令) 下载FPGA镜像(UH ...

最新文章

  1. 脚本中的关于‘/xff‘字符记录
  2. 【Qt】2D绘图之绘制路径
  3. 我的新宠Vue a系列 项目初构
  4. 209. 单点登录(SSO)
  5. Tree Context Menu
  6. life of a NPTL pthread
  7. 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_05-CMS需求分析-什么是CMS...
  8. Windows server 2012 R2网卡驱动安装经历
  9. 三维空间中直线间距离的计算
  10. 英语的计算机软件如何拼写,怎样记英语单词拼写最快零基础背单词软件
  11. android popupwindow 消失动画,PopupWindow动画结束后dismiss崩溃解决
  12. Unity游戏内版本更新
  13. 如何在Ubuntu中安装搜狗输入法
  14. 一次服务器硬盘损坏修复记录贴(顺便把服务器硬件信息都搞清楚了)
  15. Symantec Backup Exec Remote Agent for Linux/Unix Servers Installation Guide
  16. 我的生命该如何度过?
  17. 优秀自我简介200字_自我介绍优秀作文200字
  18. 2.linux_进程编程
  19. java 计算日出日落时间
  20. Ubuntu QQ2009

热门文章

  1. [Linux C]递归遍历指定目录下的子目录和文件
  2. [react] 使用webpack打包React项目,怎么减小生成的js大小?
  3. javascript学习系列(22):数组中的reduceRight法
  4. 前端学习(2928):昨日回顾
  5. [css] 使用css实现气泡框的效果
  6. [js] 写一个方法遍历指定对象的所有属性
  7. 前端学习(2841):UI开发思路--搭建架子
  8. 前端学习(2740):重读vue电商网站50之Element-UI 组件按需加载
  9. 前端学习(2613):action的方法
  10. 前端学习(2387):组件库使用说明