QValue3DAxisFormatter Class
Die Klasse QValue3DAxisFormatter ist eine Basisklasse für Wertachsenformatierer. Mehr...
Kopfzeile: | #include <QValue3DAxisFormatter> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
qmake: | QT += datavisualization |
Since: | QtDataVisualization 1.1 |
In QML: | ValueAxis3DFormatter |
Vererbt: | QObject |
Vererbt von: |
Öffentliche Funktionen
QValue3DAxisFormatter(QObject *parent = nullptr) | |
virtual | ~QValue3DAxisFormatter() |
Geschützte Funktionen
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 |
Detaillierte Beschreibung
Diese Klasse bietet Formatierungsregeln für eine lineare 3D-Werteachse. Sie ist eine Unterklasse, wenn Sie benutzerdefinierte Wertachsen implementieren möchten.
Die Basisklasse hat keine öffentliche API außer Konstruktoren und Destruktoren. Sie ist nur für den internen Gebrauch gedacht. Unterklassen können jedoch bei Bedarf öffentliche Eigenschaften implementieren.
Siehe auch QValue3DAxis und QLogValue3DAxisFormatter.
Dokumentation der Mitgliedsfunktionen
[explicit]
QValue3DAxisFormatter::QValue3DAxisFormatter(QObject *parent = nullptr)
Konstruiert einen neuen 3D-Achsenformatierer mit dem optionalen Elternteil parent.
[virtual noexcept]
QValue3DAxisFormatter::~QValue3DAxisFormatter()
Löscht den Wert 3D-Achsenformatierer.
[protected]
bool QValue3DAxisFormatter::allowNegatives() const
Gibt true
zurück, wenn negative Werte gültige Werte für die übergeordnete Achse sind. Die Standardimplementierung gibt immer true
zurück.
Siehe auch setAllowNegatives().
[protected]
bool QValue3DAxisFormatter::allowZero() const
Gibt true
zurück, wenn Null ein gültiger Wert für die übergeordnete Achse ist. Die Standardimplementierung gibt immer true
zurück.
Siehe auch setAllowZero().
[protected]
QValue3DAxis *QValue3DAxisFormatter::axis() const
Gibt die übergeordnete Achse zurück. Auf die übergeordnete Achse darf nur in der Methode recalculate() zugegriffen werden, um die Thread-Sicherheit in Umgebungen mit einem Thread-Renderer zu gewährleisten.
Siehe auch recalculate().
[virtual protected]
QValue3DAxisFormatter *QValue3DAxisFormatter::createNewInstance() const
Erzeugt einen neuen 3D-Achsenformatierer mit leerem Wert. Muss in einer Unterklasse reimplementiert werden.
Gibt den neuen Formatierer zurück. Der Renderer verwendet diese Methode, um eine Kopie des Formatierers zwischenzuspeichern. Das Eigentum an der neuen Kopie wird an den Aufrufer übertragen.
[protected]
QList<float> &QValue3DAxisFormatter::gridPositions() const
Gibt einen Verweis auf das Array der normalisierten Gitterlinienpositionen zurück. Die Standardgröße des Arrays ist gleich der Segmentanzahl der übergeordneten Achse plus eins, aber eine unterklassige Implementierung der Methode recalculate() kann die Größe des Arrays anders anpassen. Die Werte sollten zwischen 0.0
(dem Minimalwert) und 1.0
(dem Maximalwert) einschließlich liegen.
Siehe auch QValue3DAxis::segmentCount und recalculate().
[protected]
QList<float> &QValue3DAxisFormatter::labelPositions() const
Gibt einen Verweis auf das Array der normalisierten Etikettenpositionen zurück. Die Standardgröße des Arrays entspricht der Segmentanzahl der übergeordneten Achse plus eins, aber eine unterklassige Implementierung der Methode recalculate() kann die Größe des Arrays anders anpassen. Die Werte sollten zwischen 0.0
(dem Mindestwert) und 1.0
(dem Höchstwert) liegen. Standardmäßig entspricht die Beschriftung mit dem Index Null dem Mindestwert der Achse.
Siehe auch QValue3DAxis::segmentCount, QAbstract3DAxis::labels, und recalculate().
[protected]
QStringList &QValue3DAxisFormatter::labelStrings() const
Gibt einen Verweis auf die String-Liste zurück, die die Beschriftungsstrings des Formatierers enthält. Die Größe des Arrays muss gleich der Größe des Arrays für die Etikettenpositionen sein, dem auch die Indizes entsprechen.
Siehe auch labelPositions().
[protected]
QLocale QValue3DAxisFormatter::locale() const
Gibt das aktuelle Gebietsschema zurück, das dieser Formatierer verwendet.
Siehe auch setLocale().
[protected]
void QValue3DAxisFormatter::markDirty(bool labelsChange = false)
Markiert diesen Formatter als schmutzig und fordert den Renderer auf, bei der nächsten Synchronisierung des Renderers eine neue Kopie seines Caches zu erstellen. Diese Methode sollte von einer Unterklasse immer dann aufgerufen werden, wenn der Formatierer in einer Weise geändert wird, die die aufgelösten Werte beeinflusst. Setzen Sie labelsChange auf true
, wenn die Änderung die Neugenerierung der übergeordneten Achsenbeschriftungszeichenfolgen erfordert.
[virtual protected]
void QValue3DAxisFormatter::populateCopy(QValue3DAxisFormatter ©) const
Kopiert alle Werte, die für die Auflösung von Positionen, Werten und Zeichenketten mit diesem Formatierer erforderlich sind, auf die Seite copy des Formatierers. Wenn Sie diese Methode in einer Unterklasse reimplementieren, rufen Sie irgendwann die Version der Oberklasse auf. Der Renderer verwendet diese Methode, um eine Kopie des Formatierers zwischenzuspeichern.
Gibt die neue Kopie zurück. Das Eigentum an der neuen Kopie geht auf den Aufrufer über.
[virtual protected]
float QValue3DAxisFormatter::positionAt(float value) const
Gibt die normalisierte Position entlang der Achse für die angegebene value zurück. Der zurückgegebene Wert sollte zwischen 0.0
(dem Minimalwert) und 1.0
(dem Maximalwert) einschließlich liegen, wenn der Wert innerhalb des Bereichs der übergeordneten Achse liegt.
Implementieren Sie diese Methode neu, wenn die Position nicht durch lineare Interpolation zwischen dem Minimal- und Maximalwert der übergeordneten Achse aufgelöst werden kann.
Siehe auch recalculate() und valueAt().
[virtual protected]
void QValue3DAxisFormatter::recalculate()
Ändert die Größe und füllt die Arrays für die Position der Beschriftung und der Rasterlinien sowie das Array für die Beschriftungszeichenfolgen auf und berechnet alle Werte, die für die Zuordnung eines Wertes zu seiner Position erforderlich sind. Auf die übergeordnete Achse kann von dieser Funktion aus zugegriffen werden.
Diese Methode muss in einer Unterklasse neu implementiert werden, wenn die Standard-Array-Inhalte nicht geeignet sind.
Siehe gridPositions(), subGridPositions(), labelPositions() und labelStrings() Methoden für die Dokumentation der Arrays, die neu dimensioniert und gefüllt werden müssen.
Siehe auch gridPositions(), subGridPositions(), labelPositions(), labelStrings(), und axis().
[protected]
void QValue3DAxisFormatter::setAllowNegatives(bool allow)
Ermöglicht es der übergeordneten Achse, negative Werte zu haben, wenn allow true
ist.
Siehe auch allowNegatives().
[protected]
void QValue3DAxisFormatter::setAllowZero(bool allow)
Ermöglicht, dass die übergeordnete Achse einen Nullwert hat, wenn allow true
ist.
Siehe auch allowZero().
[protected]
void QValue3DAxisFormatter::setLocale(const QLocale &locale)
Legt die locale fest, die dieser Formatierer verwendet. Das Diagramm setzt das Gebietsschema des Formatierers automatisch auf das Gebietsschema des Diagramms, wenn die übergeordnete Achse als aktive Achse des Diagramms festgelegt wird, der Achsenformatierer auf eine an das Diagramm angehängte Achse gesetzt wird oder sich das Gebietsschema des Diagramms ändert.
Siehe auch locale() und QAbstract3DGraph::locale.
[virtual protected]
QString QValue3DAxisFormatter::stringForValue(qreal value, const QString &format) const
Gibt die formatierte Beschriftungszeichenfolge unter Verwendung der angegebenen value und format zurück.
Reimplementieren Sie diese Methode in einer Unterklasse, um die formatierte Zeichenkette für eine gegebene value aufzulösen, wenn die für die Eigenschaft QValue3DAxis::labelFormat angegebenen Standardformatierungsregeln nicht ausreichend sind.
Siehe auch recalculate(), labelStrings(), und QValue3DAxis::labelFormat.
[protected]
QList<float> &QValue3DAxisFormatter::subGridPositions() const
Gibt einen Verweis auf das Array der normalisierten Positionen der Teilgitterlinien zurück. Die Standardgröße des Arrays entspricht der Anzahl der Segmente der übergeordneten Achse mal der Anzahl der Untersegmente der übergeordneten Achse minus eins, aber eine unterklassige Implementierung der Methode recalculate() kann die Größe des Arrays anders anpassen. Die Werte sollten zwischen 0.0
(dem Minimalwert) und 1.0
(dem Maximalwert) einschließlich liegen.
Siehe auch QValue3DAxis::segmentCount, QValue3DAxis::subSegmentCount, und recalculate().
[virtual protected]
float QValue3DAxisFormatter::valueAt(float position) const
Gibt den Wert an der normierten position entlang der Achse zurück. Der Wert position sollte zwischen 0.0
(dem Mindestwert) und 1.0
(dem Höchstwert) liegen, um Werte innerhalb des Bereichs der übergeordneten Achse zu erhalten.
Implementieren Sie diese Methode neu, wenn der Wert nicht durch lineare Interpolation zwischen dem Minimal- und Maximalwert der übergeordneten Achse aufgelöst werden kann.
Siehe auch recalculate() und positionAt().
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.