diff options
| author | Frank Warmerdam <warmerdam@pobox.com> | 2010-09-20 19:55:09 +0000 |
|---|---|---|
| committer | Frank Warmerdam <warmerdam@pobox.com> | 2010-09-20 19:55:09 +0000 |
| commit | ec9c4401eea825e6488feeb469b4a4a51c98b170 (patch) | |
| tree | c6767e3b16841e91dd179c07a6a9c041bf897dc0 /src | |
| parent | 783043034627d9930f39a53a8a40fe7918b01e74 (diff) | |
| download | PROJ-ec9c4401eea825e6488feeb469b4a4a51c98b170.tar.gz PROJ-ec9c4401eea825e6488feeb469b4a4a51c98b170.zip | |
fix vgrid inverse and error handling
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1904 4e78687f-474d-0410-85f9-8d5e500ac6b2
Diffstat (limited to 'src')
| -rw-r--r-- | src/pj_apply_vgridshift.c | 4 | ||||
| -rw-r--r-- | src/pj_transform.c | 16 |
2 files changed, 10 insertions, 10 deletions
diff --git a/src/pj_apply_vgridshift.c b/src/pj_apply_vgridshift.c index d8f18e07..f4b80bd9 100644 --- a/src/pj_apply_vgridshift.c +++ b/src/pj_apply_vgridshift.c @@ -155,9 +155,9 @@ int pj_apply_vgridshift( PJ *defn, const char *listname, else { if( inverse ) - z[io] += value; - else z[io] -= value; + else + z[io] += value; } if( value != HUGE_VAL ) diff --git a/src/pj_transform.c b/src/pj_transform.c index 4f0585ea..2d0d06ef 100644 --- a/src/pj_transform.c +++ b/src/pj_transform.c @@ -205,10 +205,10 @@ int pj_transform( PJ *srcdefn, PJ *dstdefn, long point_count, int point_offset, /* -------------------------------------------------------------------- */ if( srcdefn->has_geoid_vgrids ) { - if( !pj_apply_vgridshift( srcdefn, "sgeoidgrids", - &(srcdefn->vgridlist_geoid), - &(srcdefn->vgridlist_geoid_count), - 0, point_count, point_offset, x, y, z ) ) + if( pj_apply_vgridshift( srcdefn, "sgeoidgrids", + &(srcdefn->vgridlist_geoid), + &(srcdefn->vgridlist_geoid_count), + 0, point_count, point_offset, x, y, z ) != 0 ) return pj_ctx_get_errno(srcdefn->ctx); } @@ -230,10 +230,10 @@ int pj_transform( PJ *srcdefn, PJ *dstdefn, long point_count, int point_offset, /* -------------------------------------------------------------------- */ if( dstdefn->has_geoid_vgrids ) { - if( !pj_apply_vgridshift( dstdefn, "sgeoidgrids", - &(dstdefn->vgridlist_geoid), - &(dstdefn->vgridlist_geoid_count), - 0, point_count, point_offset, x, y, z ) ) + if( pj_apply_vgridshift( dstdefn, "sgeoidgrids", + &(dstdefn->vgridlist_geoid), + &(dstdefn->vgridlist_geoid_count), + 1, point_count, point_offset, x, y, z ) != 0 ) return dstdefn->ctx->last_errno; } |
