logo资料库

基于Postgresql和PostGIS实现火星坐标系、百度坐标系、WGS84坐标系、CGCS2000坐标系互转.pdf

第1页 / 共1页
资料共1页,全文预览结束
基于基于Postgresql和和PostGIS实现火星坐标系、百度坐标系、 标系互转 标系互转 实现火星坐标系、百度坐标系、WGS84坐标系、 坐标系、CGCS2000坐坐 背景背景 最近有一个需求,需要将WGS84转成火星坐标系。个人觉得在代码中逐个点坐标进行转换,太麻烦,而且效率低。PostGIS的st_transform虽然可以进行坐标转换,但是不支持国内 这些坐标系。最后在网上找了有人编写的一个***pg-coordtransform ***库,可以在火星坐标系、百度坐标系、WGS84坐标系、CGCS2000坐标系之间互转,部署也很简单。 使用过程 使用过程 部署PostGIS(已有直接下一步) 直接把github )上的sql拿下来运行一下,然后就可以用了 -- 如果转换后结果为null,查看geom的srid是否为4326或者4490 WGS84转GCJ02 select geoc_wgs84togcj02(geom) from test_table GCJ02转WGS84 select geoc_gcj02towgs84(geom) from test_table WGS84转BD09 select geoc_wgs84tobd09(geom) from test_table BD09转WGS84 select geoc_bd09towgs84(geom) from test_table CGCS2000转GCJ02 select geoc_cgcs2000togcj02(geom) from test_table GCJ02转CGCS2000 select geoc_gcj02tocgcs2000(geom) from test_table CGCS2000转BD09 select geoc_cgcs2000tobd09(geom) from test_table BD09转CGCS2000 select geoc_bd09tocgcs2000(geom) from test_table GCJ02转BD09 select geoc_gcj02tobd09(geom) from test_table BD09转GCJ02 select geoc_bd09togcj02(geom) from test_table 使用使用demo select st_asgeojson(geoc_wgs84togcj02(st_setsrid(shape,4326))) from dt_cbdk where shape is not null limit 1 原来的坐标系统必须为4326或4490,否在转换结果为null 可以使用st_setsrid()给空间字段添加srid 作者:GIS开发者
分享到:
收藏