Atlaslog / Field Notes / Coordinates & projections
Field note · Coordinates & projections
Gauss-Kruger zone number mistaken for central meridian, layer off 275 km
Quick answer
CGCS2000 3-degree Gauss-Kruger zones are keyed by central meridian, so EPSG:4546 is 108 E and EPSG:4547 is 111 E. Choosing 4547 for Shaanxi data moves it 2.9 degrees, about 275 km, east.
Symptom
- Shaanxi data with x 350000~650000 and y around 3780000 opens near 112.5 E under EPSG:4547 instead of its real position.
- Switching the layer CRS to EPSG:4546 restores the correct location.
- The two EPSG codes differ by one digit, but their central meridians differ by 3 degrees.
Checklist
- Check x: the Gauss-Kruger false easting is 500000, so x within 500000 plus/minus 150000 means the central meridian is near the data.
- Estimate the longitude difference with delta-lon = (x-500000)/(111320*cos(lat)).
- Compare the estimated longitude with the layer's central meridian; more than 1.5 degrees apart means the wrong zone.
- Open the layer CRS WKT in QGIS and read the central_meridian parameter directly.
- Map the central meridian to the EPSG code: 108 E is 4546 (zone 36), 111 E is 4547 (zone 37).
Fix
Select the zone from the data's longitude, not from EPSG numbering order, and use a 6-degree zone or store lon/lat when points sit more than 1.5 degrees from the central meridian.
Code
const x = 600000, lat = 34.34;
const dLon = (x - 500000) / (111320 * Math.cos(lat * Math.PI / 180));
console.log(108 + dLon); // ≈ 109.1,落在 108°E 带内
// 若图层声明 111°E,则该点应落在 112.1°E,与实际不符 -> 带号错function zone3(lon) {
const z = Math.round(lon / 3);
return { zone: z, cm: z * 3 };
}
zone3(108.940174); // { zone: 36, cm: 108 }
proj4.defs('CGCS2000_3DEG_36',
'+proj=tmerc +lat_0=0 +lon_0=108 +k=1 +x_0=500000 +y_0=0' +
' +ellps=GRS80 +units=m +no_defs');
proj4('CGCS2000_3DEG_36', 'EPSG:4490', [600000, 3800000]);
// => [109.05, 34.32] 量级正确
Watch out
- Deriving the central meridian with the 6-degree formula zone*6-3, which turns zone 36 into 213 E.
- Assuming EPSG:4547 covers all CGCS2000 3-degree data because it is the most commonly cited code.
English edition written for Atlaslog from the original Chinese field note. Code is unchanged and runs as-is.
Atlaslog (2026). Gauss-Kruger zone number mistaken for central meridian, layer off 275 km. https://www.jingweizhi.com/en/cookbook/gauss-kruger-band.html (accessed 2026-11-03).