8 #ifndef QQuickVTKItem_h
9 #define QQuickVTKItem_h
11 #include <QtQuick/QQuickItem>
13 #include <QtCore/QScopedPointer>
17 #include "vtkGUISupportQtQuickModule.h"
20 VTK_ABI_NAMESPACE_BEGIN
25 class QQuickVTKItemPrivate;
74 Q_UNUSED(renderWindow)
return {};
97 Q_UNUSED(renderWindow);
136 void invalidateSceneGraph();
141 QScopedPointer<QQuickVTKItemPrivate> _d_ptr;
144 VTK_ABI_NAMESPACE_END
QQuickItem that manages a VTK rendering in the QML scenegraph.
QQuickVTKItem(QQuickItem *parent=nullptr)
QSGTextureProvider * textureProvider() const override
bool isTextureProvider() const override
virtual vtkUserData initializeVTK(vtkRenderWindow *renderWindow)
This is where the VTK initializiation should be done including creating a pipeline and attaching it t...
void releaseResources() override
~QQuickVTKItem() override
void dispatch_async(std::function< void(vtkRenderWindow *renderWindow, vtkUserData userData)> f)
This is the function that enqueues an async command that will be executed just before VTK renders.
bool event(QEvent *) override
virtual void destroyingVTK(vtkRenderWindow *renderWindow, vtkUserData userData)
At any moment the QML SceneGraph can decide to delete the underlying QSGNode.
QSGNode * updatePaintNode(QSGNode *, UpdatePaintNodeData *) override
static void setGraphicsApi()
Set up the graphics surface format and api.
abstract base class for most VTK objects
create a window for renderers to draw into
Hold a reference to a vtkObjectBase instance.