Класс QItemModelScatterDataProxy
Класс-прокси для представления данных в моделях элементов с Q3DScatter. Подробнее...
| Заголовок: | #include <QItemModelScatterDataProxy> |
| С тех пор: | QtDataVisualization 1.0 |
| Инициализируется: | ItemModelScatterDataProxy |
| Наследует: | QScatterDataProxy |
Свойства
|
|
- 2 свойства унаследованы от QScatterDataProxy
- 1 свойство унаследовано от QAbstractDataProxy
- 1 свойство унаследовано от QObject
Общедоступные функции
| QItemModelScatterDataProxy(QObject *parent = Q_NULLPTR) | |
| QItemModelScatterDataProxy(QAbstractItemModel *itemModel, QObject *parent = Q_NULLPTR) | |
| QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, QObject *parent = Q_NULLPTR) | |
| QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, const QString &rotationRole, QObject *parent = Q_NULLPTR) | |
| virtual | ~QItemModelScatterDataProxy() |
| QAbstractItemModel * | itemModel() const |
| void | remap(const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, const QString &rotationRole) |
| QString | rotationRole() const |
| QRegExp | rotationRolePattern() const |
| QString | rotationRoleReplace() const |
| void | setItemModel(QAbstractItemModel *itemModel) |
| void | setRotationRole(const QString &role) |
| void | setRotationRolePattern(const QRegExp &pattern) |
| void | setRotationRoleReplace(const QString &replace) |
| void | setXPosRole(const QString &role) |
| void | setXPosRolePattern(const QRegExp &pattern) |
| void | setXPosRoleReplace(const QString &replace) |
| void | setYPosRole(const QString &role) |
| void | setYPosRolePattern(const QRegExp &pattern) |
| void | setYPosRoleReplace(const QString &replace) |
| void | setZPosRole(const QString &role) |
| void | setZPosRolePattern(const QRegExp &pattern) |
| void | setZPosRoleReplace(const QString &replace) |
| QString | xPosRole() const |
| QRegExp | xPosRolePattern() const |
| QString | xPosRoleReplace() const |
| QString | yPosRole() const |
| QRegExp | yPosRolePattern() const |
| QString | yPosRoleReplace() const |
| QString | zPosRole() const |
| QRegExp | zPosRolePattern() const |
| QString | zPosRoleReplace() const |
- 12 общедоступных функций унаследованы от QScatterDataProxy
- 1 общедоступная функция унаследована от QAbstractDataProxy
- 32 общедоступных функции унаследованы от QObject
Сигналы
| void | itemModelChanged(const QAbstractItemModel *itemModel) |
| void | rotationRoleChanged(const QString &role) |
| void | rotationRolePatternChanged(const QRegExp &pattern) |
| void | rotationRoleReplaceChanged(const QString &replace) |
| void | xPosRoleChanged(const QString &role) |
| void | xPosRolePatternChanged(const QRegExp &pattern) |
| void | xPosRoleReplaceChanged(const QString &replace) |
| void | yPosRoleChanged(const QString &role) |
| void | yPosRolePatternChanged(const QRegExp &pattern) |
| void | yPosRoleReplaceChanged(const QString &replace) |
| void | zPosRoleChanged(const QString &role) |
| void | zPosRolePatternChanged(const QRegExp &pattern) |
| void | zPosRoleReplaceChanged(const QString &replace) |
- 7 сигналов, унаследованных от QScatterDataProxy
- 2 сигнала, унаследованных от QObject
Дополнительные унаследованные члены
- 1 публичный слот, унаследованный от QObject
- 11 статических публичных членов, унаследованных от QObject
- 9 защищённых функций, унаследованных от QObject
Подробное описание
Класс-прокси для представления данных в моделях элементов с Q3DScatter.
QItemModelScatterDataProxy позволяет использовать модели, производные от QAbstractItemModel, в качестве источника данных для Q3DScatter. Он отображает роли QAbstractItemModel в значения XYZ точек Q3DScatter.
Данные разрешаются асинхронно всякий раз, когда изменяется отображение или модель. QScatterDataProxy::arrayReset() излучается, когда данные были обработаны. Однако вставки, удаления и изменения отдельных элементов данных после инициализации модели разрешаются синхронно, если в том же кадре нет изменений, которые вызывают обработку всей модели.
Отображение игнорирует строки и столбцы QAbstractItemModel и обрабатывает все элементы одинаково. Оно требует, чтобы модель предоставляла роли для элементов данных, которые могут быть отображены в значения X, Y и Z для точек рассеяния.
Например, предположим, что у вас есть пользовательская QAbstractItemModel для хранения различных измерений, сделанных на образцах материалов, предоставляющих данные для ролей, таких как «плотность», «твёрдость» и «электропроводность». Вы можете визуализировать эти свойства на графике рассеяния, используя этот прокси:
// Map "density" value to X-axis, "hardness" to Y-axis and "conductivity" to Z-axis.
QItemModelScatterDataProxy *proxy = new QItemModelScatterDataProxy(customModel,
QStringLiteral("density"),
QStringLiteral("hardness"),
QStringLiteral("conductivity")); Если поля модели не содержат данные в нужном формате, вы можете указать шаблон поиска регулярного выражения и правило замены для каждой роли, чтобы получить значение в нужном формате. Дополнительную информацию о том, как работает замена с использованием регулярных выражений, см. в документации функции QString::replace(const QRegExp &rx, const QString &after). Обратите внимание, что использование регулярных выражений влияет на производительность, поэтому эффективнее использовать модели элементов, где поиск и замена не являются необходимыми для получения желаемых значений.
Пример использования шаблонов поиска в сочетании с ролями см. в примере использования ItemModelBarDataProxy в Qt Quick 2 Bars Example.
См. также Qt Data Visualization Обработка данных.
Документация по свойствам
itemModel : QAbstractItemModel *
Это свойство содержит модель элементов, используемую в качестве источника данных для 3D диаграммы рассеяния.
Функции доступа:
| QAbstractItemModel * | itemModel() const |
| void | setItemModel(QAbstractItemModel *itemModel) |
Сигнал уведомления:
| void | itemModelChanged(const QAbstractItemModel *itemModel) |
rotationRole : QString
Это свойство содержит роль модели элемента, которая сопоставляется с вращением элемента.
Модель может предоставлять значение для вращения в виде варианта, который напрямую преобразуется в QQuaternion, или в виде одного из строковых представлений: "scalar,x,y,z" или "@angle,x,y,z". Первое значение создаст кватернион напрямую с заданными значениями, а второе — с помощью метода QQuaternion::fromAxisAndAngle().
Функции доступа:
| QString | rotationRole() const |
| void | setRotationRole(const QString &role) |
Сигнал уведомления:
| void | rotationRoleChanged(const QString &role) |
rotationRolePattern : QRegExp
Это свойство определяет, выполняется ли поиск и замена значения, сопоставленного с ролью вращения, перед его использованием в качестве вращения элемента.
Это свойство указывает регулярное выражение для поиска части сопоставленного значения для замены, а свойство rotationRoleReplace содержит строку замены.
Функции доступа:
| QRegExp | rotationRolePattern() const |
| void | setRotationRolePattern(const QRegExp &pattern) |
Сигнал уведомления:
| void | rotationRolePatternChanged(const QRegExp &pattern) |
См. также rotationRole и rotationRoleReplace.
rotationRoleReplace : QString
Это свойство содержит содержимое для замены, которое используется вместе с шаблоном роли вращения.
По умолчанию — пустая строка. Для получения дополнительной информации о работе поиска и замены с использованием регулярных выражений см. документацию функции QString::replace(const QRegExp &rx, const QString &after).
Функции доступа:
| QString | rotationRoleReplace() const |
| void | setRotationRoleReplace(const QString &replace) |
Сигнал уведомления:
| void | rotationRoleReplaceChanged(const QString &replace) |
См. также rotationRole и rotationRolePattern.
xPosRole : QString
Это свойство содержит роль модели элемента, которая сопоставляется с положением по оси X.
Функции доступа:
| QString | xPosRole() const |
| void | setXPosRole(const QString &role) |
Сигнал уведомления:
| void | xPosRoleChanged(const QString &role) |
xPosRolePattern : QRegExp
Это свойство определяет, выполняется ли поиск и замена значения, сопоставленного с ролью положения по оси X, перед его использованием в качестве значения позиции элемента.
Это свойство указывает регулярное выражение для поиска части сопоставленного значения для замены, а свойство xPosRoleReplace содержит строку замены.
Функции доступа:
| QRegExp | xPosRolePattern() const |
| void | setXPosRolePattern(const QRegExp &pattern) |
Сигнал уведомления:
| void | xPosRolePatternChanged(const QRegExp &pattern) |
См. также xPosRole и xPosRoleReplace.
xPosRoleReplace : QString
Это свойство содержит содержимое для замены, которое используется вместе с шаблоном роли положения по оси X.
По умолчанию — пустая строка. Для получения дополнительной информации о работе поиска и замены с использованием регулярных выражений см. документацию функции QString::replace(const QRegExp &rx, const QString &after).
Функции доступа:
| QString | xPosRoleReplace() const |
| void | setXPosRoleReplace(const QString &replace) |
Сигнал уведомления:
| void | xPosRoleReplaceChanged(const QString &replace) |
См. также xPosRole и xPosRolePattern.
yPosRole : QString
Это свойство содержит роль модели элемента, которая сопоставляется с положением по оси Y.
Функции доступа:
| QString | yPosRole() const |
| void | setYPosRole(const QString &role) |
Сигнал уведомления:
| void | yPosRoleChanged(const QString &role) |
yPosRolePattern : QRegExp
Это свойство определяет, выполняется ли поиск и замена значения, сопоставленного с ролью положения по оси Y, перед его использованием в качестве значения позиции элемента.
Это свойство указывает регулярное выражение для поиска части сопоставленного значения для замены, а свойство yPosRoleReplace содержит строку замены.
Функции доступа:
| QRegExp | yPosRolePattern() const |
| void | setYPosRolePattern(const QRegExp &pattern) |
Сигнал уведомления:
| void | yPosRolePatternChanged(const QRegExp &pattern) |
См. также yPosRole и yPosRoleReplace.
yPosRoleReplace : QString
Это свойство содержит содержимое для замены, которое используется вместе с шаблоном роли положения по оси Y.
По умолчанию — пустая строка. Для получения дополнительной информации о работе поиска и замены с использованием регулярных выражений см. документацию функции QString::replace(const QRegExp &rx, const QString &after).
Функции доступа:
| QString | yPosRoleReplace() const |
| void | setYPosRoleReplace(const QString &replace) |
Сигнал уведомления:
| void | yPosRoleReplaceChanged(const QString &replace) |
См. также yPosRole и yPosRolePattern.
zPosRole : QString
Это свойство содержит роль элемента модели, которая отображается в положение Z.
Функции доступа:
| QString | zPosRole() const |
| void | setZPosRole(const QString &role) |
Сигнал уведомления:
| void | zPosRoleChanged(const QString &role) |
zPosRolePattern : QRegExp
Это свойство содержит информацию о том, выполняется ли поиск и замена значения, сопоставленного с ролью положения Z, перед его использованием в качестве значения позиции элемента.
Это свойство определяет регулярное выражение для поиска части отображаемого значения для замены, а свойство zPosRoleReplace содержит строку замены.
Функции доступа:
| QRegExp | zPosRolePattern() const |
| void | setZPosRolePattern(const QRegExp &pattern) |
Сигнал уведомления:
| void | zPosRolePatternChanged(const QRegExp &pattern) |
См. также zPosRole и zPosRoleReplace.
zPosRoleReplace : QString
Это свойство содержит заменяемое содержимое, используемое совместно с шаблоном роли положения Z.
По умолчанию пустая строка. Более подробную информацию о работе поиска и замены с использованием регулярных выражений см. в документации функции QString::replace(const QRegExp &rx, const QString &after).
Функции доступа:
| QString | zPosRoleReplace() const |
| void | setZPosRoleReplace(const QString &replace) |
Сигнал уведомления:
| void | zPosRoleReplaceChanged(const QString &replace) |
См. также zPosRole и zPosRolePattern.
Документация по функциям-членам
QItemModelScatterDataProxy::QItemModelScatterDataProxy(QObject *parent = Q_NULLPTR)
Создаёт QItemModelScatterDataProxy с необязательным параметром parent.
QItemModelScatterDataProxy::QItemModelScatterDataProxy(QAbstractItemModel *itemModel, QObject *parent = Q_NULLPTR)
Создаёт QItemModelScatterDataProxy с параметром itemModel и необязательным параметром parent. Прокси не берёт во владение itemModel, так как модели элементов обычно принадлежат другим элементам управления.
QItemModelScatterDataProxy::QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, QObject *parent = Q_NULLPTR)
Создаёт QItemModelScatterDataProxy с параметром itemModel и необязательным параметром parent. Прокси не берёт во владение itemModel, так как модели элементов обычно принадлежат другим элементам управления. Свойство xPosRole устанавливается в xPosRole, свойство yPosRole в yPosRole, а свойство zPosRole в zPosRole.
QItemModelScatterDataProxy::QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, const QString &rotationRole, QObject *parent = Q_NULLPTR)
Создаёт QItemModelScatterDataProxy с параметром itemModel и необязательным параметром parent. Прокси не берёт во владение itemModel, так как модели элементов обычно принадлежат другим элементам управления. Свойство xPosRole устанавливается в xPosRole, свойство yPosRole в yPosRole, свойство zPosRole в zPosRole, и свойство rotationRole в rotationRole.
[virtual] QItemModelScatterDataProxy::~QItemModelScatterDataProxy()
Уничтожает QItemModelScatterDataProxy.
void QItemModelScatterDataProxy::remap(const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, const QString &rotationRole)
Изменяет сопоставления xPosRole, yPosRole, zPosRole и rotationRole.
void QItemModelScatterDataProxy::setItemModel(QAbstractItemModel *itemModel)
Устанавливает itemModel в качестве модели элементов для Q3DScatter. Не берёт модель во владение, но подключается к ней, чтобы следить за изменениями.
Примечание: Функция-сеттер для свойства itemModel.
См. также itemModel().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qitemmodelscatterdataproxy.html