项目中用到经纬度相互转换,自己写感觉太麻烦,查询后发现利用geos和proj4可以完成坐标转换,现在记录一下方便以后自己查询。

//经纬度转utm坐标

int convert_lonlat_utm(const new3s_PointXYZ &lon_lat_coord, new3s_PointXYZ &utm_coord)

{

OGRSpatialReference *RefSource = new OGRSpatialReference;

RefSource->SetWellKnownGeogCS("WGS84");

OGRSpatialReference *RefTarget = new OGRSpatialReference;

RefTarget = RefSource->CloneGeogCS();

int utmzone = lon_lat_coord.get_x() / 6 + 31;

RefTarget->SetProjCS("UTM(WGS84) in northern hemisphere.");

RefTarget->SetUTM(utmzone, TRUE);

OGRCoordinateTransformation *poTransform = OGRCreateCoordinateTransformation(RefSource, RefTarget);

double tempX = lon_lat_coord.get_x();

double tempY = lon_lat_coord.get_y();

double tempZ = lon_lat_coord.get_z();

poTransform->Transform(1, &tempX, &tempY, &tempZ);

utm_coord.set_x(tempX);

utm_coord.set_y(tempY);

utm_coord.set_z(tempZ);

return utmzone;

}

这里返回的是条带数,因为在下面UTM坐标转经纬度的时需要条带数。

//utm转经纬度

void convert_utm_lonlat(const new3s_PointXYZ &utm_coord, const int &utmzone, new3s_PointXYZ &lon_lat_coord)

{

//建立投影坐标系到经纬度坐标系的转换

OGRSpatialReference *RefSource = new OGRSpatialReference;

RefSource->SetWellKnownGeogCS("WGS84");

RefSource->SetProjCS("UTM(WGS84) in northern hemisphere.");

RefSource->SetUTM(utmzone, TRUE);

OGRSpatialReference *RefTarget = new OGRSpatialReference;

RefTarget = RefSource->CloneGeogCS();

OGRCoordinateTransformation *poTranform = OGRCreateCoordinateTransformation(RefSource, RefTarget);

OGRPoint *poPoint = new OGRPoint();

double tempx = utm_coord.get_x();

double tempy = utm_coord.get_y();

double tempz = utm_coord.get_z();

poTranform->Transform(1, &tempx, &tempy, NULL);

lon_lat_coord = new3s_PointXYZ(tempx, tempy, tempz);

}

java utm坐标转经纬度,utm坐标和经纬度相互转换相关推荐

  1. PHP墨卡托坐标转经纬度,墨卡托坐标与经纬度相互转换的方法

    最近用到了墨卡托坐标转换经纬度的需求,原理什么的不想多说,需要的可以查看这里: 麦卡托投影法 Web Mercator 经纬度转Wev墨卡托 版本1 dvec3 CMathEngine::lonLat ...

  2. 平面投影坐标转经纬度坐标

    平面投影坐标转经纬度坐标 本人在进行开发时,使用geotools的GeoTiffReader类读取卫星影像的顶点坐标,得到的是平面坐标,单位是米,打开arcGIS,加载影像,右下角会有坐标,在视图-& ...

  3. 火星坐标、百度坐标、WGS-84坐标相互转换及墨卡托投影坐标转经纬度JavaScript版...

    转自:https://www.cnblogs.com/fwc1994/p/5884115.html 火星坐标.百度坐标.WGS-84坐标相互转换及墨卡托投影坐标转经纬度JavaScript版 火星坐标 ...

  4. 【转】火星坐标、百度坐标、WGS-84坐标相互转换及墨卡托投影坐标转经纬度JavaScript版...

    原文地址:https://www.cnblogs.com/fwc1994/p/5884115.html 火星坐标 火星坐标是国家测绘局为了国家安全在原始坐标的基础上进行偏移得到的坐标,基本国内的电子地 ...

  5. CAD 坐标转经纬度(Arcgis)

    CAD 坐标转经纬度(Arcgis) 1.CAD坐标识别 工具-坐标信息识别,手动复制输出到excel表,格式大致如下: 2.Arcgis 转换 文件-添加数据-添加XY数据,找到对应的excel表格 ...

  6. python实现2000投影坐标转经纬度

    引言 常用的WGS84投影坐标转经纬度可用通用的pyproj库来转换,而2000坐标 测试用这个库是没法转换的 而WGS84和其它坐标系(gcj02.bd09)之间的转换可以通过ChangeCoord ...

  7. 墨卡托坐标以及 墨卡托坐标转经纬度

    Google Maps.Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而 ...

  8. 墨卡托坐标以及墨卡托坐标转经纬度

    Google Maps.Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而 ...

  9. 利用地址转经纬度获取坐标

    在获取poi数据的过程中,我们无论是调用api还是在规划云这种类似接口的服务工具上获取poi点,我们都是通过关键字来获取的 但是我们有些时候获取的poi常常不是一两个关键字可以找到的,如房地产楼盘,以 ...

  10. arcgis公里坐标转经纬度_高德api交通态势爬取及可视化利用 python+arcgis

    近日做项目,有一部分要分析研究范围内的交通运行情况.传统的方法是要去现场调研数车,通过交通量和道路通行能力来计算道路的服务水平.但是因为疫情原因,不想外出,想要利用其它方法来获得区域的交通运行水平.首 ...

最新文章

  1. mongodb 设置远程可以访问
  2. 构建并购重组服务链 蚁合拟推出三大数据平台
  3. img引Linux的绝对路径,什么是绝对路径和相对路径
  4. PHP基础学习之数组使用要点
  5. DotNetty 实现 Modbus TCP 系列 (二) ModbusFunction 类图及继承举例
  6. java scrollpane源码_JScrollPane用法 Java实例
  7. php 证书 paypal,php – Paypal访问 – SSL证书:无法获取本地颁发者证书
  8. 性能测试学习09_场景设计(一)
  9. 让你从入门到精通CASS软件教程免费下载
  10. 合并两个有序数组 Go语言
  11. 因子分析python代码_用Python实现因子分析
  12. windows服务获取登录用户名
  13. hp服务器系统时间一直变慢,怎么解决hp1010 win7打印机打印速度变慢的方法
  14. redis缓存hset, hget, hPutAll
  15. 最新发布!2021软科中国大学排名
  16. 计算机专业论文的创新点怎么说,计算机专业毕业生如何写毕业论文
  17. keras指定gpu_keras-gpu的安装与配置
  18. 笔记本电脑黑屏 笔记本开机黑屏 笔记本黑屏怎么办
  19. 关系模式的完整性约束
  20. java单根结构_Java语言程序设计中的单根结构

热门文章

  1. 学材料化学想转行计算机,2020大学最没用的十大专业-十大劝退专业(转专业必看)...
  2. JSON-RPC是什么东西
  3. 使用ffmpeg解析mp4文件得到音频和视频数据
  4. win7,win8系统为什么灵格斯老与office,adobe等软件冲突,怎么解决
  5. android开源系统brvah,Brvah——一个强大的Adapter框架
  6. maven本地仓库地址更改
  7. 电信吉比特光纤猫虚拟服务器设置,光猫设置教程 华为光猫设置教程
  8. 电子签章引入jar包
  9. Android GifImageView加载Gif图片及原理
  10. 计算时间间隔 日历牌上的 周数