zoukankan      html  css  js  c++  java
  • ArcGIS Engine Maplex Label(标注)使用一例(转)

    /// <summary>
            /// MaplexEngine标注
            /// </summary>
            /// <param name="pGeoFeatLyr">标注图层</param>
            /// <param name="pMap">地球人都知</param>
            /// <param name="annoField">标记字段</param>
             public void Annotation(IGeoFeatureLayer pGeoFeatLyr, IMap pMap, string annoField)
            {
                IAnnotateMap pAnnoMap;
                pAnnoMap = new MaplexAnnotateMapClass();
                pMap.AnnotationEngine = pAnnoMap;
                IGeoFeatureLayer pGeoFeatLayer;
                pGeoFeatLayer = pGeoFeatLyr;
                IAnnotateLayerPropertiesCollection pAnnoProps;
                pAnnoProps = pGeoFeatLyr.AnnotationProperties;
                pAnnoProps.Clear();
                ILabelEngineLayerProperties2 pLabelEngine2 = new MaplexLabelEngineLayerPropertiesClass();
                pLabelEngine2.Expression = "[" + annoField + "]";
               
                IMaplexOverposterLayerProperties pMaplexPro = new MaplexOverposterLayerPropertiesClass();
                pMaplexPro.FeatureType = esriBasicOverposterFeatureType.esriOverposterPolygon;
                pMaplexPro.PolygonPlacementMethod = esriMaplexPolygonPlacementMethod.esriMaplexHorizontalInPolygon;
                pMaplexPro.CanPlaceLabelOutsidePolygon = false;
                pMaplexPro.CanRemoveOverlappingLabel = false;
                pMaplexPro.RepeatLabel = false;
                pLabelEngine2.OverposterLayerProperties = pMaplexPro as IOverposterLayerProperties;
                IMapOverposter pMapPos = axMapControl1.Map as IMapOverposter;
                IOverposterProperties pOP = pMapPos.OverposterProperties;
                IMaplexOverposterProperties pMaplexOP = pOP as IMaplexOverposterProperties;
                pMaplexOP.LabelLargestPolygon = false;
                pAnnoProps.Add(pLabelEngine2 as IAnnotateLayerProperties);
                pGeoFeatLyr.DisplayAnnotation = true;
            }

     来自:https://www.cnblogs.com/cannel/archive/2011/03/24/1993383.html


                IAnnotateMap pAnnoMap = new MaplexAnnotateMapClass();
                m_hookHelper.FocusMap.AnnotationEngine = pAnnoMap;

    使用Maplex

  • 相关阅读:
    PL/SQL编程急速上手
    MySQL编程
    T-SQL编程
    SQL入门,就这么简单
    前端工具配置(webpack 4、vue-cli 3)
    Vue-router
    Vue组件应用
    Vue.js应用基础
    Bootstrap应用核心
    一篇文章教会你jQuery应用
  • 原文地址:https://www.cnblogs.com/gisoracle/p/9062758.html
Copyright © 2011-2022 走看看