本文主要利用vtkAnimationScene和vtkAnimationCue两类
这是刚接触VTK一周时间,这也是我的第一篇博客。
我的环境是WIN10+VTK8.2+QT5.14+VS2015。
参考了 https://blog.csdn.net/qyxx01/article/details/71601334 中的大部分代码,并补全成一个可以运行的完整代码,实现直线延某一个方向不断延伸。
其中这几个点的坐标都是随意设置的,所以看起来怪怪的
运行结果,其中青色箭头为直线延展的方向
换一个展示方向
完整代码如下
#include "vtkAutoInit.h"
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingFreeType);
#include <vtkSmartPointer.h>
#include <vtkAnimationCue.h>
#include <vtkRenderer.h>
#include <vtkSphereSource.h>
#include <vtkPolyDataMapper.h>
#include <vtkCommand.h>
#include <vtkAnimationScene.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkLineSource.h>
#include "vtkInteractorStyleTrackballCamera.h"
#include <vtkProperty.h>
#include <vtkDataSetMapper.h>
class vtkCustomAnimationCue : public vtkAnimationCue
{
public:
static vtkCustomAnimationCue* New()
{
vtkCustomAnimationCue *p = new vtkCustomAnimationCue();
return p;
}
vtkRenderWindow *RenWin; //活跃的渲染器
vtkLineSource *line;
vtkPoints *points;
protected:
double ptemp[3]; //临时点的储存
vtkCustomAnimationCue()
{