2012年8月22日水曜日

postGIS:座標指定で流域取得

流域界・非集水域(面)のデータに対して座標指定をする。















指定された地点にある単位流域コードを取得して
その単位流域コードを元に単位流域台帳(表)を検索し上流コードを取得する。


単位流域台帳(表)の上流域コードをリストに格納する。


取得した上流域コード(115)に対して更に上流域コードを調べる。




上流域コードが無くなるまで繰り返す。



<<<python>>>
### 流域界・非集水域(面)のデータに対して座標指定して流域コードを取得する###
sql = "SELECT W12_001,W12_002,W12_003 FROM 流域界・非集水域(面)
    WHERE distance_sphere(the_geom,GeomFromText('POINT("+ str(range_x) +" "+ str(range_y) +")',-1)) < 1;"
cur.execute(sql)
row = cur.fetchone()
a = row[1]
b = row[2]
 

### 上流コードを検索する ###    
sql = "select * from 河川台帳 where watersys_cd = '"+ a +"' and bashin_cd = '"+ b +"';"
cur.execute(sql)
row = cur.fetchall()

for c in row:
   list_wk=[int(c[3]),int(c[4]),int(c[5]),int(c[6]),int(c[7]),int(c[8]),int(c[9]),int(c[10]),int(c[11]),int(c[12]),int(c[13]),int(c[14]),

                int(c[15]),int(c[16]),int(c[17])]
           
    

0 件のコメント:

コメントを投稿