[GIS] Guessing unknown projection in Malaysia

coordinate systemformatmalaysiawgs84

I have a database of northings and eastings of boundary markers of land parcels that are in a form that I cannot pin on any format. I would like to perform some conversions on them so that they can be used on Google Earth, Maps, Waze etc. Example land parcel boundary markers:

23463.817 E, -54819.146 N
23449.900 E, -54808.635 N
23445.504 E, -54841.976 N
23435.597 E, -54834.499 N
23434.750 E, -54828.132 N

One of the marker is pointing "close" to 3.184487, 101.718079 on Google Earth.

I'm having trouble determining what format are these because it seems the values are way out of range for many known formats. I have no access to the people providing this information at the moment. Can anyone help me figure this out?

The area of concern is in Kuala Lumpur, West Malaysia.

Best Answer

Malaysia uses Cassini projections per state for cadastral mapping. For Kuala Lumpur, the Selangor grid would be the right one. The EPSG registry lists these codes:

3380 GDM2000 / Selangor Grid
4393 Kertau 1968 / Selangor Grid

Unfortunately, both do not fit to your coordinates, and the second has not even found its way into the PROJ.4/GDAL software. Neither does the countrywide projection EPSG:3375 GDM2000 / Peninsula RSO fit.

So lets put up a custom CRS based on EPSG:3380, assuming the reference point is close to the first coordinate:

+proj=cass +lat_0=3.184487 +lon_0=101.718079 +x_0=23463.817 +y_0=-54819.146 +ellps=GRS80 +units=m +no_defs

Creating a grid with this datum, you will see that the origin will be around 101.5°E 3.68°N, which is, by coincidence, close to the orgin of EPSG:3380 Selangor Grid, omitting the false Easting and Northing of that projection.

After some searching on the internet, you will come across a file named PKPUP3-2009.pdf

In chapter 4.5, you can read that Malaysia has reorganized its local Cassini projections, now setting all False eastings and Northings to zero. The document lists for Selangor the Bukit Asa reference station, with these coordinates:

3° 40' 48.37751" North 101° 30' 24.48130" East 

which is equivalent to 3.68010486388889 N 101.506800361111 E in decimal degrees. So the right PROJ.4 string and .prj file content for your coordinate system would be:

+proj=cass +lat_0=3.68010486388889 +lon_0=101.506800361111 +x_0=0 +y_0=0 +ellps=GRS80 +units=m +no_defs

PROJCS["Cassini",GEOGCS["GCS_GRS 1980(IUGG, 1980)",DATUM["D_unknown",SPHEROID["GRS80",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Cassini"],PARAMETER["latitude_of_origin",3.68010486388889],PARAMETER["central_meridian",101.506800361111],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],PARAMETER["scale_factor",1.0]]

which places your coordinates about 26 meters from your reference point:

enter image description here

It seems that neither EPSG nor any GIS software has adopted this new set of local Cassini projections of Malasyia yet. The Surveying Authority makes some mistery about it, partially because they want to get money for the information they provide.

Related Question