我想让地球上的海岸线的多边形或顶点在Blender中操作(并且在Python中独立),但我想避免在我的计算机上安装到多个Pythons中的每一个。基本上,做一次看起来有点棘手,更不用说四次了。
我想要的只是海岸线轮廓上的点,比如1或甚至10公里(1000米或10000米)的分辨率。我假设它们将处于纬度/经度,在这种情况下,我只会在空间中转换为x,y,z。
我已经下载了底图 - 有什么方法可以直接在data
文件夹中访问轮廓吗?
备用数据源也是可以接受的。
答案 0 :(得分:0)
由于GIS.stackexchange here
中的答案,我找到了一个不涉及Basemaps等的简单解决方案。我在这里重新发布一些信息:
@ artwork21的答案是接受的答案。我只是添加一些其他人可能会觉得有用的补充信息。
我从答案中提供的链接下载了一些海岸线数据。在这个例子中,我使用了来自here的物理矢量数据。然后阅读pyshp我只需复制/粘贴脚本shapefile.py,然后执行以下操作:
coast = Reader("ne_50m_coastline") # defined in shapefile.py
plt.figure()
for shape in coast.shapes()[:20]: # first 20 shapes out of 1428 total
x, y = zip(*shape.points)
plt.plot(x, y)
plt.xlim(110, 180)
plt.ylim(-40, 20)
plt.savefig("Australia Australia Australia Australia we love ya' Amen")
# https://www.youtube.com/watch?v=_f_p0CgPeyA&feature=youtu.be&t=121
plt.show()