51#include <QStandardItem>
70 QStandardItem *
item =
nullptr;
116 static bool unproject(
const QPoint &screenPos,
117 const QRect &paneRect,
118 const QMatrix4x4 &pvm,
119 QVector3D &rayOrigin,
135 const QVector3D &rayDir,
137 const QMap<QString, std::shared_ptr<BrainSurface>> &surfaces,
138 const QMap<
const QStandardItem*, std::shared_ptr<BrainSurface>> &itemSurfaceMap,
139 const QMap<
const QStandardItem*, std::shared_ptr<DipoleObject>> &itemDipoleMap);
154 const QMap<
const QStandardItem*, std::shared_ptr<BrainSurface>> &itemSurfaceMap,
155 const QMap<QString, std::shared_ptr<BrainSurface>> &surfaces);
disp3D_rhi library export/import macros.
#define DISP3DRHISHARED_EXPORT
ViewState declarations — per-view data structures and conversion helpers.
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.
int dipoleIndex
Index within the dipole set.
int vertexIndex
Vertex or element index at hit.
bool hit
True if something was hit.
QString surfaceKey
Surface map key of the hit surface.
QVector3D hitPoint
World-space intersection point.
QString displayLabel() const
QString regionName
Annotation region label (if available).
QStandardItem * item
Tree item that was hit (nullable).
float distance
Distance along ray to hit point.
bool isDipole
True if a dipole was hit.
int regionId
Annotation label ID.
Ray casting and intersection testing.
static bool unproject(const QPoint &screenPos, const QRect &paneRect, const QMatrix4x4 &pvm, QVector3D &rayOrigin, QVector3D &rayDir)
static QString buildLabel(const PickResult &result, const QMap< const QStandardItem *, std::shared_ptr< BrainSurface > > &itemSurfaceMap, const QMap< QString, std::shared_ptr< BrainSurface > > &surfaces)
static PickResult 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)
Renderable cortical surface mesh with per-vertex color, curvature data, and GPU buffer management.
Renderable dipole arrow set with instanced GPU rendering for QRhi.