首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostGIS Shapefile Projections (SRID)导致坐标错误

PostGIS Shapefile Projections (SRID)导致坐标错误
EN

Stack Overflow用户
提问于 2020-10-28 00:47:06
回答 1查看 182关注 0票数 0

我真的需要一些指导。我是PostGIS的新手,在寻找答案的过程中一无所获。

我用几个不同的投影(EPSG/SRID)引入了不同的shapefile。我从.prj文件中提取GEOGCS,使用https://developers.arcgis.com/javascript/3/jshelp/gcs.html查找SRID号,进行匹配,然后使用shp2pgsql -s导入它们。这是非常直接的。一般来说,它工作得很好。其他时候,就没那么多了。

当它不工作时,我得到的坐标是153009.914,5497499.47 (显然不在地图上)。我认为这是一个简单的投影问题,我没有使用正确的SRID。

代码语言:javascript
复制
.prj:
PROJCS["EO_Lambert_Conformal_Conic",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-84.0],PARAMETER["Standard_Parallel_1",44.5],PARAMETER["Standard_Parallel_2",54.5],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]

导入:# shp2pgsql -c -s 4269 -W UTF-8 -I /Shape/ont/DIVISION.shp ont | psql -U postgres -d shape

结构:

代码语言:javascript
复制
   Column   |            Type             | Collation | Nullable |                  Default                  
------------+-----------------------------+-----------+----------+-------------------------------------------
 gid        | integer                     |           | not null | nextval('ont_gid_seq'::regclass)
 objectid   | integer                     |           |          | 
 ed_id      | numeric                     |           |          | 
 pd_number  | numeric                     |           |          | 
 pd_label   | character varying(64)       |           |          | 
 ed_name_en | character varying(64)       |           |          | 
 ed_name_fr | character varying(64)       |           |          | 
 shape_leng | numeric                     |           |          | 
 shape_area | numeric                     |           |          | 
 geom       | geometry(MultiPolygon,4269) |           |          | 
Indexes:
    "ont_pkey" PRIMARY KEY, btree (gid)
    "ont_geom_idx" gist (geom)

SQL:select ST_Astext(geom) AS coordinates FROM ont limit 1;

结果:**MULTIPOLYGON((574380.4001 4808575.0399,574434.7803 4808545.44,574496.2521 4808512.3351,.*等

我做错了什么?

感谢你的见解!

EN

回答 1

Stack Overflow用户

发布于 2020-10-28 01:26:07

简化一点,你使用的SRID是一个基准( geogCS,地理坐标系),也就是对“圆形”地球的描述。单位是度,所有坐标都是+- 180 / +- 90。

最重要的是,有一个将坐标转换为平面的投影。在您的例子中,这是安大略省选举(EO_Lambert_Conformal_Conic)的Lambert Conformal的一个特例,单位是米。

使用这个投影名称,我们可以发现要使用的SRID是7149

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64559135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档