zoukankan      html  css  js  c++  java
  • 修改图层的symbol(AE+C#)

    取出一个图层的symbol 在其基础上对其进行修改

       private void button1_Click(object sender, EventArgs e)
            {
      mp;nbsp;          //设定要改变symbol的图层
                ILayer pLayer=m_mapControl.get_Layer(0);
                IGeoFeatureLayer pGeoFeatLayer = pLayer as IGeoFeatureLayer;

                //得到此图层的symbol
                ISimpleMarkerSymbol pMarkerSymbol=new SimpleMarkerSymbolClass();
                pMarkerSymbol=GetFeatureLayerSymbol(pLayer) as ISimpleMarkerSymbol;

                //对symbol进行改变操作
                pMarkerSymbol.Size=20;    

                //把改变后的symbol赋给此图层
                ISimpleRenderer pRenderer=new SimpleRendererClass();
                pRenderer.Symbol=pMarkerSymbol as ISymbol;
                pGeoFeatLayer.Renderer = pRenderer as IFeatureRenderer;

              
            }

            /// <summary> 得到指定图层的symbol</summary>
            /// <param name="layer"></param>
            /// <returns></returns>
            public ISymbol GetFeatureLayerSymbol(ILayer layer)
            {
                ISymbol pSymbol = null;

                IGeoFeatureLayer pGeoFeatLayer = (IGeoFeatureLayer)layer;
                IFeatureClass pFeatClass = pGeoFeatLayer.FeatureClass;
                IFeatureCursor pFeatCursor = pFeatClass.Search(null, true);
                IFeature pFeature = pFeatCursor.NextFeature();

                if (pFeature == null)
                {
                    pFeature = pFeatCursor.NextFeature();
                }
                else
                {
                    IFeatureRenderer pFeatRen;
                    pFeatRen = pGeoFeatLayer.Renderer;
                    pSymbol = pFeatRen.get_SymbolByFeature(pFeature);
                }
                return pSymbol;
            }

  • 相关阅读:
    使用runOnUiThread更新UI
    Leetcode Symmetric Tree
    EBS 开发中如何动态启用和禁止请求(Current Request)的参数
    c 陷阱与缺陷(一)
    钟浩荣战胜病魔,不负众望重踏传智播客!
    【原创】分布式之elk日志架构的演进
    【强烈谴责】博客园园友随意抄袭他人文章并作为自己原创的行为
    【原创】研发应该懂的binlog知识(下)
    【原创】研发应该懂的binlog知识(上)
    【原创】一个线程oom,进程里其他线程还能运行吗?
  • 原文地址:https://www.cnblogs.com/CSharpLover/p/5970155.html
Copyright © 2011-2022 走看看