Atlaslog / Field Notes / Coordinates & projections
Field note · Coordinates & projections
Southern UTM without the 10,000,000 m false northing gives negative y
Quick answer
EPSG:32756 carries a false northing of 10000000 m so the equator maps to y=10000000. A +proj=utm +zone=56 definition without +south treats Sydney as northern and returns y=-3748000, exactly 10 million metres away.
Symptom
- Sydney Opera House 151.2093, -33.8688 should project to x about 334300 and y about 6252000, but the code returns y=-3748000.
- North-hemisphere points on the same code are correct, so only the southern dataset is wrong.
- Writing the negative y into numeric(9,2) or an integer column throws value out of range or stores 0.
Checklist
- Compare the sign of the latitude with the EPSG hemisphere suffix; southern latitudes need 327xx.
- Check whether y is negative; valid UTM y lies between 0 and 10000000.
- Inspect a custom PROJ string for a missing +south.
- Project a north-hemisphere point at the same longitude as a control; if only the southern one fails, it is the hemisphere parameter.
- Reproject back to 4326 and confirm the round trip returns 151.2093, -33.8688.
Fix
Use EPSG:327xx for the southern hemisphere and add +south to any custom definition, e.g. +proj=utm +zone=56 +south +datum=WGS84 +units=m; also widen the database column to a signed type.
Code
const bad = '+proj=utm +zone=56 +datum=WGS84 +units=m +no_defs';
proj4.defs('UTM56_BAD', bad);
proj4('EPSG:4326', 'UTM56_BAD', [151.2093, -33.8688]);
// => [334300, -3748000]
proj4('EPSG:4326', 'EPSG:32756', [151.2093, -33.8688]);
// => [334300, 6252000]proj4.defs('EPSG:32756',
'+proj=utm +zone=56 +south +datum=WGS84 +units=m +no_defs');
-- 字段至少要容纳 0~10000000 的 y
ALTER TABLE survey_pt
ALTER COLUMN y TYPE numeric(12,3); -- 原来 numeric(9,2) 最大 9999999.99
Watch out
- Adding 10000000 to y after projection to 'correct' it, which breaks the false northing contract and the inverse transform.
- Changing only the EPSG code while a hard-coded +proj=utm +zone=56 string remains in the config.
English edition written for Atlaslog from the original Chinese field note. Code is unchanged and runs as-is.
Atlaslog (2026). Southern UTM without the 10,000,000 m false northing gives negative y. https://www.jingweizhi.com/en/cookbook/utm-south-false-northing.html (accessed 2026-11-03).