41#include <QStandardItem>
63 QStandardItem*
item =
nullptr;
109 static bool unproject(
const QPoint& screenPos,
110 const QRect& paneRect,
111 const QMatrix4x4& pvm,
112 QVector3D& rayOrigin,
127 static RayHit pick(
const QVector3D& rayOrigin,
128 const QVector3D& rayDir,
130 const QMap<QString, std::shared_ptr<BrainSurface>>& surfaces,
131 const QMap<
const QStandardItem*, std::shared_ptr<BrainSurface>>& itemSurfaceMap,
132 const QMap<
const QStandardItem*, std::shared_ptr<DipoleObject>>& itemDipoleMap);
147 const QMap<
const QStandardItem*, std::shared_ptr<BrainSurface>>& itemSurfaceMap,
148 const QMap<QString, std::shared_ptr<BrainSurface>>& surfaces);
Library export/import macros and namespace marker for the disp3D library.
#define DISP3DSHARED_EXPORT
Per-viewport state (camera preset, zoom, pan, visibility filter) and serialisation helpers.
3-D brain visualisation using the Qt RHI rendering backend.
Viewport subdivision holding its own camera, projection, and scissor rectangle.
Result of a ray–mesh intersection test containing the hit point, triangle index, and distance.
QString surfaceKey
FsSurface map key of the hit surface.
float distance
Distance along ray to hit point.
QString displayLabel() const
int regionId
FsAnnotation label ID.
bool isDipole
True if a dipole was hit.
QStandardItem * item
Tree item that was hit (nullable).
int dipoleIndex
Index within the dipole set.
bool hit
True if something was hit.
QVector3D hitPoint
World-space intersection point.
int vertexIndex
Vertex or element index at hit.
QString regionName
FsAnnotation region label (if available).
Ray casting and intersection testing.
static bool unproject(const QPoint &screenPos, const QRect &paneRect, const QMatrix4x4 &pvm, QVector3D &rayOrigin, QVector3D &rayDir)
static RayHit pick(const QVector3D &rayOrigin, const QVector3D &rayDir, const SubView &subView, const QMap< QString, std::shared_ptr< BrainSurface > > &surfaces, const QMap< const QStandardItem *, std::shared_ptr< BrainSurface > > &itemSurfaceMap, const QMap< const QStandardItem *, std::shared_ptr< DipoleObject > > &itemDipoleMap)
static QString buildLabel(const RayHit &result, const QMap< const QStandardItem *, std::shared_ptr< BrainSurface > > &itemSurfaceMap, const QMap< QString, std::shared_ptr< BrainSurface > > &surfaces)
Renderable cortical surface mesh with per-vertex color, curvature data, and GPU buffer management.
Renderable dipole arrow set with instanced GPU rendering for QRhi.