1 #ifndef CTL_CTSYSTEMVIEW_H 2 #define CTL_CTSYSTEMVIEW_H 9 class AbstractDetector;
20 namespace Qt3DExtras {
21 class QOrbitCameraController;
23 namespace Qt3DRender {
82 explicit CTSystemView(QWidget* parent =
nullptr,
float visualScale = 50.0f);
98 QGridLayout* _mainLayout;
101 Qt3DCore::QEntity* _rootEntity;
103 void addBoxObject(
const QVector3D& dimensions,
104 const QVector3D& translation,
105 const QQuaternion& rotation,
106 Qt3DRender::QMaterial* material =
nullptr);
107 void addBallObject(
float radius,
108 const QVector3D& translation,
109 Qt3DRender::QMaterial* material =
nullptr);
114 Qt3DRender::QCamera* _camera;
115 Qt3DExtras::QOrbitCameraController* _camController;
116 Qt3DRender::QMaterial* _defaultMaterial;
118 float _visualScale = 50.0f;
120 void initializeView();
121 void addAxis(Qt::Axis axis,
float lineLength = 10.0f);
122 void addCoordinateSystem();
131 using Qt3DExtras::Qt3DWindow::Qt3DWindow;
134 void keyPressEvent(QKeyEvent* e)
override;
143 inline void plot(
const SimpleCTSystem& system,
float visualScale = 50.0f)
149 #endif // CTL_CTSYSTEMVIEW_H void resetView()
Definition: ctsystemview.cpp:210
Definition: ctsystemview.h:127
void resetCamera()
Definition: ctsystemview.cpp:197
void clearScene()
Definition: ctsystemview.cpp:182
The VoxelVolume class provides a simple container for storage of voxelized 3D volume data.
Definition: ctsystemview.h:14
The CTSystemView class provides a tool for visualization of a SimpleCTSystem.
Definition: ctsystemview.h:78
Base class for gantry components.
Definition: abstractgantry.h:65
Base class for detector components.
Definition: abstractdetector.h:54
void addVolume(const VoxelVolume< uchar > &volume)
Definition: ctsystemview.cpp:148
void setCTSystem(const SimpleCTSystem &system)
Definition: ctsystemview.cpp:82
void addSystemVisualization(const SimpleCTSystem &system)
Definition: ctsystemview.cpp:116
static void plot(const SimpleCTSystem &system, float visualScale=50.0f)
Definition: ctsystemview.cpp:69
void setData(const SimpleCTSystem &system)
Definition: ctsystemview.cpp:91
Base class for source components.
Definition: abstractsource.h:68
The SimpleCTSystem class is a specialized sub-class of CTSystem for simple systems (i....
Definition: simplectsystem.h:95
CTSystemView(QWidget *parent=nullptr, float visualScale=50.0f)
Definition: ctsystemview.cpp:31