• 合并一个图层选择对象C# arcengine


    ArcEngine实现Merge功能

        private IGeometry GetGeo(IFeatureLayer pFlyr)
            {
                IEnumGeometry pGeos = new EnumFeatureGeometryClass();
                IEnumGeometryBind pGeosBind = pGeos as IEnumGeometryBind;
                IFeatureSelection pflyrSelection = pFlyr as IFeatureSelection;
                pflyrSelection.SelectFeatures(null, esriSelectionResultEnum.esriSelectionResultNew, false);            pGeosBind.BindGeometrySource(null, pflyrSelection.SelectionSet);
                pGeos.Reset();
                IPolygon sPoly = new PolygonClass();
                ITopologicalOperator pTopo = sPoly as ITopologicalOperator;
                pTopo.ConstructUnion(pGeos);
                pTopo.Simplify();
                sPoly = pTopo as IPolygon;
                pflyrSelection.Clear();
                return sPoly;
            }

         执行上面的代码段可以把图层上的所有实体合并。注意红色部分的那行代码,不写此行代码,pGeos 里的图形个数为0,最后得到的spoly是空。

    来自:http://program.ntwtsp.com/aspnet/18234.htm
  • 相关阅读:
    关于npm无法安装依赖包以及安装包缓慢的解决方法
    centos 上安装nodejs v8.0.0
    nginx 负载均衡
    关于前端
    递归函数
    多重循环
    闭包
    spring boot集成mybatis(2)
    spring boot集成mybatis(3)
    spring boot集成mybatis(1)
  • 原文地址:https://www.cnblogs.com/gisoracle/p/2420845.html
Copyright © 2020-2023  润新知