⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 geo_normalize.c

📁 GIS系统支持库Geospatial Data Abstraction Library代码.GDAL is a translator library for raster geospatial dat
💻 C
📖 第 1 页 / 共 5 页
字号:
                       &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        if( GTIFKeyGet(psGTIF, ProjScaleAtNatOriginGeoKey,                       &dfNatOriginScale, 0, 1 ) == 0 )            dfNatOriginScale = 1.0;                    /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjCenterLatGeoKey;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjCenterLongGeoKey;        psDefn->ProjParm[4] = dfNatOriginScale;        psDefn->ProjParmId[4] = ProjScaleAtNatOriginGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_LambertConfConic_1SP:      case CT_Mercator:      case CT_ObliqueStereographic:      case CT_TransverseMercator:      case CT_TransvMercator_SouthOriented:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        if( GTIFKeyGet(psGTIF, ProjScaleAtNatOriginGeoKey,                       &dfNatOriginScale, 0, 1 ) == 0 )            dfNatOriginScale = 1.0;                    /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjNatOriginLatGeoKey;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjNatOriginLongGeoKey;        psDefn->ProjParm[4] = dfNatOriginScale;        psDefn->ProjParmId[4] = ProjScaleAtNatOriginGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_ObliqueMercator: /* hotine *//* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        if( GTIFKeyGet(psGTIF, ProjAzimuthAngleGeoKey,                        &dfAzimuth, 0, 1 ) == 0 )            dfAzimuth = 0.0;        if( GTIFKeyGet(psGTIF, ProjRectifiedGridAngleGeoKey,                       &dfRectGridAngle, 0, 1 ) == 0 )            dfRectGridAngle = 90.0;        if( GTIFKeyGet(psGTIF, ProjScaleAtNatOriginGeoKey,                       &dfNatOriginScale, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjScaleAtCenterGeoKey,                          &dfNatOriginScale, 0, 1 ) == 0 )            dfNatOriginScale = 1.0;                    /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjCenterLatGeoKey;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjCenterLongGeoKey;        psDefn->ProjParm[2] = dfAzimuth;        psDefn->ProjParmId[2] = ProjAzimuthAngleGeoKey;        psDefn->ProjParm[3] = dfRectGridAngle;        psDefn->ProjParmId[3] = ProjRectifiedGridAngleGeoKey;        psDefn->ProjParm[4] = dfNatOriginScale;        psDefn->ProjParmId[4] = ProjScaleAtCenterGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_CassiniSoldner:      case CT_Polyconic:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        if( GTIFKeyGet(psGTIF, ProjScaleAtNatOriginGeoKey,                       &dfNatOriginScale, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjScaleAtCenterGeoKey,                          &dfNatOriginScale, 0, 1 ) == 0 )            dfNatOriginScale = 1.0;                    /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjNatOriginLatGeoKey;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjNatOriginLongGeoKey;        psDefn->ProjParm[4] = dfNatOriginScale;        psDefn->ProjParmId[4] = ProjScaleAtNatOriginGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_AzimuthalEquidistant:      case CT_MillerCylindrical:      case CT_Equirectangular:      case CT_Gnomonic:      case CT_LambertAzimEqualArea:      case CT_Orthographic:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjCenterLatGeoKey;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjCenterLongGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_Robinson:      case CT_Sinusoidal:      case CT_VanDerGrinten:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjCenterLongGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_PolarStereographic:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjStraightVertPoleLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        if( GTIFKeyGet(psGTIF, ProjScaleAtNatOriginGeoKey,                       &dfNatOriginScale, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjScaleAtCenterGeoKey,                          &dfNatOriginScale, 0, 1 ) == 0 )            dfNatOriginScale = 1.0;                    /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjNatOriginLatGeoKey;;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjStraightVertPoleLongGeoKey;        psDefn->ProjParm[4] = dfNatOriginScale;        psDefn->ProjParmId[4] = ProjScaleAtNatOriginGeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_LambertConfConic_2SP:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjStdParallel1GeoKey,                        &dfStdParallel1, 0, 1 ) == 0 )            dfStdParallel1 = 0.0;        if( GTIFKeyGet(psGTIF, ProjStdParallel2GeoKey,                        &dfStdParallel2, 0, 1 ) == 0 )            dfStdParallel1 = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0 )            dfNatOriginLat = 0.0;        /* notdef: should transform to decimal degrees at this point */        psDefn->ProjParm[0] = dfNatOriginLat;        psDefn->ProjParmId[0] = ProjFalseOriginLatGeoKey;        psDefn->ProjParm[1] = dfNatOriginLong;        psDefn->ProjParmId[1] = ProjFalseOriginLongGeoKey;        psDefn->ProjParm[2] = dfStdParallel1;        psDefn->ProjParmId[2] = ProjStdParallel1GeoKey;        psDefn->ProjParm[3] = dfStdParallel2;        psDefn->ProjParmId[3] = ProjStdParallel2GeoKey;        psDefn->ProjParm[5] = dfFalseEasting;        psDefn->ProjParmId[5] = ProjFalseEastingGeoKey;        psDefn->ProjParm[6] = dfFalseNorthing;        psDefn->ProjParmId[6] = ProjFalseNorthingGeoKey;        psDefn->nParms = 7;        break;/* -------------------------------------------------------------------- */      case CT_AlbersEqualArea:      case CT_EquidistantConic:/* -------------------------------------------------------------------- */        if( GTIFKeyGet(psGTIF, ProjStdParallel1GeoKey,                        &dfStdParallel1, 0, 1 ) == 0 )            dfStdParallel1 = 0.0;        if( GTIFKeyGet(psGTIF, ProjStdParallel2GeoKey,                        &dfStdParallel2, 0, 1 ) == 0 )            dfStdParallel1 = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLongGeoKey,                        &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjCenterLongGeoKey,                           &dfNatOriginLong, 0, 1 ) == 0 )            dfNatOriginLong = 0.0;        if( GTIFKeyGet(psGTIF, ProjNatOriginLatGeoKey,                        &dfNatOriginLat, 0, 1 ) == 0            && GTIFKeyGet(psGTIF, ProjFalseOriginLatGeoKey,                           &dfNatOriginLat, 0, 1 ) == 0    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -