diff options
| author | Frank Warmerdam <warmerdam@pobox.com> | 2002-12-09 16:01:02 +0000 |
|---|---|---|
| committer | Frank Warmerdam <warmerdam@pobox.com> | 2002-12-09 16:01:02 +0000 |
| commit | 27c197f9da8005a2fd58bb8d902beb0864a2916b (patch) | |
| tree | 84dad4b3cca6d7e2adc3ce71333f432b22dd323c /src/pj_transform.c | |
| parent | f8e9a822d7e9166b9925f75ba36bb7aa75afc3c1 (diff) | |
| download | PROJ-27c197f9da8005a2fd58bb8d902beb0864a2916b.tar.gz PROJ-27c197f9da8005a2fd58bb8d902beb0864a2916b.zip | |
added prime meridian support
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1041 4e78687f-474d-0410-85f9-8d5e500ac6b2
Diffstat (limited to 'src/pj_transform.c')
| -rw-r--r-- | src/pj_transform.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/pj_transform.c b/src/pj_transform.c index ba136d20..a6c9aee3 100644 --- a/src/pj_transform.c +++ b/src/pj_transform.c @@ -30,6 +30,9 @@ ****************************************************************************** * * $Log$ + * Revision 1.6 2002/12/09 16:01:02 warmerda + * added prime meridian support + * * Revision 1.5 2002/12/01 19:25:26 warmerda * applied fix for 7 param shift in pj_geocentric_from_wgs84, see bug 194 * @@ -111,6 +114,15 @@ int pj_transform( PJ *srcdefn, PJ *dstdefn, long point_count, int point_offset, y[point_offset*i] = geodetic_loc.v; } } +/* -------------------------------------------------------------------- */ +/* But if they are already lat long, adjust for the prime */ +/* meridian if there is one in effect. */ +/* -------------------------------------------------------------------- */ + else if( srcdefn->from_greenwich != 0.0 ) + { + for( i = 0; i < point_count; i++ ) + x[point_offset*i] += srcdefn->from_greenwich; + } /* -------------------------------------------------------------------- */ /* Convert datums if needed, and possible. */ @@ -141,6 +153,16 @@ int pj_transform( PJ *srcdefn, PJ *dstdefn, long point_count, int point_offset, y[point_offset*i] = projected_loc.v; } } +/* -------------------------------------------------------------------- */ +/* But if they are staying lat long, adjust for the prime */ +/* meridian if there is one in effect. */ +/* -------------------------------------------------------------------- */ + else if( dstdefn->from_greenwich != 0.0 ) + { + for( i = 0; i < point_count; i++ ) + x[point_offset*i] -= dstdefn->from_greenwich; + } + return 0; } |
