zoukankan      html  css  js  c++  java
  • 在ArcEngine下实现图层属性过滤的两种方法 转载http://www.gisall.com/html/72/1242722990.html

    有时候,我们要对图层上的地物进行有选择性的显示,以此来满足实际的功能要求。

    按下面介绍的方法可轻松实现图层属性过滤显示:

     

             1、当图层已经加载时

     

            private void ShowByFilter(AxMapControl sMapCtr, IFeatureLayer sFlyr, string sFilter)

            {

                ESRI.ArcGIS.Carto.IFeatureLayerDefinition pDef = (ESRI.ArcGIS.Carto.IFeatureLayerDefinition)sFlyr;

     

                pDef.DefinitionExpression = sFilter;

     

                sMapCtr.ActiveView.Refresh();

            }

     

             2、当图层尚未加载时

            private IFeatureClass GetFeatureClass(IWorkspace pWS, string sTabName, string sAttrFilter)

            {

                try

                {

                    if (pWS == null || sTabName == null) return null;

     

                    IFeatureWorkspace pFWS = pWS as IFeatureWorkspace;

                    IFeatureClass pFC = null;

     

                    pFC = pFWS.OpenFeatureClass(sTabName);

     

                    IQueryDef pQueryDef = pFWS.CreateQueryDef();

                    pQueryDef.Tables = sTabName;

                    pQueryDef.WhereClause = sAttrFilter;

     

                    IQueryName2 pQueryName = new FeatureQueryNameClass();

                    pQueryName.PrimaryKey = pFC.OIDFieldName;

                    pQueryName.QueryDef = pQueryDef;

     

                    IDataset pDS = (IDataset)pFWS;

     

                    IWorkspaceName pWSName = (IWorkspaceName)pDS.FullName;

                    IDatasetName pDSName = (IDatasetName)pQueryName;

     

                    pDSName.WorkspaceName = pWSName;

                    IName pName = (IName)pQueryName;

                    pFC = pName.Open() as IFeatureClass;

     

                    return pFC;

                }

                catch

                {

                    return null;

                }

            }

                       由属性过滤后的FeatureClass创建图层、加载到地图的过程就比较简单了

    来自http://www.gisall.com/html/72/124272-2990.html

  • 相关阅读:
    网站加载速度优化的14个技巧
    op+3g
    Xmind 快捷键
    Resty 一款极简的restful轻量级的web框架
    linux磁盘限额配置:quota命令
    常用报表工具
    http://mirror2.openwrt.org/sources/
    op挂载摄像头
    supported platform
    OpenWrt Kernel Module Creation Howto
  • 原文地址:https://www.cnblogs.com/gisoracle/p/2855437.html
Copyright © 2011-2022 走看看