Spec-Zone.ru › Qt 5.14

Класс QItemModelScatterDataProxy

Прокси-класс для представления данных в моделях элементов с Q3DScatter. Подробнее...

Заголовок: #include <QItemModelScatterDataProxy>
С момента версии: QtDataVisualization 1.0
Создаётся: ItemModelScatterDataProxy
Наследует: QScatterDataProxy

Этот класс был введен в QtDataVisualization 1.0.

  • Список всех членов, включая унаследованные члены

Свойства

  • itemModel : QAbstractItemModel*
  • rotationRole : QString
  • rotationRolePattern : QRegExp
  • rotationRoleReplace : QString
  • xPosRole : QString
  • xPosRolePattern : QRegExp
  • xPosRoleReplace : QString
  • yPosRole : QString
  • yPosRolePattern : QRegExp
  • yPosRoleReplace : QString
  • zPosRole : QString
  • zPosRolePattern : QRegExp
  • zPosRoleReplace : QString

Открытые функции

QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, const QString &rotationRole, QObject *parent = nullptr)
QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, QObject *parent = nullptr)
QItemModelScatterDataProxy(QAbstractItemModel *itemModel, QObject *parent = nullptr)
QItemModelScatterDataProxy(QObject *parent = 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

Сигналы

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)

Подробное описание

QItemModelScatterDataProxy позволяет использовать модели, производные от QAbstractItemModel, в качестве источника данных для Q3DScatter. Она сопоставляет роли QAbstractItemModel с X-, Y- и Z-координатами точек 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.

См. также Обработка данных Qt Data Visualization.

Свойства

itemModel : QAbstractItemModel*

Это свойство содержит модель элементов, которая используется в качестве источника данных для трехмерной точечной диаграммы.

Функции доступа:

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(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, const QString &rotationRole, QObject *parent = nullptr)

Создаёт QItemModelScatterDataProxy с itemModel и необязательным parent. Прокси не получает владения itemModel, так как модели элементов обычно владеют другими элементами управления. Свойство xPosRole устанавливается в xPosRole, свойство yPosRole в yPosRole, свойство zPosRole в zPosRole, и свойство rotationRole в rotationRole.

QItemModelScatterDataProxy::QItemModelScatterDataProxy(QAbstractItemModel *itemModel, const QString &xPosRole, const QString &yPosRole, const QString &zPosRole, QObject *parent = nullptr)

Создаёт QItemModelScatterDataProxy с itemModel и необязательным parent. Прокси не получает владения itemModel, так как модели элементов обычно владеют другими элементами управления. Свойство xPosRole устанавливается в xPosRole, свойство yPosRole в yPosRole, и свойство zPosRole в zPosRole.

QItemModelScatterDataProxy::QItemModelScatterDataProxy(QAbstractItemModel *itemModel, QObject *parent = nullptr)

Создаёт QItemModelScatterDataProxy с itemModel и необязательным parent. Прокси не получает владения itemModel, так как модели элементов обычно владеют другими элементами управления.

QItemModelScatterDataProxy::QItemModelScatterDataProxy(QObject *parent = nullptr)

Создаёт QItemModelScatterDataProxy с необязательным parent.

[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.14/qitemmodelscatterdataproxy.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API