如何使用pyvista绘制点云,并动态展示

需求,需要显示点云,同时点云也会发生运动,需要对点云的数据实时的显示。

import pyvista as pv
from pyvistaqt import BackgroundPlotter
import numpy as np

# 创建一个初始的点云数据
num_points = 100
points = np.random.rand(num_points, 3)

# 将 numpy 数组转换为 PyVista 的 PolyData
point_cloud = pv.PolyData(points)

# 更新点云的回调函数
def update_cloud():
    global points
    points += np.random.randn(num_points, 3) * 0.02
    point_cloud.points = points
    plotter.update()

# 使用 BackgroundPlotter
plotter = BackgroundPlotter()
plotter.add_mesh(point_cloud, color='red', point_size=10)

# 添加定时回调函数,每 100 毫秒调用一次
timer_id = plotter.add_callback(update_cloud, 100)

# 开始事件循环
plotter.app.exec_()

你可能感兴趣的:(python,点云,动画)