C#合并GeoJSON多边形集合为ArcGIS的Geometry对象

本文介绍了一种使用C#实现将多个GeoJSON.Net.Geometry.IGeometryObject类型的几何对象合并为单一ESRI.ArcGIS.Geometry.IGeometry对象的方法。通过创建GeometryBag实例收集所有几何对象,并利用ITopologicalOperator接口的ConstructUnion方法进行合并,最后简化合并后的几何对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

合并部分的代码:

                        Func<List<GeoJSON.Net.Geometry.IGeometryObject>, ESRI.ArcGIS.Geometry.IGeometry> MergePolygon = (lsGeometry) =>
                            {
                                ESRI.ArcGIS.Geometry.IGeometryCollection pGeoCol = new ESRI.ArcGIS.Geometry.GeometryBagClass();
                                foreach (var aGeo in lsGeometry)
                                {
                                    pGeoCol.AddGeometry(GeometryFactory.CreateEsriGeometryFromGeoJson(aGeo) as ESRI.ArcGIS.Geometry.IGeometry);
                                }
                                if (pGeoCol.GeometryCount == 0)
                                {
                                    return null;
                                }
                                ESRI.ArcGIS.Geometry.ITopologicalOperator pTopo = new ESRI.ArcGIS.Geometry.PolygonClass() as ESRI.ArcGIS.Geometry.ITopologicalOperator;
                                pTopo.ConstructUnion(pGeoCol as ESRI.ArcGIS.Geometry.IEnumGeometry);
                                pTopo.Simplify();
                                return pTopo as ESRI.ArcGIS.Geometry.IGeometry;
                            };

调用示例:

ESRI.ArcGIS.Geometry.IGeometry pShape = MergePolygon(lsGeometry);


使用AE+C#(C#4版本以下)设计一个SHP转TXT程序,SHP数据是面要素数据,生成的TXT文件包括项目信息、属性描述、地块坐标部分,其中项目信息部分由用户通过文本框输入,属性描述部分由设定好的参数通过用户选择,各参数如下: 坐标系:2000国家大地坐标系 几度分带:3、6 投影类型:高斯克吕格 计量单位:米 带号:当“几度分带”选择的是“6”,带号可选择范围是13-23。当“几度分带”选择的是“3”,带号可选择范围是24-45。 精度:0.01、0.001、0.0001 转换参数:,,,, 地块坐标部分,5,0.0110,8,吴剑,面,F49 G 049047,居住用途,@,分别是:面要素顶点数,地块面积,地块编号,地块名称,图幅号,土地用途,@。其中地块面积,地块编号,地块名称,图幅号,土地用途可以通过选择面要素里的字段获得。 要说明程序界面如何设计 TXT生成坐标实例如下: [项目信息] 项目名称=高州市曹江镇2025年度第四批次城镇建设用地 勘测定界名称=高州市曹江镇2025年度第四批次城镇建设用地 项目所在县区代码=440981 项目所在市县名称=茂名市高州市 项目类别= 项目投资额=0 开发用途=居住用地 总用地面积=0.1641 占用基本农田面积=0 农用地面积=0.1597 耕地面积=0 园地面积=0.1145 林地面积=0.443 养殖水面面积=0 其他农用地面积=0.0009 带K地类面积=0 建设用地面积=0.0044 未利用地面积=0 围填海面积=0 是否增减挂钩项目=否 是否属于增减挂钩中发展改革小城镇试点项目=否 是否属于建设用地指标调整项目=否 备注= [属性描述] 坐标系=2000国家大地坐标系 几度分带=3 投影类型=高斯克吕格 计量单位=米 带号=37 精度=0.001 转换参数=, [地块坐标] 5,0.0110,8,吴剑,面,F49 G 049047,居住用途,@ J1,1,2430314.912,37490420.941 J2,1,2430323.831,37490432.475 J3,1,2430317.869,37490437.089 J4,1,2430308.962,37490425.544 J1,1,2430314.912,37490420.941
最新发布
08-05
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值