v2.0.0
Loading...
Searching...
No Matches
dipoleobject.h File Reference

Instanced-arrow renderable for fitted equivalent current dipoles, driven by QRhi instancing. More...

#include "../disp3D_global.h"
#include <QMatrix4x4>
#include <QVector3D>
#include <vector>
#include <memory>
#include <inv/dipole_fit/inv_ecd_set.h>
Include dependency graph for dipoleobject.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  DipoleObject
 Renderable dipole arrow set with instanced GPU rendering for QRhi. More...

Detailed Description

Instanced-arrow renderable for fitted equivalent current dipoles, driven by QRhi instancing.

SPDX-License-Identifier: BSD-3-Clause Copyright (c) 2026 MNE-CPP Authors

Author
Christoph Dinh chris.nosp@m.toph.nosp@m..dinh.nosp@m.@mne.nosp@m.-cpp..nosp@m.org
Since
2.0.0
Date
March 2026

DipoleObject converts an INVLIB::InvEcdSet into a single arrow mesh (cone + shaft) plus a per-dipole InstanceData stream that carries the 4x4 model matrix (translation + dipole orientation), the RGBA colour (mapped from goodness-of-fit by the active dipole colormap) and a selected flag.

All dipoles draw with one drawIndexed call regardless of how many were fitted; selection toggles only flip the isSelected float in the instance buffer, so the renderer never rebuilds geometry on interaction. Ray-picking is supported directly on the instance data for tooltip / click selection.

Definition in file dipoleobject.h.