I'm working on a coordinate library implementation and I seem to be stuck with the French Lambert coordinate systems. I'm using this page as a reference (can anybody confirm the results there are accurate?)
The individual steps in the conversion seem to fit, but my overall result differs up to 50m from the one computed on that web site.
Now step by step: I'm converting as an example the point 2.1°E, 49.8°N from WGS84 to EPSG27571 (NTF Paris / Lambert Zone I)
- WGS84 -> WGS84 Geocentric: 4122109.79, 151150.90, 4848460.24 (meters)
- WGS84 Geocentric -> NTF (PM Paris) Datum conversion using Bursa-Wolfe: 4122273.66, 151210.75, 4848135.39 (meters)
- Geocentric -> Geographic, including meridian shift to Paris: -0.004127387, 0.86917528, -49.58 (radians)
I'm quite sure the result is right so far, because these are the same values than said web page returns when using EPSG 4807 as target CS (and converting from grad(!) to radians).
- Geographic -> Projected coordinates using lambert conformal 1sp, with latitude of origin = 0.86393797974 rad, longitude of origin = 0, False easting 60000, False northing 1200000, Ellipsoid Clarke 1880 IGN: 582974.00, 1233402.04, while expected is 582976.09, 1233397.93. Offset is about 3-5m here.
I have verified the lambert conformal projection using an example for EPSG 24200 JAD96 Jamaica, therefore I also think that the projection itself is right.
The error increases the farther away from Paris I get. Not including the false easting or false northing values, the error (quotient between right and wrong values) is in the order of 0.997-0.9998. This looks like some scaling problem, and the WKT description for EPSG 27571 mentions some scale, but I have no clue where to apply that. I do have a scale in the datum, though.
Now: Where is the error?