ArcGIS Pro 3.2 API Reference Guide
ArcGIS.Core.CIM Namespace / CIMMarkerStrokePlacement Class / AngleToLine Property
Example

In This Topic
    AngleToLine Property
    In This Topic
    Gets or sets a value indicating whether to angle the marker to the line.
    Syntax
    public bool AngleToLine {get; set;}
    Public Property AngleToLine As Boolean
    Example
    How to construct a multilayer line symbol with circle markers on the line ends
    //These methods must be called within the lambda passed to QueuedTask.Run
    var lineStrokeRed = SymbolFactory.Instance.ConstructStroke(ColorFactory.Instance.RedRGB, 4.0);
    var markerCircle = SymbolFactory.Instance.ConstructMarker(ColorFactory.Instance.RedRGB, 12, SimpleMarkerStyle.Circle);
    markerCircle.MarkerPlacement = new CIMMarkerPlacementOnVertices()
    {
      AngleToLine = true,
      PlaceOnEndPoints = true,
      Offset = 0
    };
    var lineSymbolWithCircles = new CIMLineSymbol()
    {
      SymbolLayers = new CIMSymbolLayer[2] { markerCircle, lineStrokeRed }
    };
    
    How to construct a multilayer line symbol with an arrow head on the end
    //These methods must be called within the lambda passed to QueuedTask.Run
    var markerTriangle = SymbolFactory.Instance.ConstructMarker(ColorFactory.Instance.RedRGB, 12, SimpleMarkerStyle.Triangle);
    markerTriangle.Rotation = -90; // or -90
    markerTriangle.MarkerPlacement = new CIMMarkerPlacementOnLine() { AngleToLine = true, RelativeTo = PlacementOnLineRelativeTo.LineEnd };
    
    var lineSymbolWithArrow = new CIMLineSymbol()
    {
      SymbolLayers = new CIMSymbolLayer[2] { markerTriangle,
                  SymbolFactory.Instance.ConstructStroke(ColorFactory.Instance.RedRGB, 2)
              }
    };
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also