获取所有的点图层

        /// <summary>
        /// 获取地图中所有的矢量图层
        /// </summary>
        /// <param name="pMap"></param>
        /// <param name="puid"></param>
        /// <returns></returns>
        static public List<IFeatureLayer> GetFeatureLayers(IMap pMap)
        {
            //只读取IFeaturelayer
            UID puid = new UIDClass();
            puid.Value = "{40A9E885-5533-11d0-98BE-00805F7CED21}";

            IFeatureLayer pFeatureLayer = null;
            List<IFeatureLayer> featureLayers = new List<IFeatureLayer>();

            IEnumLayer pEnumLayer = pMap.get_Layers(puid, true);
            pEnumLayer.Reset();



            pFeatureLayer = (IFeatureLayer)pEnumLayer.Next();
            while (pFeatureLayer != null)
            {
 
                featureLayers.Add(pFeatureLayer);
                pFeatureLayer = (IFeatureLayer)pEnumLayer.Next();
            }


            return featureLayers;

        }

        /// <summary>
        /// 获取地图中的所有点图层
        /// </summary>
        /// <param name="pMap"></param>
        /// <returns></returns>
        static public List<IFeatureLayer> GetPointFeatureLayers(IMap pMap)
        {

            //获取所有的矢量图层
            List<IFeatureLayer> featureLayers = GetFeatureLayers(pMap);

            //获取所有的点图层
            List<IFeatureLayer> pointFeatureLayers = new List<IFeatureLayer>();
            //IFeatureLayer pLayer = pointFeatureLayers.First<IFeatureLayer>();
            IFeatureLayer2 pLayer2 = null;

            foreach (var pLayer in featureLayers)
            {
                pLayer2 = pLayer as IFeatureLayer2;
                //判断是否为点图层
                if (pLayer2.ShapeType == esriGeometryType.esriGeometryPoint)
                {
                    pointFeatureLayers.Add(pLayer2 as IFeatureLayer);
                }


            }

            return pointFeatureLayers;
            

        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值