Files
uLib/src/Vtk/uLibVtkViewer.h
2026-03-25 16:18:07 +00:00

48 lines
880 B
C++

#ifndef ULIBVTKVIEWER_H
#define ULIBVTKVIEWER_H
#include "vtkViewport.h"
class vtkRenderWindow;
class vtkRenderWindowInteractor;
class vtkRenderer;
class vtkCameraOrientationWidget;
namespace uLib {
namespace Vtk {
struct ViewerData;
class Viewer : public Viewport {
public:
Viewer();
virtual ~Viewer();
// Render scene
virtual void Render() override;
static vtkCameraOrientationWidget *
MakeCameraOrientationWidget(vtkRenderWindowInteractor *interactor,
vtkRenderer *renderer);
void Start();
virtual vtkRenderWindow *GetRenderWindow() override;
virtual vtkRenderWindowInteractor *GetInteractor() override;
private:
void InstallPipe();
void UninstallPipe();
void SetupGridButton();
void UpdateGridButtonPosition();
struct ViewerData *d;
};
} // namespace Vtk
} // namespace uLib
#endif // ULIBVTKVIEWER_H