Python 用dxfgrabber 读取到spline ,现在需要把这个样条曲线画出来。
不才,看到spline 里面又是knots weights fit control 这些,用scipy 画不来,请问应该用那个函数来画cad 的spline ?
Python 读取到dxf 的spline 后,怎么用scipy 画画出来呢?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 「已注销」 2023-04-24 23:43关注
仅作参考:
要用 Python 中的 SciPy 库绘制 DXF 文件中的样条曲线,您需要先将 DXF 文件中的样条曲线读取到 Python 中,然后使用 SciPy 库中的 interpolate.splprep 和 interpolate.splev 函数进行插值和绘制。
假设您已经使用 ezdxf 库读取了 DXF 文件中的所有样条曲线,并将它们存储在 splines 列表中import numpy as np from scipy import interpolate import matplotlib.pyplot as plt # 遍历所有样条曲线 for spline in splines: # 读取样条曲线的控制点 control_points = np.array(spline.control_points) # 对控制点进行插值 tck, u = interpolate.splprep(control_points.T, s=0) # 生成新的样条曲线上的点 u_new = np.linspace(u.min(), u.max(), 1000) x_new, y_new, _ = interpolate.splev(u_new, tck) # 绘制样条曲线 plt.plot(x_new, y_new) # 显示图像 plt.show()将样条曲线的控制点作为输入进行插值,然后使用 linspace 函数生成新的样条曲线上的点,并使用 splev 函数计算新的样条曲线上的坐标。最后,我们使用 plot 函数绘制样条曲线,并使用 show 函数显示图像。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报