1

I have a local coordinate reference system defined with WKT:

            COMPD_CS[
                "test",
                FITTED_CS[
                    "",
                    PARAM_MT[
                        "Local_Grid",
                        PARAMETER["E0",131473.823],
                        PARAMETER["N0",25419.216],
                        PARAMETER["K",0.999997513402],
                        PARAMETER["DE",-522111.156],
                        PARAMETER["DN",-2500318.967],
                        PARAMETER["Beta",359.022486769444]
                    ],
                    PROJCS[
                        "",
                        GEOGCS[
                            "",
                            DATUM["WGS 84~1",SPHEROID["xian80",6378137,298.3] ,TOWGS84[0, 0, 0, 0, 0, 0, 0]],
                            PRIMEM["Greenwich",0],
                            UNIT["Radians",1],
                            AXIS["lng",East],
                            AXIS["lat",North]
                        ],
                        PROJECTION["Transverse_Mercator"],
                        PARAMETER["latitude_of_origin",0],
                        PARAMETER["central_meridian",114],
                        PARAMETER["scale_factor",1],
                        PARAMETER["false_easting",500000],
                        PARAMETER["false_northing",0],
                        UNIT["Meters",1],
                        AXIS["east",East],
                        AXIS["north",North]
                    ]
                ],
                VERT_CS[
                    "",
                    VERT_DATUM["Ellipsoid",2002],UNIT["Meters",1],AXIS["Height",Up]
                ]
            ]

My first try is to save it as .prj file and open with ArcGIS, but ArcGIS cannot recognize it.

After reading the official doc (http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/doc-files/WKT.html , http://docs.opengeospatial.org/is/12-063r5/12-063r5.html), I knew it defines a transformed projection coordinate system with old WKT standard (version1), and some concepts in it is no longer used in current version ("COMPD_CS","FITTED_CS").

My second try is to search how the transformation works (PARAM_MT[..] part) ,hoping to rewrite it in current WKT standard or make a transformation in ArcGIS, but found no useful information.

Does anyone know how to make use of this old WKT defined CRS?

1

Disclosure: I work for Esri as a specialist in coordinate systems and geographic/datum transformations and am on the subcommittee that maintains the EPSG Geodetic Parameter Registry.

ArcGIS software generally doesn't support transformations applied on top of a geographic or projected coordinate reference system (ProjCRS). We do have a "local" coordinate reference system that is sometimes useful for emulating these types of local grids/projections although I know people who have also used Hotine oblique Mercator or RSO (Rectified skew orthomorphic).

The base ProjCRS looks like a Gauss-Kruger zone because the scale factor is 1.0, rather than 0.9996.

The fitted_CS has these parameters:

PARAMETER["E0",131473.823],
PARAMETER["N0",25419.216],
PARAMETER["K",0.999997513402],
PARAMETER["DE",-522111.156],
PARAMETER["DN",-2500318.967],
PARAMETER["Beta",359.022486769444]

I assume that this is how the parameters would be applied to the GK coordinates:

  1. Subtract DE from the GK easting and DN from the GK northing.
  2. Use the remaining parameters in a conformal transformation. Beta = rotation, E0 and N0 are the x and y translations, and K is the XY scale.

That first step is unusual. Usually the conformal or affine transformation has just 2 translations and they're applied directly to the base CRS coordinates as part of the conformal or affine transformation.

If you have control points in this system and another, known coordinate reference system that ArcGIS understands, you could try a process to make a custom CRS that matches the data.

Create 2 shapefiles with the control points. For the fitted_CS data, leave the coordinate system (spatial reference) undefined.

  1. Add both shapefiles to ArcMap.
  2. Open data frame properties and select the coordinate system tab.
  3. Select the Globe icon and select New > Projected Coordinate System
  4. Set up the ProjCRS using the Fitted_CS parameters.
  5. Use the Local projection.
  6. Try adding the E0 + DE together for the False Easting and N0 + DN values together for the False Northing parameters.
  7. Use the Beta values for the Rotation and K for the Scale Factor.
  8. For the longitude of origin, +114.215.
  9. For the latitude of origin, try 22.6.
  10. For the geographic CRS, choose WGS 1984.
  11. Give the CRS a name.

OK the dialog. You'll see that the data with a known CRS is (hopefully) somewhere in the vicinity of the unknown data. Now, you open data frame properties again, right-click the custom CRS and start modifying its parameters to see if you can overlay the known data with the unknown data. If you get a decent fit, that's the CRS you should apply to the fitted_CS shapefile.

I have 2 documents that talk about this procedure. Feel free to email me for them: mkennedy at esri.

  • Thanks but not sure about the 6th step. Do you mean: False Easting = False Northing = E0/N0 + DE + DN? Are they supposed to be the same? – wildwts Apr 27 '18 at 8:31
  • I guess you mean False Easting = E0+DN? – wildwts Apr 27 '18 at 12:25
  • Do you have reasons or reference why you suggest 114.215, a accurate number instead of just 114? – wildwts Apr 27 '18 at 12:27
  • @wildwts I believe I added E0+DE and N0+DN to get easting and norhting coordinates which I then unprojected based on the base CRS. I'm assuming that the area in question is very local like a parcel so I'm trying to determine a local lat/lon origin. – mkennedy Apr 27 '18 at 19:20

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.