ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Desktop.Editing.COGO Namespace / COGOLineBuilder Class / CreateCOGOCircularArc Method / CreateCOGOCircularArc(CircularArcDefinition) Method
The circular arc definition.
Example

In This Topic
    CreateCOGOCircularArc(CircularArcDefinition) Method
    In This Topic
    Creates a circular arc COGOLine for use in a Traverse
    Syntax
    Public Overloads Shared Function CreateCOGOCircularArc( _
       ByVal arcDefinition As CircularArcDefinition _
    ) As COGOLine
    public static COGOLine CreateCOGOCircularArc( 
       CircularArcDefinition arcDefinition
    )

    Parameters

    arcDefinition
    The circular arc definition.

    Return Value

    Exceptions
    ExceptionDescription
    arcDefinition cannot be null.
    The arcDefinition is not valid.
    Example
    Create a COGOLine defined by a circular arc
    // define with a radius, arcLength and chord direction 
    var circularArcDef = new CircularArcDefinition
    {
      Radius = -201.0,
      ArcLength = 45.29,
      ChordDirection = ParcelUtilities.Instance.ConvertQuadrantBearingDMSToNorthAzimuthDecDeg("N21-47-57W")
    };
    var cogoCircArc = COGOLineBuilder.CreateCOGOCircularArc(circularArcDef);
    
    
    // define with a radius, chordLength and tangent direction 
    var circularArcDef2 = new CircularArcDefinition
    {
      Radius = -201.0,
      ChordLength = 44.0,
      TangentDirection = 340.0
    };
    var cogoCircArc2 = COGOLineBuilder.CreateCOGOCircularArc(circularArcDef2);
    
    // define with a radius, central angle and radial direction
    var circularArcDef3 = new CircularArcDefinition
    {
      Radius = -201.0,
      CentralAngle = 44.0,
      RadialDirection = 340.0
    };
    var cogoCircArc3 = COGOLineBuilder.CreateCOGOCircularArc(circularArcDef3);
    Create a Traverse
    List<COGOLine> lstCOGOLines = new();
    var direction = ParcelUtilities.Instance.ConvertQuadrantBearingDMSToNorthAzimuthDecDeg("S7-46-51-E");
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOStraightLine(nAzDirection, 61.45)); //1
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOStraightLine(166.2625, 37.22));//2
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOStraightLine(255.2833333, 71.4));//3
    var circArcDef = new CircularArcDefinition
    {
      Radius = -201.0,
      ArcLength = 45.29,
      ChordDirection = ParcelUtilities.Instance.ConvertQuadrantBearingDMSToNorthAzimuthDecDeg("N21-47-57W")
    };
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOCircularArc(circArcDef));//4
    var tangentCurveDef = new TangentCurveDefinition
    {
      Radius = 169.0,
      ArcLength = 52.40
    };
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOCircularArc(tangentCurveDef));//5
    
    tangentCurveDef = new TangentCurveDefinition
    {
      Radius = 13.0,
      ArcLength = 22.98
    };
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOCircularArc(tangentCurveDef));//6
    
    tangentCurveDef = new TangentCurveDefinition
    {
      Radius = -281.0,
      ArcLength = 73.68
    };
    lstCOGOLines.Add(COGOLineBuilder.CreateCOGOCircularArc(tangentCurveDef));//7
    
    var spatialReference = map?.SpatialReference;
    var travParcel = new Traverse(spatialReference);
    await travParcel.AddCoursesAsync(lstCOGOLines);
    if (travParcel.IsValid())
    {
      ; //insert code to use the traverse
    }
    Requirements

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

    ArcGIS Pro version: 3.7 or higher.
    See Also