python-3.x - 如何根据多边形的方向创建网格
问题描述
如何根据具有一定间隔的多边形的方向制作网格,其中多边形始终具有 4 个不同方向的点数据,例如我的多边形如下所示:
x1 = np.array([50,0,150,200,50])
y1 = np.array([10,-50,-60,0,10])
我想像这样制作网格:
解决方案
您可以对每个坐标使用插值函数:
from scipy.interpolate import interp2d
x = np.array([0, 1], dtype=np.float)
y = np.array([0, 1], dtype=np.float)
现在我们需要创建插值函数,以便在小单位正方形 (0,1)x(0,1) 上得到我们想要的结果。
zx = np.array([[0, 150],[50, 200]])
fx = interp2d(x, y, zx)
fx(0.5, 0.5)
做同样的zy
事情来获得y
你的多边形内的坐标。
推荐阅读
- bash - 运行脚本文件以生成字体
- php - 为什么在 wordpress 中使用 get_var 获取的值没有立即更新?
- python - 是否可以在 Odoo V13 及更高版本中通过自动操作发送短信?
- c# - XmlException:ASP .NET Core 中缺少根元素
- javascript - 如何在 javascript 中将变量用作函数?
- jquery - Jquery 轻松自动完成样式
- c++ - static_assert in production code header: bad for compilation time?
- php - 读取数组的第一条记录而不是 Laravel 中的第一个字符
- c++ - 从包含结构的 unique_ptr 创建一个 shared_ptr
- python - Pandas Dataframe 根据条件和使用原始值替换字符串值