I'm trying to convert field data from an older Sokkia TotalStation machine, to coordinates. I've looked at Copan but as far as I can tell it doesn't support the file format.

There are some outdated software that referred to it as "reducing field book" with reference to "Booker Intl".

The field data is in tab delimited in the following format:

Native Data

Can anyone advise me what format this is, and how I can convert this into coordinates?

If there are no off-the-shelf tools out there that can do it I can write something if someone can point me to the calculations.

Ultimate aim is to load it into QGIS and generate contours.

[Update 23/12 - Below some further details to clarify, in response to answer from @jbgramm]

  1. I only need to resolve these into relative XYZ coordinates - they don't need to be georeferenced. I can identify all the setup points on the geographic map, but that's not really relevant.

  2. The screenshot I pasted is only an extract of the file, there are setup records for all the stations, and lots more observations from each station.

  3. This specific file is just an example - I need to find a tool or approach to resolve other files like this one

  4. I believe the records are indicated as follows: { = setup, % = backsight, e = observation

  5. I suspect the "setup" record fields are: [station_id] { [date] [time] [reference bearing] [instrument height]

  6. Fairly confident the "backsight" fields are: [backsight_target_id] % [horizontal angle] [vertical/zenith angle] [not sure] [target height]

  7. Fairly confident the "observation" fields are: [obs id] [note] e [horizontal angle] [vertical/zenith angle] [slope distance] [target height]

  8. All distances and heights are in meters

  9. I believe you are correct that all "angular data appears to be Degrees.MinutesSeconds (DDD.MMSS)"

  10. You are spot on regarding the backsight and checkshots. It might be worth adding that the survey is in the southern hemisphere and the reference bearing is due South.

Ideally I would prefer an off the shelf tool that can read this format as is and convert it to X,Y,Z points for me. But lacking that I wonder if you can direct me at material that reference the calculations.

Does it come down to calculating the polar for all observations?

  • QGIS can import a tab-delimited file. The challenge is figuring out two things: what CRS your data is in, and which field corresponds to which data (possibly two of the fields are X and Y coordinates; one field might be elevation; another field might be a timestamp). Do you have the manual for the Sokkia TotalStation machine? It should explain what the different fields are.
    – csk
    Dec 22 '19 at 18:04
  • The file contains bearings and distances. The setup records are marked with "{", the readings are marked "e" and followed by Horizontal angle, vertical angle, slope distance, and reflector height.
    – Lox
    Dec 22 '19 at 18:31

I have gone over this quite a few times looking for a direct solution.

Given your description of the data:

I do not believe there is enough information to solve the problem completely. Coordinates for STA need to be known, as does the orientation of the instrument.


It also is quite possible that the coordinates for STB STC & STD are known, and the operator is performing a resection to determine the coordinates of STA

There two points being occupied though, as evidenced by STA { and later in the file with STB {

So assuming what has been described is correct.

    HZ      ZEN    SD  ROD

STA { 15.049 11.2535 0.00 1.65

I feel the 15.049 is actually meaningless, it occurs again in the second instrument setup on STB

11.2535 makes little sense for a Zenith angle unless the instrument is not oriented properly. (Zenith angles = 0 for straight up, 90 horizontal or level, 180 straight down, 270 for horizontal with the scope plunged) You have similar extreme zenith angle for the initial record of the occupation of STB

It is possible the HZ angle reading is the Azimuth of the observation, but I have my doubts. I feel it is what the instrument is displaying at the time the observation is recorded. This would be called a plate angle or direction. It could be completely arbitrary. Record whatever the instrument is reading, then calculate the angular differences later.

For the first instrument point "STA {" you have several observations STB STC STD (No ID) OL OL These observations have a horizontal angle, zenith angle, slope distance, and target height. The angular data appears to be Degrees.MinutesSeconds (DDD.MMSS) or Sexagesimal. I would venture to guess the distances are in meters as are the target heights. IF the distances and Instrument/Target Heights are in feet, the operator is either very short, lying down, or has the instrument on a pillar. This is very unlikely.

The second set of data after line 6 shows an occupation of STB with a backsight to STA and checkshot to STA as well. I do not know if the 247.443 is the backsight azimuth, or simply what the instrument is displaying. The angles/azimuths do not add up from the first set of observations. It is possible the 247.443 is the azimuth after solving the possible resected coordinates for STA The slope distance from STB to STA is different by 0.035 units of measure. This is not unreasonable for either feet or meters given the difference in height between the two points.

You then have other shots which provide little information to create a workable solution.

If you can provide more information such as coordinates for STB STC & STD I believe I could give you a more clear idea on how to proceed.

  • Thanks for taking the time @jbgramm ! My reply to you was too long for a comment, so I stuck it as an update to the original post. appreciate any advice you may have.
    – Lox
    Dec 23 '19 at 18:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.