【问题标题】:Geodjango: importing data from OSGB_1936, displaying in WGS84?Geodjango:从 OSGB_1936 导入数据,在 WGS84 中显示?
【发布时间】:2023-03-17 16:35:02
【问题描述】:

我有一些多边形数据保存在 PostGIS 数据库中,投影 SRID 为 27700。

geom = models.MultiPolygonField(srid=27700)

我想在 OpenStreetMap 上显示形状,即使用 SRID 900913(我想?)。

那么,两个问题:

  1. 如何将下面的代码更改为 具有正确 SRID 的输出 开放街图?
  2. 如何更改 下面的 Django 代码给我一个不错的 json 对象,准备显示为 多边形?
area = get_object_or_404(soa.objects, code=my_code)
polygon = area.geom
return render_to_response('area.html', { 'area': area }, context_instance = RequestContext(request))

抱歉,如果这个问题没有意义 - 我对 GeoDjango 很陌生。

【问题讨论】:

标签: mapping openstreetmap geodjango proj4js proj


【解决方案1】:

使用 GeoDjango,使用 transform 更改几何的投影,使用 jsonwkt 进行输出。它应该很简单:

polygon.transform(900913)
return render_to_response('area.html', {'area': area, 'polygon': polygon.json})

json 方法将为您提供 GeoJSON;如果您愿意,可以使用wkt。像 OpenLayers 这样的地图 API 也可以处理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-21
    • 2010-10-08
    • 2015-01-01
    • 1970-01-01
    • 2021-02-19
    • 2018-11-03
    • 2015-09-14
    • 2014-11-19
    相关资源
    最近更新 更多