Renderable dipole arrow set with instanced GPU rendering for QRhi. More...
#include <dipoleobject.h>
Classes | |
| struct | GpuBuffers |
Public Member Functions | |
| DipoleObject () | |
| ~DipoleObject () | |
| void | load (const INVERSELIB::ECDSet &ecdSet) |
| void | applyTransform (const QMatrix4x4 &trans) |
| void | updateBuffers (QRhi *rhi, QRhiResourceUpdateBatch *u) |
| QRhiBuffer * | vertexBuffer () const |
| QRhiBuffer * | indexBuffer () const |
| QRhiBuffer * | instanceBuffer () const |
| int | indexCount () const |
| int | instanceCount () const |
| bool | isVisible () const |
| void | setVisible (bool visible) |
| QVector3D | debugFirstDipolePosition () const |
| void | setSelected (int index, bool selected) |
| int | intersect (const QVector3D &rayOrigin, const QVector3D &rayDir, float &dist) const |
Renderable dipole arrow set with instanced GPU rendering for QRhi.
Renderable dipole object that builds instanced arrow geometry from an ECDSet and manages GPU buffers for QRhi-based rendering.
Definition at line 62 of file dipoleobject.h.
| DipoleObject::DipoleObject | ( | ) |
Definition at line 58 of file dipoleobject.cpp.
|
default |
| void DipoleObject::applyTransform | ( | const QMatrix4x4 & | trans | ) |
Definition at line 158 of file dipoleobject.cpp.
| QVector3D DipoleObject::debugFirstDipolePosition | ( | ) | const |
Definition at line 199 of file dipoleobject.cpp.
| QRhiBuffer * DipoleObject::indexBuffer | ( | ) | const |
Definition at line 66 of file dipoleobject.cpp.
|
inline |
Definition at line 79 of file dipoleobject.h.
| QRhiBuffer * DipoleObject::instanceBuffer | ( | ) | const |
Definition at line 67 of file dipoleobject.cpp.
|
inline |
Definition at line 80 of file dipoleobject.h.
| int DipoleObject::intersect | ( | const QVector3D & | rayOrigin, |
| const QVector3D & | rayDir, | ||
| float & | dist ) const |
Test ray intersection with dipoles.
| [in] | rayOrigin | Ray origin in world space. |
| [in] | rayDir | Ray direction (normalized). |
| [out] | dist | Distance to intersection. |
Definition at line 351 of file dipoleobject.cpp.
|
inline |
Definition at line 82 of file dipoleobject.h.
| void DipoleObject::load | ( | const INVERSELIB::ECDSet & | ecdSet | ) |
Definition at line 69 of file dipoleobject.cpp.
| void DipoleObject::setSelected | ( | int | index, |
| bool | selected ) |
Definition at line 405 of file dipoleobject.cpp.
|
inline |
Definition at line 83 of file dipoleobject.h.
| void DipoleObject::updateBuffers | ( | QRhi * | rhi, |
| QRhiResourceUpdateBatch * | u ) |
Definition at line 322 of file dipoleobject.cpp.
| QRhiBuffer * DipoleObject::vertexBuffer | ( | ) | const |
Definition at line 65 of file dipoleobject.cpp.