Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何存储级联_并集的坐标_Python_Arrays_Shapely - Fatal编程技术网

Python 如何存储级联_并集的坐标

Python 如何存储级联_并集的坐标,python,arrays,shapely,Python,Arrays,Shapely,我有一段代码,它使用python中shapely中的函数cascaded_union()执行一组三角形的并集 print cascaded_union(triangle) 当我打印它时,它会给出以下输出:- POLYGON ((211 55, 0 0, 150 204, 185 216, 215 159, 224 132, 211 55)) 如何将这些点存储在具有x和y坐标的二维阵列中?您是否特别需要将几何体存储为二维阵列?例如,是否可以选择使用众所周知的文本(WKT)格式存储几何体,该格式

我有一段代码,它使用python中shapely中的函数
cascaded_union()
执行一组三角形的并集

print cascaded_union(triangle)
当我打印它时,它会给出以下输出:-

POLYGON ((211 55, 0 0, 150 204, 185 216, 215 159, 224 132, 211 55))

如何将这些点存储在具有
x
y
坐标的二维阵列中?

您是否特别需要将几何体存储为二维阵列?例如,是否可以选择使用众所周知的文本(WKT)格式存储几何体,该格式很容易通过shapely生成,例如,
my_polygon.WKT
,然后以文本或CSV格式存储该输出?以后可以使用shapely的
wkt.loads()
方法重新加载此几何体。尽管您也可以将WKT存储在诸如Redis之类的键值存储中

如果首选二进制,则可以类似地使用WKB功能。但是,如果您打算做很多这类事情,那么可以考虑使用一个成熟的GIS数据库,如PostGIS,它可以在本地处理此类几何体类型

但是,如果特别需要二维阵列,则首先需要以shapely方式访问多边形的外部线性化组件,然后将其强制转换为numpy阵列。换言之:

from shapely import geometry
import numpy as np
my_poly = cascaded_union(triangle)
my_2d_array = np.array(my_poly.exterior)
print(my_2d_array)
您需要对多边形内的任何内部组件/孔(如果存在)重复此操作