2010-07-26 12 views
1

은 내가, 즉 SRID 900913와 (나는 생각?) OpenStreetMap에의 모양을 표시 할 프로젝션 SRID 27700.Geodjango : OSGB_1936에서 데이터 가져 오기, WGS84에 표시 하시겠습니까?

geom = models.MultiPolygonField(srid=27700) 

와 PostGIS와 데이터베이스에 저장된 일부 폴리곤 데이터가 있습니다.

그래서, 두 가지 질문 :

  1. 어떻게 OpenStreetMap에 대한 올바른 SRID와 출력에 아래의 코드를 변경합니까?
  2. Django 코드를 객체 인 폴리곤으로 표시 할 수 있도록 아래 코드를 바꿀 수 있습니까?
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 꽤 새로운 해요.

+0

사과 - 제 2 코드 추출물을 올바르게 포맷 할 수 없습니다. 기묘한. – AP257

+0

어딘가에서 서식을 버그로 보입니다 : http://meta.stackexchange.com/questions/58039/code-not-formatted-in-this-answer – skaffman

답변

1

GeoDjango를 사용하면 transform을 사용하여 지오메트리의 투영을 변경하고 json 또는 wkt을 출력합니다. 그것은만큼 단순해야한다 : 당신에게 GeoJSON을 줄 것이다

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

json 방법; 원하는 경우 wkt을 사용할 수 있습니다. OpenLayers와 같은지도 API도이 중 하나를 처리합니다.