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

MaplexPolygonPlacementMethod Enumeration
Maplex polygon placement methods.
Syntax
Members
MemberDescription
CurvedAroundPolygon Curved outside the polygon.
CurvedInPolygon Curved in the polygon.
HorizontalAroundPolygon Horizontal around the polygon.
HorizontalInPolygon Horizontal in the polygon.
RepeatAlongBoundary Boundary placement.
StraightInPolygon Straight in the polygon.
Example
Modify the Placement/Position of labels - Polygon 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
  theLabelClass.StandardLabelPlacementProperties.PolygonPlacementMethod = 
           StandardPolygonPlacementMethod.AlwaysHorizontal;
  theLabelClass.StandardLabelPlacementProperties.PlaceOnlyInsidePolygon = true;
}
else
{
  //Current labeling engine is Maplex labeling engine
  theLabelClass.MaplexLabelPlacementProperties.PolygonFeatureType = 
                           MaplexPolygonFeatureType.LandParcel;
  theLabelClass.MaplexLabelPlacementProperties.AvoidPolygonHoles = true;
  theLabelClass.MaplexLabelPlacementProperties.PolygonPlacementMethod = 
                      MaplexPolygonPlacementMethod.HorizontalInPolygon;
  theLabelClass.MaplexLabelPlacementProperties.CanPlaceLabelOutsidePolygon = true;
}

lyrDefn.LabelClasses = listLabelClasses.ToArray(); //Set the labelClasses back
featureLayer.SetDefinition(lyrDefn); //set the layer's definition
                                     //set the label's visiblity
featureLayer.SetLabelVisibility(true);
Inheritance Hierarchy

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

Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also