Postgis 数据库坐标系偏移转换

这篇博客介绍了如何在PostGIS数据库中进行坐标系偏移转换,包括动态生成新字段和使用SQL语句进行转换。提供了支持WGS84、bd-09和gcj-02坐标系的转换工具,适用于点、线、面的批量转换。转换要求原始数据为二维且坐标系为epsg:4326,对于百度墨卡托坐标转换,数据源需为3857。博客还分享了两个sql文件供下载使用。

Postgis 数据库坐标系偏移转换

转自Github,用于学习使用

直接动态生成新字段

Github: https://github.com/FreeGIS/Postgis_Coordinate_Transform

支持WGS84与bd-09,gcj-02坐标系,百度经纬度与百度墨卡托之间互转。
支持点线面多点多线多面的复杂图形批量转换。
支持对整个表批处理转换。

约束:

要求转换的表是基于PostGIS创建的空间关系表 示例支持的表:
create table point_test(
  gid serial primary key,
  name text,
  geom geometry(Point,4326)
);
不支持的表:

create table point_test(
  gid serial primary key,
  name text,
  lon numeric,   --经度
  lat numeric     --纬度
);
不支持的表是普通关系表,非空间图形表。

要求转换的图形必须是二维图形 当前暂不支持三维或者多维,如带Z值的高程,带M值的测量值等

转换表图形坐标系必须是epsg:4326 除了将百度墨卡托坐标转百度经纬度外,其他转换方式,必须保证转换表的坐标系是4326,其他坐标系,需要用户使用ST_Transform函数,将其数据先转到4326坐标系下,再使用该工具。百度墨卡托坐标转百度经纬度转换,数据源必须是3857的。

图形数据是点线面多点多线多面 仅仅支持Point,LineString,Polygon,MultiPoint,MultiLineString,MultiPolygon六种明确类型。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值