MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
bemtreeitem.cpp
Go to the documentation of this file.
1//=============================================================================================================
35//=============================================================================================================
36// INCLUDES
37//=============================================================================================================
38
39#include "bemtreeitem.h"
40#include "bemsurfacetreeitem.h"
41
42#include <mne/mne_bem.h>
43
45
46//=============================================================================================================
47// QT INCLUDES
48//=============================================================================================================
49
50//=============================================================================================================
51// EIGEN INCLUDES
52//=============================================================================================================
53
54#include <Eigen/Core>
55
56//=============================================================================================================
57// USED NAMESPACES
58//=============================================================================================================
59
60using namespace FSLIB;
61using namespace MNELIB;
62using namespace DISP3DLIB;
63using namespace FIFFLIB;
64
65//=============================================================================================================
66// DEFINE MEMBER METHODS
67//=============================================================================================================
68
69BemTreeItem::BemTreeItem(int iType, const QString& text)
70: AbstractTreeItem(iType, text)
71{
72 initItem();
73}
74
75//=============================================================================================================
76
77void BemTreeItem::setTransform(const Qt3DCore::QTransform& transform)
78{
80 m_pRenderable3DEntity->setTransform(transform);
81 }
82}
83
84//=============================================================================================================
85
87 bool bApplyInverse)
88{
90 m_pRenderable3DEntity->setTransform(transform, bApplyInverse);
91 }
92}
93
94//=============================================================================================================
95
96void BemTreeItem::applyTransform(const Qt3DCore::QTransform& transform)
97{
99 m_pRenderable3DEntity->applyTransform(transform);
100 }
101}
102
103//=============================================================================================================
104
106 bool bApplyInverse)
107{
109 m_pRenderable3DEntity->applyTransform(transform, bApplyInverse);
110 }
111}
112
113//=============================================================================================================
114
116{
117 this->setEditable(false);
118 this->setCheckable(true);
119 this->setCheckState(Qt::Checked);
120 this->setToolTip("BEM item");
121}
122
123//=============================================================================================================
124
125void BemTreeItem::addData(const MNEBem &tBem, Qt3DCore::QEntity* p3DEntityParent)
126{
128 m_pRenderable3DEntity = new Renderable3DEntity(p3DEntityParent);
129 }
130
131 //Generate child items based on BEM input parameters
132 for(int i = 0; i < tBem.size(); ++i) {
133 QString sBemSurfName;
134 sBemSurfName = QString("%1").arg(tBem[i].id);
135 BemSurfaceTreeItem* pSurfItem = new BemSurfaceTreeItem(m_pRenderable3DEntity, Data3DTreeModelItemTypes::BemSurfaceItem, sBemSurfName);
136 pSurfItem->addData(tBem[i]);
137
138 QList<QStandardItem*> list;
139 list << pSurfItem;
140 list << new QStandardItem(pSurfItem->toolTip());
141 this->appendRow(list);
142 }
143}
144
FiffCoordTrans class declaration.
MNEBem class declaration.
BemTreeItem class declaration.
BemSurfaceTreeItem class declaration.
Base class for renederable 3D QEntities.
BemSurfaceTreeItem provides a generic brain tree item to hold BEM surfaces.
void addData(const MNELIB::MNEBemSurface &tBemSurface)
QPointer< Renderable3DEntity > m_pRenderable3DEntity
virtual void setTransform(const Qt3DCore::QTransform &transform)
void addData(const MNELIB::MNEBem &tBem, Qt3DCore::QEntity *p3DEntityParent=0)
BemTreeItem(int iType=Data3DTreeModelItemTypes::BemItem, const QString &text="")
virtual void applyTransform(const Qt3DCore::QTransform &transform)
Provides the basic tree item.
Coordinate transformation description.
BEM descritpion.
Definition mne_bem.h:90
qint32 size() const
Definition mne_bem.h:271