Creating a Custom Coordinate System in SonarWiz 7.10.0 or newer.

Introduction

Using SonarWiz 7.09.04 or older?

Please see https://sonarwiz.atlassian.net/wiki/spaces/HD/pages/152731742

The geodetic engine used in SonarWiz Version 7.10.0 and newer is based on the PROJ library. Defining a custom coordinate system in SonarWiz consists of recording a well known text (WKT) definition that describes the required system in a way that PROJ understands as well as some additional the 3rd party libraries that SonarWiz depends upon.

This guide will walk you through the process of defining a custom CRS from scratch.

Instructions

Before you begin, we recommend that you look up your coordinate system on the EPSG.IO web site. This site lists over 6000 coordinate systems and transformations (most of which are supported by SonarWiz out of the box). On each coordinate system description page, you will find PROJ4 string commands and WKT definitions that can be copied into the SonarWiz dialogs and tweaked. It is much easier to define a custom coordinate system by tweaking an existing definition than by starting from scratch.

  1. Begin by opening the Select a Coordinate System dialog. You can do this by clicking New Project > Browse Coordinate Systems… button or Project Settings > Browse Coordinate Systems… dialog


     

  2. Click on the Custom tab, to open the Custom Coordinate System panel.

  3. The CRS List drop down will list any custom coordinate systems already installed on your copy of SonarWiz. This list will be blank if you do not have any custom coordinate systems defined.

  4. Click the New button to start a new CRS

  5. Give the new CRS a Name. This will become the spatial reference ID (SRID) used by SonarWiz to identify your new coordinate system. The Name must be unique and no more than 23 characters long. Here at CTI, we use the format: CTI:XXXX where XXXX is the EPSG number that most closely represents our new system.

     

  6. Give the new CRS a Description. The description is used in dialogs throughout the program to describe the CRS to users. It is limited to 63 characters. A good idea is to look up the coordinate system on the EPSG.IO web site and copy the description format used there. These are standardized and should serve as a launching point for your custom description:

     

  7. Define the custom coordinate system in the Definition box.

    The definition area is used to initialize the Coordinate Reference System (CRS) using one of the three methods that the PROJ engine understands:

    1. You can use an existing Well Known Text (WKT) definition

    2. You can specify a Spatial Reference ID (SRID) such as an EPSG code.

    3. You can use PROJ strings.

    Generally, WKT or SRID’s are preferred over PROJ strings as they can contain more information about a given CRS. PROJ strings will in most cases cause a loss of information, potentially leading to erroneous transformations. Still, PROJ strings are the easiest choice if you are starting from scratch.

    Here is where the EPSG.IO web site can be extremely helpful. For example, if we look up EPSG:5235 (SLD99 / Sri Lanka Grid 1999 - EPSG:5235) and scroll down to the Export section, there are options for creating both WKT and PROJ4 string definitions.

    Here is the PROJ4 strings definition suggested by EPSG.IO:
    +proj=tmerc
    +lat_0=7.00047152777778
    +lon_0=80.7717130833333
    +k=0.9999238418
    +x_0=500000
    +y_0=500000
    +ellps=evrst30
    +towgs84=-0.293,766.95,87.713,-0.195704,-1.695068,-3.473016,-0.039338
    +units=m
    +no_defs
    +type=crs

    And here is the WKT suggestion:

    PROJCS["SLD99 / Sri Lanka Grid 1999",
    GEOGCS["SLD99",
    DATUM["Sri_Lanka_Datum_1999",
    SPHEROID["Everest 1830 (1937 Adjustment)",6377276.345,300.8017],
    TOWGS84[-0.293,766.95,87.713,-0.195704,-1.695068,-3.473016,-0.039338]],
    PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]],
    UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]],
    AUTHORITY["EPSG","5233"]],
    PROJECTION["Transverse_Mercator"],
    PARAMETER["latitude_of_origin",7.00047152777778],
    PARAMETER["central_meridian",80.7717130833333],
    PARAMETER["scale_factor",0.9999238418],
    PARAMETER["false_easting",500000],
    PARAMETER["false_northing",500000],
    UNIT["metre",1, AUTHORITY["EPSG","9001"]],
    AXIS["Easting",EAST],
    AXIS["Northing",NORTH],
    AUTHORITY["EPSG","5235"]]

    Both of these definitions will work in the SonarWiz definition box, but the WKT is more descriptive. So, we will use that.
    Copy and paste the WKT into the definition box and click the Create WKT from Definition button


    If SonarWiz can use the definition, you should see the Result status message turn from Red to Yellow indicating that the WKT definition is ok, but our test coordinates are not passing.

  8. To verify the CRS is working properly, you should enter test coordinates in the Verification dialog. The latitude and longitude should be in WGS 84. SonarWiz will transform the coordinates into the destination CRS and ensure that the results are identical in all of the 3rd party libraries utilized by SonarWiz. We recommend you compare the results with an independent source to ensure that the CRS is properly defined. Remember, just because the CRS is valid, doesn’t mean it is the correct system for your project.

    For example, enter the test coordinates (7.04397077° N, 79.86286735° E) and see that the result is (399568.25,504865.26). SonarWiz got the same results from all of its supporting libraries and verified that the coordinate system is working properly.

     

  9. Click the SAVE button to store your custom coordinate system

  10. You should now be able to select the new CRS from the CRS List drop down

     

 

CTI technical support is happy to assist in creating custom coordinate systems for users with active EMAs. Please see https://sonarwiz.atlassian.net/wiki/spaces/HD/pages/153518286 for more information.

Sharing Coordinate Systems with Other SonarWiz Installations

Custom coordinate systems can be transferred between SonarWiz installations by sharing special GXP files created for this purpose. Remember, you need to export both coordinate systems defined above (the “LL” version and the plain version) to make a complete set. SonarWiz will not function properly unless both versions are installed.

See the article Transfer Custom Coordinate Systems Between SonarWiz Versions 7.10.0 and Newer for instructions.

On this page:

Related Content:

 

Copyright 2022, Chesapeake Technology, Inc.