ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.CIM Namespace / MaplexLineFeatureType Enumeration
Example Example

In This Topic
    MaplexLineFeatureType Enumeration
    In This Topic
    Maplex line feature types.
    Syntax
    Members
    MemberDescription
    Contour Contour labeling.
    General General line labeling.
    River River labeling.
    Street Street labeling.
    StreetAddressRange Street address labeling.
    Example
    Modify the Placement/Position of labels - Line geometry
    //Note: call within QueuedTask.Run()
    
    //Get the layer's definition
    var lyrDefn = featureLayer.GetDefinition() as CIMFeatureLayer;
    //Get the label classes - we need the first one
    var listLabelClasses = lyrDefn.LabelClasses.ToList();
    var theLabelClass = listLabelClasses.FirstOrDefault();
    //Modify label Placement 
    //Check if the label engine is Maplex or standard.
    CIMGeneralPlacementProperties labelEngine = 
        MapView.Active.Map.GetDefinition().GeneralPlacementProperties;
    if (labelEngine is CIMStandardGeneralPlacementProperties)
    {
      //Current labeling engine is Standard labeling engine
      var lineLablePosition = new CIMStandardLineLabelPosition
      {
        Perpendicular = true,
        Parallel = false,
        ProduceCurvedLabels = false,
        Horizontal = false,
        OnTop = true
      };
      theLabelClass.StandardLabelPlacementProperties.LineLabelPosition = 
          lineLablePosition;
    }
    else //Current labeling engine is Maplex labeling engine
    {
      theLabelClass.MaplexLabelPlacementProperties.LinePlacementMethod = 
                    MaplexLinePlacementMethod.CenteredPerpendicularOnLine;
      theLabelClass.MaplexLabelPlacementProperties.LineFeatureType = 
                    MaplexLineFeatureType.General;
    }
    //theLabelClass.MaplexLabelPlacementProperties.LinePlacementMethod = MaplexLinePlacementMethod.CenteredPerpendicularOnLine;
    lyrDefn.LabelClasses = listLabelClasses.ToArray(); //Set the labelClasses back
    featureLayer.SetDefinition(lyrDefn); //set the layer's definition
    Inheritance Hierarchy

    System.Object
       System.ValueType
          System.Enum
             ArcGIS.Core.CIM.MaplexLineFeatureType

    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also