ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.CIM Namespace / CIMPointSymbolCallout Class
Members Example

In This Topic
    CIMPointSymbolCallout Class
    In This Topic
    Represents a point symbol callout which draws a point symbol as the background and a line symbol for leaders. Often used for highway shields.
    Object Model
    CIMPointSymbolCallout ClassCIMPointSymbolCallout ClassCIMPointSymbolCallout ClassCIMLineSymbol ClassCIMPointSymbol Class
    Syntax
    Example
    Snippet Creates a point callout text symbol
    /// <summary>
    /// Creates a highway shield callout text symbol. The [CIMPointSymbolCallout](https://pro.arcgis.com/en/pro-app/sdk/api-reference/#topic4116.html) created is a highway shield point symbol from the ArcGIS 2D style.
    /// ![lineCallOut](https://ArcGIS.github.io/arcgis-pro-sdk/images/Labeling/highway-callout.png)
    /// </summary>
    {
      //create a text symbol
      //Note: Run this code inside a QueuedTask
      var textSymbolPointCallout = SymbolFactory.Instance.ConstructTextSymbol(ColorFactory.Instance.WhiteRGB, 6, "Tahoma", "Bold");
      //Create a call out
      var shieldCalloutSymbol = new CIMPointSymbolCallout();
      //Get a Shield symbolStyleItem from ArcGIS 2D StyleProjectitem
      var symbolStyleItem = GetPointSymbol("ArcGIS 2D", "Shield 1");
      //assign the point symbol (Highway shield) to the callout
      shieldCalloutSymbol.PointSymbol = symbolStyleItem.Symbol as CIMPointSymbol;
      shieldCalloutSymbol.PointSymbol.SetSize(18.0); //set symbol size
                                                     //Assign the callout to the text symbol
      textSymbolPointCallout.Callout = shieldCalloutSymbol;
      //Refer to the snippet "How to apply a Text Symbol to labels of a layer" below to see how to apply this text symbol to a label class
    
      //Gets a Highway point symbol from a style
      static SymbolStyleItem GetPointSymbol(string styleProjectItemName, string symbolStyleName)
      {
        var style2DProjectItem = Project.Current.GetItems<StyleProjectItem>().Where(p => p.Name == styleProjectItemName).FirstOrDefault();
        var symbolStyle = style2DProjectItem.SearchSymbols(StyleItemType.PointSymbol, symbolStyleName).FirstOrDefault();
        return symbolStyle;
      }
    }
    Inheritance Hierarchy

    System.Object
       ArcGIS.Core.CIM.CIMObject
          ArcGIS.Core.CIM.CIMCallout
             ArcGIS.Core.CIM.CIMLineCallout
                ArcGIS.Core.CIM.CIMPointSymbolCallout

    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.0 or higher.
    See Also