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

  • 相关阅读:
    《人月神话》阅读笔记3
    团队冲刺0110
    团队冲刺0109
    团队冲刺0108
    团队冲刺0107
    团队冲刺0106
    团队冲刺0105
    团队冲刺010304
    团队冲刺0102
    团队冲刺0101
  • 原文地址:https://www.cnblogs.com/gisoracle/p/9062758.html
Copyright © 2011-2022 走看看