Класс QValue3DAxisFormatter
Класс QValue3DAxisFormatter — базовый класс для форматировщиков осей значений. Подробнее...
| Заголовок: | #include <QValue3DAxisFormatter> |
| С версии: | QtDataVisualization 1.1 |
| Создается классом: | ValueAxis3DFormatter |
| Наследует от: | QObject |
| Наследуется: |
Открытые функции
| QValue3DAxisFormatter(QObject *parent = nullptr) | |
| virtual | ~QValue3DAxisFormatter() |
Защищенные функции
| bool | allowNegatives() const |
| bool | allowZero() const |
| QValue3DAxis * | axis() const |
| virtual QValue3DAxisFormatter * | createNewInstance() const |
| QList<float> & | gridPositions() const |
| QList<float> & | labelPositions() const |
| QStringList & | labelStrings() const |
| QLocale | locale() const |
| void | markDirty(bool labelsChange = false) |
| virtual void | populateCopy(QValue3DAxisFormatter ©) const |
| virtual float | positionAt(float value) const |
| virtual void | recalculate() |
| void | setAllowNegatives(bool allow) |
| void | setAllowZero(bool allow) |
| void | setLocale(const QLocale &locale) |
| virtual QString | stringForValue(qreal value, const QString &format) const |
| QList<float> & | subGridPositions() const |
| virtual float | valueAt(float position) const |
Подробное описание
Этот класс предоставляет правила форматирования для линейной оси значений 3D. Наследуйте от него, если хотите реализовать пользовательские оси значений.
Базовый класс не имеет публичного API за пределами конструкторов и деструкторов. Он предназначен только для внутреннего использования. Однако подклассы могут реализовывать публичные свойства по мере необходимости.
См. также QValue3DAxis и QLogValue3DAxisFormatter.
Документация по функциям-членам
QValue3DAxisFormatter::QValue3DAxisFormatter(QObject *parent = nullptr)
Создает новый форматировщик оси значений 3D с необязательным родителем parent.
[virtual] QValue3DAxisFormatter::~QValue3DAxisFormatter()
Удаляет форматировщик оси значений 3D.
[protected] bool QValue3DAxisFormatter::allowNegatives() const
Возвращает true, если отрицательные значения являются допустимыми значениями для родительской оси. Реализация по умолчанию всегда возвращает true.
См. также setAllowNegatives().
[protected] bool QValue3DAxisFormatter::allowZero() const
Возвращает true, если ноль является допустимым значением для родительской оси. Реализация по умолчанию всегда возвращает true.
См. также setAllowZero().
[protected] QValue3DAxis *QValue3DAxisFormatter::axis() const
Возвращает родительскую ось. К родительской оси следует обращаться только в методе recalculate() для обеспечения безопасности потоков в средах, использующих многопоточный рендер.
См. также recalculate().
[virtual protected] QValue3DAxisFormatter *QValue3DAxisFormatter::createNewInstance() const
Создает новый пустой форматировщик оси значений 3D. Должен быть переопределён в подклассе.
Возвращает новый форматировщик. Рендер использует этот метод для кэширования копии форматировщика. Владение новой копией передается вызывающей стороне.
[protected] QList<float> &QValue3DAxisFormatter::gridPositions() const
Возвращает ссылку на массив нормализованных позиций линий сетки. Размер массива по умолчанию равен количеству сегментов родительской оси плюс один, но подклассы могут изменять размер массива в методе recalculate(). Значения должны находиться в диапазоне от 0.0 (минимальное значение) до 1.0 (максимальное значение), включительно.
См. также QValue3DAxis::segmentCount и recalculate().
[protected] QList<float> &QValue3DAxisFormatter::labelPositions() const
Возвращает ссылку на массив нормализованных позиций меток. Размер массива по умолчанию равен количеству сегментов родительской оси плюс один, но подклассы могут изменять размер массива в методе recalculate(). Значения должны находиться в диапазоне от 0.0 (минимальное значение) до 1.0 (максимальное значение), включительно. По умолчанию метка с индексом ноль соответствует минимальному значению оси.
См. также QValue3DAxis::segmentCount, QAbstract3DAxis::labels и recalculate().
[protected] QStringList &QValue3DAxisFormatter::labelStrings() const
Возвращает ссылку на список строк, содержащих строки меток форматировщика. Размер массива должен быть равен размеру массива позиций меток, а индексы также должны соответствовать.
См. также labelPositions().
[protected] QLocale QValue3DAxisFormatter::locale() const
Возвращает текущий используемый локаль форматировщика.
См. также setLocale().
[protected] void QValue3DAxisFormatter::markDirty(bool labelsChange = false)
Помечает форматировщик как изменённый, что побуждает рендерер создать новую копию своего кэша при следующей синхронизации. Этот метод должен вызываться подклассом всякий раз, когда форматировщик изменяется таким образом, что это влияет на результирующие значения. Установите labelsChange в true если изменение требует перегенерации строк меток родительской оси.
[virtual protected] void QValue3DAxisFormatter::populateCopy(QValue3DAxisFormatter ©) const
Копирует все необходимые значения для определения позиций, значений и строк с помощью этого форматировщика в копию форматировщика copy. При переопределении этого метода в подклассе необходимо вызвать версию суперкласса в какой-то момент. Рендер использует этот метод для кэширования копии форматировщика.
END_OF_DOCUMENT_MARKERВозвращает новую копию. Владение новой копией передаётся вызывающему объекту.
[virtual protected] float QValue3DAxisFormatter::positionAt(float value) const
Возвращает нормализованную позицию вдоль оси для данного значения value. Возвращаемое значение должно быть между 0.0 (минимальное значение) и 1.0 (максимальное значение), включительно, если значение находится в диапазоне родительской оси.
Переопределите этот метод, если позицию нельзя определить с помощью линейной интерполяции между минимальным и максимальным значениями родительской оси.
См. также recalculate() и valueAt().
[virtual protected] void QValue3DAxisFormatter::recalculate()
Изменяет размер и заполняет массивы позиций меток и линий сетки, а также массив строк меток, а также вычисляет любые значения, необходимые для сопоставления значения с его позицией. Родительскую ось можно получить внутри этой функции.
Этот метод должен быть переопределён в подклассе, если содержимое массивов по умолчанию не подходит.
См. методы gridPositions(), subGridPositions(), labelPositions() и labelStrings() для документации о массивах, которые нужно изменить размер и заполнить.
См. также gridPositions(), subGridPositions(), labelPositions(), labelStrings() и axis().
[protected] void QValue3DAxisFormatter::setAllowNegatives(bool allow)
Разрешает родительской оси иметь отрицательные значения, если allow равно true.
См. также allowNegatives().
[protected] void QValue3DAxisFormatter::setAllowZero(bool allow)
Разрешает родительской оси иметь значение ноль, если allow равно true.
См. также allowZero().
[protected] void QValue3DAxisFormatter::setLocale(const QLocale &locale)
Устанавливает locale, используемый этим форматировщиком. График автоматически устанавливает locale форматировщика на locale графика всякий раз, когда родительская ось устанавливается как активная ось графика, форматировщик оси назначается оси, присоединённой к графику, или меняется locale графика.
См. также locale() и QAbstract3DGraph::locale.
[virtual protected] QString QValue3DAxisFormatter::stringForValue(qreal value, const QString &format) const
Возвращает отформатированную строку метки, используя указанное значение value и формат format.
Переопределите этот метод в подклассе, чтобы получить отформатированную строку для данного значения value, если правила форматирования по умолчанию, указанные для свойства QValue3DAxis::labelFormat, недостаточны.
См. также recalculate(), labelStrings() и QValue3DAxis::labelFormat.
[protected] QList<float> &QValue3DAxisFormatter::subGridPositions() const
Возвращает ссылку на массив нормализованных позиций линий подсеток. Размер массива по умолчанию равен количеству сегментов родительской оси умноженному на количество подсегментов родительской оси минус единицу, но реализация метода recalculate() в подклассе может изменить размер массива. Значения должны быть между 0.0 (минимальное значение) и 1.0 (максимальное значение), включительно.
См. также QValue3DAxis::segmentCount, QValue3DAxis::subSegmentCount и recalculate().
[virtual protected] float QValue3DAxisFormatter::valueAt(float position) const
Возвращает значение в нормализованной position вдоль оси. Значение position должно быть между 0.0 (минимальное значение) и 1.0 (максимальное значение), включительно, чтобы получить значения в пределах диапазона родительской оси.
Переопределите этот метод, если значение нельзя определить с помощью линейной интерполяции между минимальным и максимальным значениями родительской оси.
См. также recalculate() и positionAt().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qvalue3daxisformatter.html