New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

incorrect convergence calculation for lcc projection. #16

proj4-bot opened this Issue May 22, 2015 · 2 comments


2 participants

proj4-bot commented May 22, 2015

Reported by keesk on 22 Sep 2008 08:36 UTC

Convergence calculation for lcc seems to have an incorrect sign. The convention for convergence is:

  meridian convergence = bearing of grid north (measured clockwise from true north)

  so: true bearing = grid bearing + convergence

To demonstrate this i modified proj.exe so it prints the convergence (in
deg) at the end of the line when using the -S flag:

C:\proj-4.6.1\src>proj -vS +proj=lcc +datum=WGS84 +lat_0=52 +lon_0=3
+lat_1=50 +lat_2=54
#Lambert Conformal Conic
# Conic, Sph&Ell
# lat_1= and lat_2= or lat_0
# +proj=lcc +datum=WGS84 +lat_0=52 +lon_0=3 +lat_1=50 +lat_2=54 +ellps=WGS84
# +towgs84=0,0,0
2 52
-68634.11 472.08 <0.999392 0.999392 0.998785 0.000355057 0.999395
0.999389 0.788173>
4 52
68634.11 472.08 <0.999392 0.999392 0.998785 0.000355708 0.999395
0.999389 -0.788173>
4 52.1
68481.15 11591.10 <0.999393 0.999393 0.998787 0.000434814
0.999397 0.99939 -0.788173>

When i calculate two positions along a longitude east of the origin (point E4N52 and point E4N52.1) the easting reduces when going northwards. According te the convention the convergence should be positive and not negative.

Testing with a UTM projection gives the expected results:

C:\proj-4.6.1\src>proj -vS +proj=utm +datum=WGS84 +lon_0=3
#Universal Transverse Mercator (UTM)
# Cyl, Sph
# zone= south
# +proj=utm +datum=WGS84 +lon_0=3 +ellps=WGS84 +towgs84=0,0,0
2 52
431350.30 5761510.32 <0.999658 0.999658 0.999316 1.20783e-006
0.999658 0.999658 -0.788041>
4 52
568649.70 5761510.32 <0.999658 0.999658 0.999316 8.54066e-007
0.999658 0.999658 0.788041>
4 52.1
568496.62 5772632.28 <0.999658 0.999658 0.999315 0 0.999658
0.999658 0.789115>

From the above results it seems that for utm the convergence is
negative when west and positive when east of lon_0.
If you calculate two utm positions along the same longitude east of
lon_0, you see that the easting reduces when going northwards.

From this is seems that TrueNorth = GridNorth + convergence which complies with the convention.


Kees Krikke

Last Modified by warmerdam on 22 Sep 2008 14:54 UTC



This comment has been minimized.

proj4-bot commented May 22, 2015

Comment by warmerdam on 22 Sep 2008 14:54 UTC
This is related to the thread:

with the (current) conclusion:

I'll wait for Gerald to complete his analysis and then look to apply the same fix he does.


This comment has been minimized.

dtutic commented Jul 12, 2017

My findings also confirm that LCC gives opposite sign for meridian convergence if we accept the definition: "meridian convergence on a map, at a given point, is the angle measured clockwise from
the tangent to the projection of the meridian to the northing coordinate line (grid north)—also
called map angle or mapping angle."

Solution is to replace the line:

fac->conv = - Q->n * lp.lam;


fac->conv = Q->n * lp.lam;

in PJ_lcc.c

@kbevers kbevers closed this in 1c9e795 Jul 13, 2017

kbevers added a commit that referenced this issue Jul 13, 2017

Merge pull request #545 from kbevers/lcc-convergence
Correcting convergence formula for LCC. Fixes #16.

@kbevers kbevers moved this from Bugs to Done in 2017 release Jul 13, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment