Introduction to Bearing and Distance Calculations

The surveyor's bearing and distance values, known as "survey pairs", found in the record of new roads, often use a notation and units not familiar to us 21st century folks. To acquaint you with the style of compass bearings and units of distance measure, the following explanations and interactive calculators are offered.

Compass Bearings

The compass bearings found in town roadway surveys often use a format consisting of a letter followed by a numeric value followed by another letter. The format looks like this:

[NS]dd.d[EW]

The first portion being the letter 'N' or 'S'. The second portion is an angle between 0 and 90 degrees. The third and final portion is the letter 'E' or 'W'.

Here are a few examples.
N15E Starting at North, turn 15 degrees toward the East. The resulting angle is 15 degrees.
S15E Starting at South, turn 15 degrees toward the East. The resulting angle is 180 (South) minus 15 degrees equals 165 degrees.
S15W Starting at South, turn 15 degrees toward the West. The resulting angle is 180 (South) plus 15 degrees equals 195 degrees.
N15W Starting at North, turn 15 degrees toward the West. The resulting angle is 360 (North) minus 15 degrees equals 345 degrees.

Ocassionally, when the direction is due (exactly) North, East, South, or West, the entry may simply be the letter 'N', 'E', 'S', or 'W' respectively.

Here are the resulting numeric angles:
N 0 or 360 degrees
E 90 degrees
S 180 degrees
W 270 degrees

Convert Bearing Format ([NS]<angle>[EW] to decimal)

Here is an interactive calculator. Select North or South, East or West, and enter a numeric angle. It will convert that surveyor bearing to a numeric compass angle.

Convert Bearing Format (DDD MM.mmmm to DDD.dddd)

Convert angles from "DDD MM.mmmm" format to "DDD.dddd".

Degrees Minutes Decimal Degrees

Distance Calculations

Enter the number of chains, rods, and links; the number of feet will be calculated.

Chains Rods Links Feet

Angles on a Map and on a Cartesian Coordinate System

Related to the topic of compass bearings is that of angles on a mathematician's Cartesian Coordinate System. For each, angles range from 0 to 360 degrees to describe the full circle, they are laid out quite differently. First, angles used to measure bearings on a compass or a map begin with 0 degrees assigned to North, then proceed clockwise with East being 90 degrees, South is 180 degrees, and West is 270 degrees. Angles on a Cartesian Coordinate System, however, begin with 0 degrees to the right, and proceed counterclockwise with 90 degrees up, 180 degrees to the left, and finally 270 degrees downward. As you can see, the two measurement systems differ in both the starting point - corresponding to 0 degrees, as well as the direction of increasing magnitude.

Though converting angles from one system to the other may appear tricky, there is a very simple and elegant solution. By entering an angle as Angle1 in the following equation, the result, Angle2, is the equivalent angle in the other measurement system. The amazing elegance comes as this equation works by converting angles in either direction - with no modification!

Angle2 = 450 - Angle1 modulus 360

...or in the form of a Microsoft Excel spreadsheet equation, the following:

=MOD(450 - A1, 360)

...where, in this example, the original angle is entered into cell A1, and the above equation is entered into cell B1.


Appendix

Following are some tools useful in Microsoft Excel workbooks for making the bearing and distance conversions. First is a Visual Basic for Excel macro. Enter it into a macro sheet. Then on a worksheet cell, refer to this macro and three worksheet cells (or constants) containing the "NS", angle, and "EW" information. Second is a simple Excel formula for converting a distance in chains, rods, and links to feet.

Here is the Visual Basic macro for converting a surveyor bearing to a numeric value.

Option Explicit

'
' This is a collection of macros written for use on the Hartland Ancient Roads project.
'
' Macros and functions were written by Gary Trachier.
'
'

' Name: SurveyBearing2Angle
'
' Purpose:  Converts a surveyor bearing of the form [NS]ddd.d[EW] to a decimal angle with 0 degrees at North.
'
' Revision history
' 28 June 2007   First written.
'
Public Function SurveyBearing2Angle(ByVal ns As String, ByVal numericAngle As Single, ByVal ew As String)
    Const errNS = -1    ' error value for a problem with the NS parameter
    Const errNumeric = -2   ' error value for a problem with the numeric parameter
    Const errEW = -3    ' error value for a problem with the EW parameter
    Const errUntrapped = -99    ' error value for all miscellaneous errors
    ns = LCase(ns)
    ew = LCase(ew)
    If (ns <> "n" And ns <> "s") Then   ' error-check the NS value
        SurveyBearing2Angle = errNS    ' set the error return value
        Exit Function                               ' bail out
    End If

    If (ew <> "e" And ew <> "w") Then   ' error-check the EW value
        SurveyBearing2Angle = errEW    ' set the error return value
        Exit Function                               ' bail out
    End If

    If (numericAngle < 0 Or numericAngle > 90) Then    ' error-check the numeric portion
        SurveyBearing2Angle = errNumeric    ' set the error return value
        Exit Function                                       ' bail out
    End If

    ' handle each quadrant separately for the calculation
    Select Case ns
        Case "n"
            Select Case ew
                Case "e"
                    SurveyBearing2Angle = 0 + numericAngle
                Case "w"
                    SurveyBearing2Angle = 360 - numericAngle
                Case Else
                    SurveyBearing2Angle = errUntrapped
            End Select
        Case "s"
            Select Case ew
                Case "e"
                    SurveyBearing2Angle = 180 - numericAngle
                Case "w"
                    SurveyBearing2Angle = 180 + numericAngle
                Case Else
                    SurveyBearing2Angle = errUntrapped
            End Select
        Case Else
            SurveyBearing2Angle = errUntrapped
    End Select
End Function

Here is the Excel equation for converting a distance in chains, rods, and links to feet.

=(E4*4*16.5)+(F4*16.5)+(G4*16.5/25)