def __init__(self, params, zField='z'):
ds = ogr.Open(connString)
layer = ds.ExecuteSQL(OGR_SQL.format(*params))
extent = layer.GetExtent()
self.proj = layer.GetSpatialRef()
self.geotransform = []
self.x = []
self.y = []
self.vals = []
xMin, xMax, yMin, yMax = extent
xSize, ySize = abs(xMax - xMin) / 0.0003, abs(yMin - yMax) / 0.0003
self.size = xSize, ySize
self.geotransform = [xMin, (xMax - xMin) / xSize, 0,
yMax, 0, (yMin - yMax) / ySize]
feature = layer.GetNextFeature()
if feature.GetFieldIndex(zField) == -1:
raise Exception('zField is not valid: ' + zField)
while feature:
geometry = feature.GetGeometryRef()
self.x.append(geometry.GetX())
self.y.append(geometry.GetY())
self.vals.append(feature.GetField(zField))
feature = layer.GetNextFeature()
ds.Destroy()
pgrouting_distance_isobands.py 文件源码
python
阅读 19
收藏 0
点赞 0
评论 0
评论列表
文章目录