pgrouting_distance_isobands.py 文件源码

python
阅读 16 收藏 0 点赞 0 评论 0

项目:pypgroutingloader 作者: danieluct 项目源码 文件源码
def __init__(self, params, zField='z'):
        psycopg2.extensions.register_type(psycopg2.extensions.UNICODE)
        psycopg2.extensions.register_type(psycopg2.extensions.UNICODEARRAY)        
        connection = psycopg2.connect(**connParams)

        self.geotransform = []        
        self.x = []
        self.y = []
        self.vals = []

        cursor = connection.cursor(cursor_factory=DictCursor)
        cursor.execute(PG_SQL, params)
        xMin, xMax, yMin, yMax = 91, -91, 181, -181
        for record in cursor:
            # print record['txt_geom']
            # lat, lon = [float(x) for x in record['txt_geom'].split(' ')]
            y = record['y']
            x = record['x']

            if yMin > y:
                yMin = y
            if yMax < y:
                yMax = y

            if xMin > x:
                xMin = x
            if xMax < x:
                xMax = x

            self.x.append(x)
            self.y.append(y)
            self.vals.append(record[zField])
        cursor.close()
        connection.close()
        # print xMin, xMax, yMin, yMax
        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]

        self.proj = SpatialReference()
        self.proj.ImportFromEPSG(4326)
        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]
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号