Ticket #2134: gdal-1.6.0-ogr_srs_proj4-20080223.patch

File gdal-1.6.0-ogr_srs_proj4-20080223.patch, 2.9 kB (added by dgrichard, 3 months ago)

synchronisation of trunk with new eqc/gausslab projection

  • gdal-trunk/ogr/ogr_srs_proj4.cpp

    old new  
    489489 
    490490    else if( EQUAL(pszProj,"eqc") ) 
    491491    { 
    492         SetEquirectangular( OSR_GDV( papszNV, "lat_ts", 0.0 ),  
    493                             OSR_GDV( papszNV, "lon_0", 0.0 ),  
    494                             OSR_GDV( papszNV, "x_0", 0.0 ),  
    495                             OSR_GDV( papszNV, "y_0", 0.0 ) ); 
    496     } 
    497  
    498     else if( EQUAL(pszProj,"eqr") ) 
    499     { 
    500         SetEquidistantCylindricalSphere( OSR_GDV( papszNV, "lat_ts", 0.0 ), 
    501                                          OSR_GDV( papszNV, "lon_0", 0.0 )+dfFromGreenwich, 
    502                                          OSR_GDV( papszNV, "k_0", 6378137.0 ), 
    503                                          OSR_GDV( papszNV, "x_0", 0.0 ), 
    504                                          OSR_GDV( papszNV, "y_0", 0.0 ) ); 
     492        if( OSR_GDV( papszNV, "lat_0", 0.0 ) != OSR_GDV( papszNV, "lat_ts", 0.0 ) ) 
     493          SetEquirectangular2( OSR_GDV( papszNV, "lat_0", 0.0 ), 
     494                               OSR_GDV( papszNV, "lon_0", 0.0 )+dfFromGreenwich, 
     495                               OSR_GDV( papszNV, "lat_ts", 0.0 ), 
     496                               OSR_GDV( papszNV, "x_0", 0.0 ), 
     497                               OSR_GDV( papszNV, "y_0", 0.0 ) ); 
     498        else 
     499          SetEquirectangular( OSR_GDV( papszNV, "lat_ts", 0.0 ), 
     500                              OSR_GDV( papszNV, "lon_0", 0.0 )+dfFromGreenwich, 
     501                              OSR_GDV( papszNV, "x_0", 0.0 ), 
     502                              OSR_GDV( papszNV, "y_0", 0.0 ) ); 
    505503    } 
    506504 
    507505   else if( EQUAL(pszProj,"glabsgm") ) 
     
    12281226                     GetNormProjParm(SRS_PP_FALSE_NORTHING,0.0) ); 
    12291227    } 
    12301228 
    1231     else if( EQUAL(pszProjection,SRS_PT_EQUIDISTANT_CYLINDRICAL_SHERE) ) 
    1232     { 
    1233         sprintf( szProj4+strlen(szProj4), 
    1234                  "+proj=eqr +lat_ts=%.16g +lon_0=%.16g +k_0=%.16g +x_0=%.16g +y_0=%.16g ", 
    1235                  GetNormProjParm(SRS_PP_LATITUDE_OF_ORIGIN,0.0), 
    1236                  GetNormProjParm(SRS_PP_CENTRAL_MERIDIAN,0.0), 
    1237                  GetNormProjParm(SRS_PP_SCALE_FACTOR,6378137.0), 
    1238                  GetNormProjParm(SRS_PP_FALSE_EASTING,0.0), 
    1239                  GetNormProjParm(SRS_PP_FALSE_NORTHING,0.0) ); 
    1240     } 
    1241  
    12421229    else if( EQUAL(pszProjection,SRS_PT_EQUIRECTANGULAR) ) 
    12431230    { 
    12441231        sprintf( szProj4+strlen(szProj4), 
    1245                  "+proj=eqc +lat_ts=%.16g +lon_0=%.16g +x_0=%.16g +y_0=%.16g ", 
     1232                 "+proj=eqc +lat_ts=%.16g +lat_0=%.16g +lon_0=%.16g +x_0=%.16g +y_0=%.16g ", 
     1233                 GetNormProjParm(SRS_PP_PSEUDO_STD_PARALLEL_1, 
     1234                                 GetNormProjParm(SRS_PP_LATITUDE_OF_ORIGIN,0.0)), 
    12461235                 GetNormProjParm(SRS_PP_LATITUDE_OF_ORIGIN,0.0), 
    12471236                 GetNormProjParm(SRS_PP_CENTRAL_MERIDIAN,0.0), 
    12481237                 GetNormProjParm(SRS_PP_FALSE_EASTING,0.0),