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

📄 mitab_spatialref.cpp

📁 用于读取TAB、MIF、SHP文件的类
💻 CPP
📖 第 1 页 / 共 5 页
字号:
         * NonEarth ... we return with an empty SpatialRef.  Eventually         * we might want to include the units, but not for now.         *-------------------------------------------------------------*/      case 0:        m_poSpatialRef->SetLocalCS( "Nonearth" );        break;        /*--------------------------------------------------------------         * lat/long .. just add the GEOGCS later.         *-------------------------------------------------------------*/      case 1:        break;        /*--------------------------------------------------------------         * Cylindrical Equal Area         *-------------------------------------------------------------*/      case 2:        m_poSpatialRef->SetCEA( sTABProj.adProjParams[1],                                sTABProj.adProjParams[0],                                sTABProj.adProjParams[2],                                sTABProj.adProjParams[3] );        break;        /*--------------------------------------------------------------         * Lambert Conic Conformal         *-------------------------------------------------------------*/      case 3:        m_poSpatialRef->SetLCC( sTABProj.adProjParams[2],                                sTABProj.adProjParams[3],                                sTABProj.adProjParams[1],                                sTABProj.adProjParams[0],                                sTABProj.adProjParams[4],                                sTABProj.adProjParams[5] );        break;        /*--------------------------------------------------------------         * Lambert Azimuthal Equal Area         *-------------------------------------------------------------*/      case 4:      case 29:        m_poSpatialRef->SetLAEA( sTABProj.adProjParams[1],                                 sTABProj.adProjParams[0],                                 0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Azimuthal Equidistant (Polar aspect only)         *-------------------------------------------------------------*/      case 5:      case 28:        m_poSpatialRef->SetAE( sTABProj.adProjParams[1],                               sTABProj.adProjParams[0],                               0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Equidistant Conic         *-------------------------------------------------------------*/      case 6:        m_poSpatialRef->SetEC( sTABProj.adProjParams[2],                               sTABProj.adProjParams[3],                               sTABProj.adProjParams[1],                               sTABProj.adProjParams[0],                               sTABProj.adProjParams[4],                               sTABProj.adProjParams[5] );        break;        /*--------------------------------------------------------------         * Hotine Oblique Mercator         *-------------------------------------------------------------*/      case 7:        m_poSpatialRef->SetHOM( sTABProj.adProjParams[1],                                sTABProj.adProjParams[0],                                 sTABProj.adProjParams[2],                                90.0,                                 sTABProj.adProjParams[3],                                sTABProj.adProjParams[4],                                sTABProj.adProjParams[5] );        break;        /*--------------------------------------------------------------         * Transverse Mercator         *-------------------------------------------------------------*/      case 8:        m_poSpatialRef->SetTM( sTABProj.adProjParams[1],                               sTABProj.adProjParams[0],                               sTABProj.adProjParams[2],                               sTABProj.adProjParams[3],                               sTABProj.adProjParams[4] );        break;        /*----------------------------------------------------------------         * Transverse Mercator,(modified for Danish System 34 Jylland-Fyn)         *---------------------------------------------------------------*/      case 21:         m_poSpatialRef->SetTMVariant( SRS_PT_TRANSVERSE_MERCATOR_MI_21,                                       sTABProj.adProjParams[1],                                       sTABProj.adProjParams[0],                                       sTABProj.adProjParams[2],                                       sTABProj.adProjParams[3],                                       sTABProj.adProjParams[4] );         break;        /*--------------------------------------------------------------         * Transverse Mercator,(modified for Danish System 34 Sjaelland)         *-------------------------------------------------------------*/      case 22:         m_poSpatialRef->SetTMVariant( SRS_PT_TRANSVERSE_MERCATOR_MI_22,                                       sTABProj.adProjParams[1],                                       sTABProj.adProjParams[0],                                       sTABProj.adProjParams[2],                                       sTABProj.adProjParams[3],                                       sTABProj.adProjParams[4] );         break;        /*----------------------------------------------------------------         * Transverse Mercator,(modified for Danish System 34/45 Bornholm)         *---------------------------------------------------------------*/      case 23:         m_poSpatialRef->SetTMVariant( SRS_PT_TRANSVERSE_MERCATOR_MI_23,                                       sTABProj.adProjParams[1],                                       sTABProj.adProjParams[0],                                       sTABProj.adProjParams[2],                                       sTABProj.adProjParams[3],                                       sTABProj.adProjParams[4] );         break;        /*--------------------------------------------------------------         * Transverse Mercator,(modified for Finnish KKJ)         *-------------------------------------------------------------*/      case 24:         m_poSpatialRef->SetTMVariant( SRS_PT_TRANSVERSE_MERCATOR_MI_24,                                       sTABProj.adProjParams[1],                                       sTABProj.adProjParams[0],                                       sTABProj.adProjParams[2],                                       sTABProj.adProjParams[3],                                       sTABProj.adProjParams[4] );         break;        /*--------------------------------------------------------------         * Albers Conic Equal Area         *-------------------------------------------------------------*/      case 9:        m_poSpatialRef->SetACEA( sTABProj.adProjParams[2],                                 sTABProj.adProjParams[3],                                 sTABProj.adProjParams[1],                                 sTABProj.adProjParams[0],                                 sTABProj.adProjParams[4],                                 sTABProj.adProjParams[5] );        break;        /*--------------------------------------------------------------         * Mercator         *-------------------------------------------------------------*/      case 10:        m_poSpatialRef->SetMercator( 0.0, sTABProj.adProjParams[0],                                     1.0, 0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Miller Cylindrical         *-------------------------------------------------------------*/      case 11:        m_poSpatialRef->SetMC( 0.0, sTABProj.adProjParams[0],                               0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Robinson         *-------------------------------------------------------------*/      case 12:        m_poSpatialRef->SetRobinson( sTABProj.adProjParams[0],                                     0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Mollweide         *-------------------------------------------------------------*/      case 13:        m_poSpatialRef->SetMollweide( sTABProj.adProjParams[0],                                      0.0, 0.0 );        /*--------------------------------------------------------------         * Eckert IV         *-------------------------------------------------------------*/      case 14:        m_poSpatialRef->SetEckertIV( sTABProj.adProjParams[0], 0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Eckert VI         *-------------------------------------------------------------*/      case 15:        m_poSpatialRef->SetEckertVI( sTABProj.adProjParams[0], 0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Sinusoidal         *-------------------------------------------------------------*/      case 16:        m_poSpatialRef->SetSinusoidal( sTABProj.adProjParams[0],                                       0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Gall Stereographic         *-------------------------------------------------------------*/      case 17:        m_poSpatialRef->SetGS( sTABProj.adProjParams[0], 0.0, 0.0 );        break;                /*--------------------------------------------------------------         * New Zealand Map Grid         *-------------------------------------------------------------*/      case 18:        m_poSpatialRef->SetNZMG( sTABProj.adProjParams[1],                                 sTABProj.adProjParams[0],                                 sTABProj.adProjParams[2],                                 sTABProj.adProjParams[3] );        break;        /*--------------------------------------------------------------         * Lambert Conic Conformal (Belgium)         *-------------------------------------------------------------*/      case 19:        m_poSpatialRef->SetLCCB( sTABProj.adProjParams[2],                                 sTABProj.adProjParams[3],                                 sTABProj.adProjParams[1],                                 sTABProj.adProjParams[0],                                 sTABProj.adProjParams[4],                                 sTABProj.adProjParams[5] );        break;        /*--------------------------------------------------------------         * Stereographic         *-------------------------------------------------------------*/      case 20:      case 31: /* this is called Double Stereographic, whats the diff? */        m_poSpatialRef->SetStereographic( sTABProj.adProjParams[1],                                          sTABProj.adProjParams[0],                                          sTABProj.adProjParams[2],                                          sTABProj.adProjParams[3],                                          sTABProj.adProjParams[4] );        break;        /*--------------------------------------------------------------         * Swiss Oblique Mercator / Cylindrical         *-------------------------------------------------------------*/      case 25:        m_poSpatialRef->SetSOC( sTABProj.adProjParams[1],                                sTABProj.adProjParams[0],                                sTABProj.adProjParams[2],                                sTABProj.adProjParams[3] );        break;        /*--------------------------------------------------------------         * Regional Mercator (regular mercator with a latitude).         *-------------------------------------------------------------*/      case 26:        m_poSpatialRef->SetMercator( sTABProj.adProjParams[1],                                     sTABProj.adProjParams[0],                                     1.0, 0.0, 0.0 );        break;        /*--------------------------------------------------------------         * Polyconic         *-------------------------------------------------------------*/      case 27:        m_poSpatialRef->SetPolyconic( sTABProj.adProjParams[1],                                      sTABProj.adProjParams[0],                                      sTABProj.adProjParams[2],                                      sTABProj.adProjParams[3] );        break;        /*--------------------------------------------------------------         * Cassini/Soldner         *-------------------------------------------------------------*/      case 30:        m_poSpatialRef->SetCS( sTABProj.adProjParams[1],                               sTABProj.adProjParams[0],                               sTABProj.adProjParams[2],                               sTABProj.adProjParams[3] );        break;      default:        break;    }    /*-----------------------------------------------------------------     * Collect units definition.

⌨️ 快捷键说明

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