请问assert pos.shape[2] == 1这个报错是什么意思呀?

各位老师好
我有个很简单的问题,就是在屏幕上画一个点。用的是gui.circles()
但是总是出现如下报错

Original exception was:
Traceback (most recent call last):
  File "d:\codes\taichi_run\taichiCourse\myHomework\拉普拉斯方程生成网格\laplaceMesh\laplaceMesh.py", line 34, in <module>
    draw()
  File "d:\codes\taichi_run\taichiCourse\myHomework\拉普拉斯方程生成网格\laplaceMesh\laplaceMesh.py", line 26, in draw
    gui.circles(nodes_np,
  File "C:\ProgramData\Miniconda3\lib\site-packages\taichi\misc\gui.py", line 323, in circles
    assert pos.shape[2] == 1
AssertionError

我的程序的代码大致是这样的:

nodes = ti.Vector.field(2, ti.f64, (numNodes, numNodes))

@ti.kernel
def init():
    nodes[0, 0].x =0.5
    nodes[0, 0].y =0.5

def draw():
    gui = ti.GUI("laplaceMesh",
                 background_color=0xFFFFFF,
                 )

    nodes_np = nodes.to_numpy()

    while ti.GUI.running:
        gui.circles(nodes_np,
                color=0x000000
                radius=1.0)

        gui.show()

if __name__ == "__main__":
    init()
    draw()

感谢禹鹏师兄!
已经好了
解决方案就是
nodes_np = nodes.to_numpy().reshape(numNodes*numNodes,2)

大概有点明白为什么会发生这个BUG了。

虽然reshape把下标二维的展开成了一维的,但是点的位置(x,y)还在,所以能凭借着这个坐标画出来点,和下标是一维还是二维的是没关系的