2013-03-07 2 views
0

포인트 지오메트리를 생성하는 다음 스크립트가 있습니다. 이 점 지오메트리를 [258432.79138201929, 1001957.4394514663]처럼 보이는 좌표 만 포함 된 목록으로 변환하려면 어떻게해야합니까?점 지오메트리를 목록으로 변환

>>> import ogr 
>>> driver = ogr.GetDriverByName('ESRI Shapefile') 
>>> pointshp = driver.Open('U:/My Documents/Tool/shp/point.shp', 0) 

>>> pointlyr = pointshp.GetLayer() 

>>> point_geom = point.GetGeometryRef() 

>>> print point_geom 

POINT (258432.79138201929 1001957.4394514663) 
+0

'포인트'란 무엇입니까? 'point.GetGeometryRef()'와 마찬가지로 – askewchan

답변

2

일반적으로 점 객체는 xyz 좌표를가집니다.

[point_geom.x, point_geom.y] 
+0

'1' 또는'l'입니까? 에크! http://www.python.org/dev/peps/pep-0008/#names-to-avoid – askewchan

+0

thx, 단지 예일뿐입니다. – monkut

0

(즉, 문자열) point_geom 그대로 "POINT (258432.79138201929 1001957.4394514663)"입니다 가정

당신은 할 수 있습니다 :

map(float,point_geom[7:-1].split(' ')) 

point_geom[7:-1]"258432.79138201929 1001957.4394514663" point_geom[7:-1].split(' ')['258432.79138201929', '1001957.4394514663'] map(float,point_geom[7:-1].split(' ')) 수레에 문자열을 강제 변환 제공 제공

+1

아마도 문자열이 아닙니다. 'print'는'repr'와 같지 않습니다. – askewchan

+0

그래, 좋은 지적이야! – IamAlexAlright