0

我是 vtk 的新手,我正在编写一个应用程序来绘制多个形状。使用点拾取事件绘制形状,如下所示:

void Visualizer::pointPickingEventOccurred (const pcl::visualization::PointPickingEvent &event)
 {
    std::cout << "[INOF] Point picking event occurred." << std::endl;

      float x, y, z;
      if (event.getPointIndex () == -1)
      {
         return;
      }
      event.getPoint(x, y, z);
      std::cout << "[INOF] Point coordinate ( " << x << ", " << y << ", " << z << ")" << std::endl;
      
      points->InsertNextPoint(x, y, z);


 }

这里的点是一个vtk点列表:

vtkNew<vtkPoints> points;

我正在尝试清除points,以便调整它的大小并为每个形状获取新点,但我还没有找到清除列表的方法。

4

2 回答 2

0

对points->Reset()的简单调用就可以解决问题。它会使对象看起来是空的,而不会实际释放内存。

于 2022-02-16T00:19:57.570 回答
0

行得通吗Initialize()

于 2022-02-19T15:15:38.777 回答