ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Desktop.Editing.COGO Namespace / Traverse Class
Members Example

In This Topic
    Traverse Class
    In This Topic
    Represents a traverse.
    Object Model
    Traverse ClassTraverseAdjustmentResults ClassMapPoint ClassTraverseClosure ClassCIMGroundToGridCorrection ClassTraverse ClassMapMember ClassMapPoint Class
    Syntax
    Public NotInheritable Class Traverse 
    public sealed class Traverse 
    Example
    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
    }
    Loading a traverse into the Traverse UI
    var isValidTrav = travParcel.IsValid(); //confirm it's a valid traverse
    if (!isValidTrav)
      return;
    
    //Load the traverse into the traverse grid
    await TraverseManager.Current.LoadTraverse(travParcel, "Load my custom traverse");
    Import a traverse file
    var pathAndNameOfTraverseFile = "C:\\MyTraverseFileFolder\\MyTraverseFile.txt";
    var traverse = await Traverse.ImportAsync(pathAndNameOfTraverseFile, spatialReference);
    Export a traverse to a file
    var directionDecimalPlaces = 0;
    var distanceDecimalPlaces = 3;
    var exportOptions = new TraverseExportOptions("C:\\MyTraverseFileFolder\\MyTraverseFile.txt", 
                                  ArcGIS.Core.CIM.DirectionType.QuadrantBearing,
                                  ArcGIS.Core.CIM.DirectionUnits.DegreesMinutesSeconds, 
                                  directionDecimalPlaces, distanceDecimalPlaces);
    travParcel.Export(exportOptions);
    Inheritance Hierarchy

    System.Object
       ArcGIS.Desktop.Editing.COGO.Traverse

    Requirements

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

    ArcGIS Pro version: 3.7 or higher.
    See Also