 |
Computer Assited Medical Intervention Tool Kit
version 4.1
|
Go to the documentation of this file.
26 #ifndef MESH_DATA_MODEL_H
27 #define MESH_DATA_MODEL_H
29 #include <QAbstractTableModel>
30 #include <QSortFilterProxyModel>
45 class MeshDataModel :
public QAbstractTableModel {
59 int rowCount(
const QModelIndex& parent = QModelIndex())
const ;
64 int columnCount(
const QModelIndex& parent = QModelIndex())
const override;
69 QVariant
data(
const QModelIndex& index,
int role = Qt::DisplayRole)
const override;
74 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const override;
79 bool setData(
const QModelIndex& index,
const QVariant& value,
int role)
override;
83 Qt::ItemFlags
flags(
const QModelIndex& index)
const override;
108 class MeshDataFilterModel :
public QSortFilterProxyModel {
116 QObject* parent =
nullptr);
124 bool filterAcceptsRow(
int sourceRow,
const QModelIndex& sourceParent)
const override;
1D (scalar value)
Definition: MeshComponent.h:58
Qt::ItemFlags flags(const QModelIndex &index) const override
Returns if a given model index is editable, checkable....
Definition: MeshDataModel.cpp:235
static const QMap< int, QString > & getFieldNames()
static method that returns the FieldType enum as a QString
Definition: MeshComponent.cpp:1142
void setDataRepresentationVisibility(FieldType, const QString &, bool)
set the visibility of a given representation for a given data (identified with its name) of a given f...
Definition: MeshComponent.cpp:886
int fieldTypeFilter
Definition: MeshDataModel.h:149
MeshDataFilterModel(int fieldFilter=MeshComponent::POINTS|MeshComponent::CELLS|MeshComponent::MESH, int dataFilter=MeshComponent::SCALARS|MeshComponent::VECTORS|MeshComponent::TENSORS|MeshComponent::OTHERS, QObject *parent=nullptr)
Definition: MeshDataModel.cpp:285
bool getDataRepresentationVisibility(FieldType, const QString &)
get the current visibility status of a given data (identified with its name) of a given field type
Definition: MeshComponent.cpp:787
other dimensions (warning: nothing special are managed by this class, no specific interaction)
Definition: MeshComponent.h:61
void refresh()
Refresh the model.
Definition: MeshDataModel.cpp:273
static const DataType getDataType(vtkSmartPointer< vtkDataArray >)
Returns the data type of a data array depending on the number of components of the given data array:
Definition: MeshComponent.cpp:1179
static const QString getFieldName(const FieldType)
helper method that returns the field type as a string
Definition: MeshComponent.cpp:1150
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
Model data, called when the view is refreshing visualization.
Definition: MeshDataModel.cpp:112
DataType
Definition: MeshComponent.h:57
virtual vtkSmartPointer< vtkPointSet > getPointSet()=0
bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const override
Definition: MeshDataModel.cpp:302
data are attached to cells
Definition: MeshComponent.h:67
MeshComponent * meshComponent
The component where the data are stored.
Definition: MeshDataModel.h:136
int columnCount(const QModelIndex &parent=QModelIndex()) const override
Number of data arrays columns.
Definition: MeshDataModel.cpp:76
data are attached to point
Definition: MeshComponent.h:66
void setDataTypeFilter(int dataFilter)
Definition: MeshDataModel.cpp:297
MeshDataModel(MeshComponent *meshComp)
Constructor.
Definition: MeshDataModel.cpp:59
int rowCount(const QModelIndex &parent=QModelIndex()) const
Number of data arrays.
Definition: MeshDataModel.cpp:66
vtkSmartPointer< vtkDataArray > getDataArray(FieldType fieldType, const QString &arrayName)
Get the data array of specified field type and name.
Definition: MeshComponent.cpp:1004
3D (3D vector)
Definition: MeshComponent.h:59
int getNumberOfDataArray(int fieldFlag=POINTS|CELLS)
Get the number of data arrays of a given type without taking the specific representation into account...
Definition: MeshComponent.cpp:596
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
Header data.
Definition: MeshDataModel.cpp:246
bool setData(const QModelIndex &index, const QVariant &value, int role) override
Edit data, called when the data are modified by the user (view)
Definition: MeshDataModel.cpp:207
9D (3x3 matrix)
Definition: MeshComponent.h:60
int dataTypeFilter
Definition: MeshDataModel.h:151
static const QString getDataTypeName(const DataType)
Helper method that returns the datatype as a string.
Definition: MeshComponent.cpp:1173
void getRowInfo(const int, int *dataIndex, MeshComponent::FieldType *, MeshComponent::DataType *, QString &) const
determine the current field type of the item depending on the row index, compute the index of the dat...
Definition: MeshDataModel.cpp:81
FieldType
Definition: MeshComponent.h:65
data are attached to the whole mesh (generic field data of Vtk)
Definition: MeshComponent.h:68
void setFieldTypeFilter(int fieldFilter)
Definition: MeshDataModel.cpp:292
static const QMap< int, QString > & getDataTypeNames()
static method that returns the DataType enum as a QString
Definition: MeshComponent.cpp:1166
Definition: Action.cpp:36