Converting from United States State Plane Coordinate System to Lat/Long WGS84

State Plane Coordinate System is a cartesian coordinate system that is widely used by many local practitioners in the United States. It’s only useful for local regions because projections used ignore the Earth’s curvature.

UTM?
When googling solutions for the conversion, I came across the UTM system. It looked related as it referenced the data in the same easting and northing points. UTM is a cartesian coordinate system but generalized for the entire world. It is not as specific as the State Plane Coordinate System.

WGS84?
WGS84 is the latest revision for the World Geodetic System widely used. Google Earth references lat/lng using this system and this is our target.

Convert from the California Zone VI State Plane Coordinate System to WGS84.
Now, back to the problem, our input is 6080411.905 ft easting 2169099.127 ft northing. We want its corresponding lat/lng.

Use cs2cs for the conversion
Download cs2cs from proj.4 cs2cs will convert coordinates from one system to another with the right projection parameters.

Find the corresponding projection for California Zone VI State Plane Coordinate System:

spatialreference.org has an extensive source of different coordinate systems.

Here’s the correct parameters for California VI as found on http://spatialreference.org/ref/esri/102646/

PROJCS["NAD_1983_StatePlane_California_VI_FIPS_0406_Feet",
    GEOGCS["GCS_North_American_1983",
        DATUM["North_American_Datum_1983",
            SPHEROID["GRS_1980",6378137,298.257222101]],
        PRIMEM["Greenwich",0],
        UNIT["Degree",0.017453292519943295]],
    PROJECTION["Lambert_Conformal_Conic_2SP"],
    PARAMETER["False_Easting",6561666.666666666],
    PARAMETER["False_Northing",1640416.666666667],
    PARAMETER["Central_Meridian",-116.25],
    PARAMETER["Standard_Parallel_1",32.78333333333333],
    PARAMETER["Standard_Parallel_2",33.88333333333333],
    PARAMETER["Latitude_Of_Origin",32.16666666666666],
    UNIT["Foot_US",0.30480060960121924],
    AUTHORITY["EPSG","102646"]]

Run cs2cs
Pipe the input coordinates to cs2cs with the correct parameters given above.
echo '6080411.905 2169099.127' | cs2cs -f %.16f +proj=lcc +lat_1=32.78333333333333 +lat_2=33.88333333333333 +lat_0=32.16666666666666 +lon_0=-116.25 +x_0=2000000 +y_0=500000.0000000002 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 +no_defs +to +proj=latlon

Lat/Lng Output:
-117.8701429123491806 33.6091316264922995 0.0000000000000000

Alternatively, if you can’t use cs2cs or you rather implement the conversion directly with the projection parameters. The transformation equations here are listed at http://www.remotesensing.org/geotiff/proj_list/lambert_conic_conformal_2sp.html

About tommychheng
I write a tech blog at http://tommy.chheng.com

Leave a Reply

Fill in your details below or click an icon to log in:

Gravatar
WordPress.com Logo

Please log in to WordPress.com to post a comment to your blog.

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.