28#ifndef ELECTRODEOBJECT_H
29#define ELECTRODEOBJECT_H
52class QRhiResourceUpdateBatch;
141 const QVector<ElectrodeArray>&
arrays()
const;
158 const QColor& minColor = Qt::blue,
159 const QColor& maxColor = Qt::red);
191 QVector<unsigned int>& indices,
192 int cylinderSides = 16)
const;
255 QVector<ElectrodeArray> m_arrays;
256 QString m_selectedContact;
264 void computeBoundingBox();
277 static QColor interpolateColor(
float value,
float minVal,
float maxVal,
278 const QColor& minColor,
const QColor& maxColor);
282 std::unique_ptr<GpuBuffers> m_gpu;
Library export/import macros and namespace marker for the disp3D library.
#define DISP3DSHARED_EXPORT
3-D brain visualisation using the Qt RHI rendering backend.
ElectrodeLayout
Geometry layout for an electrode array.
Single contact on a depth electrode shaft.
One electrode array — sEEG depth shaft, ECoG strip, or ECoG grid.
QVector< ElectrodeContact > contacts
uint32_t shaftIndexCount() const
void generateShaftGeometry(QVector< float > &vertices, QVector< unsigned int > &indices, int cylinderSides=16) const
QRhiBuffer * instanceBuffer() const
void generateContactInstances(QVector< float > &instanceData) const
void setArrays(const QVector< ElectrodeArray > &arrays)
QRhiBuffer * indexBuffer() const
void updateBuffers(QRhi *rhi, QRhiResourceUpdateBatch *u)
QVector3D boundingBoxMax() const
QRhiBuffer * vertexBuffer() const
void setContactValues(const QMap< QString, float > &values, const QColor &minColor=Qt::blue, const QColor &maxColor=Qt::red)
const QVector< ElectrodeArray > & arrays() const
void selectContact(const QString &name)
QString selectedContact() const
int totalContactCount() const
uint32_t contactInstanceCount() const
QVector3D boundingBoxMin() const