0
点赞
收藏
分享

微信扫一扫

C++ gdal 地心坐标系转wgs84坐标系

诗与泡面 2021-09-21 阅读 134
public开源
#include<iostream>
#include"gdal_priv.h"
using namespace std;

int main() {

    //CPLSetConfigOption("GDAL_DATA", "gdaldata");

    //OGRSpatialReference* pMySR = new OGRSpatialReference;
    //pMySR->SetWellKnownGeogCS("EPSG:4326");

    //OGRSpatialReference spatialReference;
    //spatialReference.importFromEPSG(4610);
    //char* pszWKT = nullptr;
    //spatialReference.exportToPrettyWkt(&pszWKT);


    OGRSpatialReference oSourceSRS, oTargetSRS;
    OGRCoordinateTransformation* poCT;
    double x, y, z;

    oTargetSRS.importFromEPSG(4326);
    oSourceSRS.importFromProj4("+proj=geocent +datum = WGS84 +units = m +no_defs");
    char* pszWKT = nullptr;
    oSourceSRS.exportToPrettyWkt(&pszWKT);
    cout << pszWKT << endl;

    poCT = OGRCreateCoordinateTransformation(&oSourceSRS, &oTargetSRS);
    x = -2253592.8895144262;
    y = 5018382.544662854;
    z = 3216871.543521031;
    if (poCT == NULL || !poCT->Transform(1, &x, &y, &z))
        printf("Transformation failed.\n");
    else
        printf("%0.15f,%0.15f\n", x, y);


    return 0;
}
举报

相关推荐

0 条评论