你写的这段代码运行报错了,错误如下curve_point += comb(n, i) * (1 - t) ** (n - i) * t ** i * points[i] numpy.core._exceptions.UFuncTypeError: Cannot cast ufunc 'add' output from dtype('float64') to dtype('int64') with casting rule 'same_kind'
时间: 2024-04-21 16:23:26 浏览: 75
Python库 | comb_spec_searcher-1.3.0.tar.gz
非常抱歉给你带来了困扰。这个报错是由于在计算贝塞尔曲线上的点时,数据类型不匹配导致的。
为了解决这个问题,我们可以将`curve_point`和`tangent`的数据类型设置为浮点数类型,以适应计算过程中的小数运算。
请将以下两行代码:
```python
curve_point = np.zeros_like(points[0])
tangent = np.zeros_like(points[0])
```
改为:
```python
curve_point = np.zeros_like(points[0], dtype=float)
tangent = np.zeros_like(points[0], dtype=float)
```
这样就能够避免数据类型不匹配的问题,然后重新运行程序即可。
非常抱歉给你带来的困扰,希望这次能够顺利运行。如果还有其他问题,请随时告诉我。
阅读全文