QAbstract3DGraph Class
Die Klasse „QAbstract3DGraph“ stellt ein Fenster und eine Render-Schleife für Grafiken bereit. Mehr...
| Header: | #include <QAbstract3DGraph> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
| qmake: | QT += datavisualization |
| Seit: | QtDataVisualization 1.0 |
| Erbt von: | QWindow sowie „ QOpenGLFunctions “ (geschützt) |
| Vererbt an: | Q3DBars, „ Q3DScatter “ und Q3DSurface |
| Status: | Veraltet |
Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.
Öffentliche Typen
(since QtDataVisualization 1.1) enum | ElementType { ElementNone, ElementSeries, ElementAxisXLabel, ElementAxisYLabel, ElementAxisZLabel, ElementCustomItem } |
(since Qt Data Visualization 1.1) enum | OptimizationHint { OptimizationDefault, OptimizationStatic } |
| flags | OptimizationHints |
| enum | SelectionFlag { SelectionNone, SelectionItem, SelectionRow, SelectionItemAndRow, SelectionColumn, …, SelectionMultiSeries } |
| flags | SelectionFlags |
| enum | ShadowQuality { ShadowQualityNone, ShadowQualityLow, ShadowQualityMedium, ShadowQualityHigh, ShadowQualitySoftLow, …, ShadowQualitySoftHigh } |
Eigenschaften
|
|
Öffentliche Funktionen
| virtual | ~QAbstract3DGraph() |
| QAbstract3DInputHandler * | activeInputHandler() const |
| Q3DTheme * | activeTheme() const |
(since QtDataVisualization 1.1) int | addCustomItem(QCustom3DItem *item) |
| void | addInputHandler(QAbstract3DInputHandler *inputHandler) |
| void | addTheme(Q3DTheme *theme) |
| qreal | aspectRatio() const |
| void | clearSelection() |
| qreal | currentFps() const |
(since QtDataVisualization 1.2) QList<QCustom3DItem *> | customItems() const |
| bool | hasContext() const |
(since 6.3) bool | hasSeries(QAbstract3DSeries *series) const |
| qreal | horizontalAspectRatio() const |
| QList<QAbstract3DInputHandler *> | inputHandlers() const |
| bool | isOrthoProjection() const |
| bool | isPolar() const |
| bool | isReflection() const |
| QLocale | locale() const |
| qreal | margin() const |
| bool | measureFps() const |
| QAbstract3DGraph::OptimizationHints | optimizationHints() const |
| QVector3D | queriedGraphPosition() const |
| float | radialLabelOffset() const |
| qreal | reflectivity() const |
(since QtDataVisualization 1.1) void | releaseCustomItem(QCustom3DItem *item) |
| void | releaseInputHandler(QAbstract3DInputHandler *inputHandler) |
| void | releaseTheme(Q3DTheme *theme) |
(since QtDataVisualization 1.1) void | removeCustomItem(QCustom3DItem *item) |
(since QtDataVisualization 1.1) void | removeCustomItemAt(const QVector3D &position) |
(since QtDataVisualization 1.1) void | removeCustomItems() |
(since QtDataVisualization 1.1) QImage | renderToImage(int msaaSamples = 0, const QSize &imageSize = QSize()) |
| Q3DScene * | scene() const |
(since QtDataVisualization 1.1) QAbstract3DAxis * | selectedAxis() const |
(since QtDataVisualization 1.1) QCustom3DItem * | selectedCustomItem() const |
(since QtDataVisualization 1.1) int | selectedCustomItemIndex() const |
| QAbstract3DGraph::ElementType | selectedElement() const |
(since QtDataVisualization 1.1) int | selectedLabelIndex() const |
| QAbstract3DGraph::SelectionFlags | selectionMode() const |
| void | setActiveInputHandler(QAbstract3DInputHandler *inputHandler) |
| void | setActiveTheme(Q3DTheme *theme) |
| void | setAspectRatio(qreal ratio) |
| void | setHorizontalAspectRatio(qreal ratio) |
| void | setLocale(const QLocale &locale) |
| void | setMargin(qreal margin) |
| void | setMeasureFps(bool enable) |
| void | setOptimizationHints(QAbstract3DGraph::OptimizationHints hints) |
| void | setOrthoProjection(bool enable) |
| void | setPolar(bool enable) |
| void | setRadialLabelOffset(float offset) |
| void | setReflection(bool enable) |
| void | setReflectivity(qreal reflectivity) |
| void | setSelectionMode(QAbstract3DGraph::SelectionFlags mode) |
| void | setShadowQuality(QAbstract3DGraph::ShadowQuality quality) |
| QAbstract3DGraph::ShadowQuality | shadowQuality() const |
| virtual bool | shadowsSupported() const |
| QList<Q3DTheme *> | themes() const |
Signale
| void | activeInputHandlerChanged(QAbstract3DInputHandler *inputHandler) |
| void | activeThemeChanged(Q3DTheme *theme) |
| void | aspectRatioChanged(qreal ratio) |
| void | currentFpsChanged(qreal fps) |
| void | horizontalAspectRatioChanged(qreal ratio) |
| void | localeChanged(const QLocale &locale) |
| void | marginChanged(qreal margin) |
| void | measureFpsChanged(bool enabled) |
| void | optimizationHintsChanged(QAbstract3DGraph::OptimizationHints hints) |
| void | orthoProjectionChanged(bool enabled) |
| void | polarChanged(bool enabled) |
| void | queriedGraphPositionChanged(const QVector3D &data) |
| void | radialLabelOffsetChanged(float offset) |
| void | reflectionChanged(bool enabled) |
| void | reflectivityChanged(qreal reflectivity) |
| void | selectedElementChanged(QAbstract3DGraph::ElementType type) |
| void | selectionModeChanged(QAbstract3DGraph::SelectionFlags mode) |
| void | shadowQualityChanged(QAbstract3DGraph::ShadowQuality quality) |
Zugehörige Nicht-Mitglieder
| QSurfaceFormat | qDefaultSurfaceFormat(bool antialias) |
Detaillierte Beschreibung
Diese Klasse ist eine Unterklasse von „ QWindow “ und stellt eine Render-Schleife für Diagramme bereit, die von ihr erben.
Sie sollten diese Klasse nicht direkt verwenden, sondern stattdessen eine ihrer Unterklassen.
Anti-Aliasing ist in C++ standardmäßig aktiviert, außer in OpenGL-ES2-Umgebungen, in denen Anti-Aliasing von ` Qt Data Visualization` nicht unterstützt wird. Um für ein Diagramm ein vom Standard abweichendes Anti-Aliasing festzulegen, übergeben Sie ein benutzerdefiniertes Oberflächenformat als Konstruktorparameter. Sie können die Hilfsfunktion ` qDefaultSurfaceFormat() ` verwenden, um das Oberflächenformat-Objekt zu erstellen.
Hinweis: QAbstract3DGraph setzt standardmäßig das Fensterflag ` Qt::FramelessWindowHint `. Wenn Sie Diagrammfenster als eigenständige Fenster mit normalem Fensterrahmen anzeigen möchten, setzen Sie dieses Flag nach der Erstellung des Diagramms zurück. Beispiel:
Siehe auch „ Q3DBars“ , „ Q3DScatter “, „ Q3DSurface “ und Qt Data Visualization C++ Classes.
Dokumentation zu Mitgliedstypen
[since QtDataVisualization 1.1] enum QAbstract3DGraph::ElementType
Typ eines Elements im Diagramm.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAbstract3DGraph::ElementNone | 0 | Kein definiertes Element. |
QAbstract3DGraph::ElementSeries | 1 | Eine Reihe (d. h. ein Element einer Reihe). |
QAbstract3DGraph::ElementAxisXLabel | 2 | Die Beschriftung der x-Achse. |
QAbstract3DGraph::ElementAxisYLabel | 3 | Die Beschriftung der y-Achse. |
QAbstract3DGraph::ElementAxisZLabel | 4 | Die Beschriftung der z-Achse. |
QAbstract3DGraph::ElementCustomItem | 5 | Ein benutzerdefiniertes Element. |
Diese Enumeration wurde in QtDataVisualization 1.1 eingeführt.
[since Qt Data Visualization 1.1] enum QAbstract3DGraph::OptimizationHint
flags QAbstract3DGraph::OptimizationHints
Der Optimierungstipp für die Darstellung.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAbstract3DGraph::OptimizationDefault | 0 | Bietet den vollen Funktionsumfang bei angemessener Leistung. |
QAbstract3DGraph::OptimizationStatic | 1 | Optimiert die Darstellung statischer Datensätze auf Kosten einiger Funktionen. |
Diese Enumeration wurde in „ Qt Data Visualization “ 1.1 eingeführt.
Der Typ „OptimizationHints“ ist ein „typedef“ für „QFlags<OptimizationHint>“. Er speichert eine ODER-Kombination von „OptimizationHint“-Werten.
enum QAbstract3DGraph::SelectionFlag
flags QAbstract3DGraph::SelectionFlags
Auswahlmodi für Elemente. Die Werte dieser Aufzählung können mit dem OR-Operator kombiniert werden.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAbstract3DGraph::SelectionNone | 0 | Auswahlmodus deaktiviert. |
QAbstract3DGraph::SelectionItem | 1 | Bei der Auswahl wird ein einzelnes Element hervorgehoben. |
QAbstract3DGraph::SelectionRow | 2 | Bei der Auswahl wird eine einzelne Zeile hervorgehoben. |
QAbstract3DGraph::SelectionItemAndRow | SelectionItem | SelectionRow | Kombinationsflag zum Hervorheben sowohl des Elements als auch der Zeile mit unterschiedlichen Farben. |
QAbstract3DGraph::SelectionColumn | 4 | Die Auswahl hebt eine einzelne Spalte hervor. |
QAbstract3DGraph::SelectionItemAndColumn | SelectionItem | SelectionColumn | Kombinationsflag zum Hervorheben von Element und Spalte in unterschiedlichen Farben. |
QAbstract3DGraph::SelectionRowAndColumn | SelectionRow | SelectionColumn | Kombinationsflag zum Hervorheben von Zeile und Spalte. |
QAbstract3DGraph::SelectionItemRowAndColumn | SelectionItem | SelectionRow | SelectionColumn | Kombinationsflag zum Hervorheben von Element, Zeile und Spalte. |
QAbstract3DGraph::SelectionSlice | 8 | Das Setzen dieses Modus-Flags bedeutet, dass das Diagramm die Handhabung der Schnittansicht automatisch übernehmen soll. Wenn Sie die Slice-Ansicht selbst über Q3DScene steuern möchten, setzen Sie dieses Flag nicht. Wenn Sie dieses Modus-Flag setzen, muss entweder „ SelectionRow “ oder „ SelectionColumn “ gesetzt sein, jedoch nicht beides. Das Slicing wird nur von Q3DBars und Q3DSurface unterstützt. Wenn dieses Flag gesetzt ist, wird der Slice-Modus in den folgenden Situationen aktiviert:
|
QAbstract3DGraph::SelectionMultiSeries | 16 | Das Setzen dieses Modus bedeutet, dass Elemente aller Reihen an derselben Position hervorgehoben werden, anstatt nur des ausgewählten Elements. Die tatsächliche Auswahl in den anderen Reihen ändert sich nicht. Beim Setzen dieses Modus-Flags muss zusätzlich eines oder mehrere der grundlegenden Auswahl-Flags (SelectionItem, SelectionRow oder SelectionColumn) gesetzt sein. Die Auswahl mehrerer Reihen wird für Q3DScatter nicht unterstützt. |
Der Typ „SelectionFlags“ ist ein `typedef` für ` QFlags<SelectionFlag>`. Er speichert eine ODER-Kombination von „SelectionFlag“-Werten.
enum QAbstract3DGraph::ShadowQuality
Qualität der Schatten.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAbstract3DGraph::ShadowQualityNone | 0 | Schatten sind deaktiviert. |
QAbstract3DGraph::ShadowQualityLow | 1 | Schatten werden in geringer Qualität gerendert. |
QAbstract3DGraph::ShadowQualityMedium | 2 | Schatten werden in mittlerer Qualität gerendert. |
QAbstract3DGraph::ShadowQualityHigh | 3 | Schatten werden in hoher Qualität dargestellt. |
QAbstract3DGraph::ShadowQualitySoftLow | 4 | Schatten werden in niedriger Qualität mit weichen Kanten dargestellt. |
QAbstract3DGraph::ShadowQualitySoftMedium | 5 | Schatten werden in mittlerer Qualität mit weichen Kanten dargestellt. |
QAbstract3DGraph::ShadowQualitySoftHigh | 6 | Schatten werden in hoher Qualität mit weichen Kanten dargestellt. |
Eigenschaftsdokumentation
activeInputHandler : QAbstract3DInputHandler*
Diese Eigenschaft enthält den aktiven Eingabe-Handler, der im Diagramm verwendet wird.
Zugriffsfunktionen:
| QAbstract3DInputHandler * | activeInputHandler() const |
| void | setActiveInputHandler(QAbstract3DInputHandler *inputHandler) |
Notifier-Signal:
| void | activeInputHandlerChanged(QAbstract3DInputHandler *inputHandler) |
activeTheme : Q3DTheme*
Diese Eigenschaft enthält das aktive Thema des Diagramms.
Zugriffsfunktionen:
| Q3DTheme * | activeTheme() const |
| void | setActiveTheme(Q3DTheme *theme) |
Benachrichtigungssignal:
| void | activeThemeChanged(Q3DTheme *theme) |
[since QtDataVisualization 1.1] aspectRatio : qreal
Diese Eigenschaft gibt das Skalierungsverhältnis des Diagramms zwischen der längsten Achse auf der horizontalen Ebene und der y-Achse an.
Standardwert ist „ 2.0 “.
Hinweis: Hat keine Auswirkung auf Q3DBars.
Diese Aufzählung wurde in QtDataVisualization 1.1 eingeführt.
Zugriffsfunktionen:
| qreal | aspectRatio() const |
| void | setAspectRatio(qreal ratio) |
Notifier-Signal:
| void | aspectRatioChanged(qreal ratio) |
Siehe auch horizontalAspectRatio.
[read-only, since QtDataVisualization 1.1] currentFps : qreal
Diese Eigenschaft enthält die Darstellungsergebnisse der letzten Sekunde.
Die Ergebnisse werden in dieser schreibgeschützten Eigenschaft gespeichert, wenn die FPS-Messung aktiviert ist. Es dauert mindestens eine Sekunde, bis dieser Wert nach Aktivierung der Messung aktualisiert wird.
Diese Enumeration wurde in QtDataVisualization 1.1 eingeführt.
Zugriffsfunktionen:
| qreal | currentFps() const |
Notifier-Signal:
| void | currentFpsChanged(qreal fps) |
Siehe auch „ measureFps “.
[since QtDataVisualization 1.2] horizontalAspectRatio : qreal
Diese Eigenschaft gibt das Skalierungsverhältnis zwischen der x-Achse und der z-Achse im Diagramm an.
Der Wert „ 0.0 “ gibt an, dass die Skalierung automatisch entsprechend den Achsenbereichen erfolgt. Der Standardwert ist „ 0.0 “.
Hat keine Auswirkung auf „Q3DBars“, da die Skalierung auf der horizontalen Ebene dort über die Eigenschaften „ barThickness “ und „ barSpacing “ gesteuert wird. Auch Polardiagramme ignorieren diese Eigenschaft.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| qreal | horizontalAspectRatio() const |
| void | setHorizontalAspectRatio(qreal ratio) |
Notifier-Signal:
| void | horizontalAspectRatioChanged(qreal ratio) |
Siehe auch „ aspectRatio“ , „ polar “, „ Q3DBars::barThickness “ und „ Q3DBars::barSpacing “.
[since QtDataVisualization 1.2] locale : QLocale
Diese Eigenschaft enthält die Locale, die für die Formatierung verschiedener Zahlenangaben verwendet wird.
Standardmäßig ist dies die Locale „ "C" “.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| QLocale | locale() const |
| void | setLocale(const QLocale &locale) |
Notifier-Signal:
| void | localeChanged(const QLocale &locale) |
Siehe auch „ QValue3DAxis::labelFormat “.
[since QtDataVisualization 1.2] margin : qreal
Diese Eigenschaft enthält den Absolutwert, der für den Abstand zwischen dem Rand des darstellbaren Diagrammbereichs und dem Rand des Diagrammhintergrunds verwendet wird.
Ist der Wert für den Rand negativ, werden die Ränder automatisch festgelegt und können je nach Größe der Elemente in der Reihe und dem Diagrammtyp variieren. Der Wert wird als Bruchteil des y-Achsenbereichs interpretiert, sofern die Seitenverhältnisse des Diagramms nicht gegenüber den Standardwerten geändert wurden. Der Standardwert ist „ -1.0 “.
Hinweis: Wenn für ein Streudiagramm ein kleinerer Rand als der automatisch ermittelte Randfestgelegt wird , kann es dazu kommen, dass sich die Streudiagrammelemente an den Rändern des Diagramms mit dem Diagrammhintergrund überlappen.
Hinweis: Bei Streu- und Flächendiagrammen werden die Positionen der Randbeschriftungen der Achsen angepasst, um eine Überlappung mit den Randbeschriftungen der benachbarten Achsen zu vermeiden, wenn der Rand im Vergleich zur Größe der Achsenbeschriftungen klein ist.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| qreal | margin() const |
| void | setMargin(qreal margin) |
Notifier-Signal:
| void | marginChanged(qreal margin) |
[since QtDataVisualization 1.1] measureFps : bool
Diese Eigenschaft legt fest, ob die Darstellung kontinuierlich statt bedarfsweise erfolgt.
Wenn „ true “ gesetzt ist, erfolgt die Darstellung kontinuierlich und der Wert der Eigenschaft „ currentFps “ wird aktualisiert. Der Standardwert ist „ false “.
Diese Aufzählung wurde in QtDataVisualization 1.1 eingeführt.
Zugriffsfunktionen:
| bool | measureFps() const |
| void | setMeasureFps(bool enable) |
Notifier-Signal:
| void | measureFpsChanged(bool enabled) |
Siehe auch „ currentFps “.
optimizationHints : OptimizationHints
Diese Eigenschaft gilt unabhängig davon, ob zur Optimierung der Darstellung der Standardmodus oder der statische Modus verwendet wird.
Der Standardmodus bietet den vollen Funktionsumfang bei angemessener Leistung. Der statische Modus optimiert die Darstellung von Diagrammen und eignet sich ideal für große, unveränderliche Datensätze. Bei dynamischen Datenänderungen und der Rotation von Elementen ist er langsamer. Die Auswahl wird nicht optimiert, daher ist die Verwendung des statischen Modus bei sehr großen Datensätzen nicht empfehlenswert. Die statische Optimierung funktioniert nur bei Streudiagrammen. Der Standardwert ist „ OptimizationDefault “.
Hinweis: In manchen Umgebungen werden große Diagramme mit statischer Optimierung möglicherweise nicht gerendert, da alle Elemente mit einem einzigen „Draw Call“ gerendert werden und verschiedene Grafiktreiber unterschiedliche maximale Eckpunktanzahlen pro Aufruf unterstützen. Dies ist vor allem auf 32-Bit- und OpenGL-ES2-Plattformen ein Problem. Um dieses Problem zu umgehen, wählen Sie ein Element-Mesh mit einer geringen Anzahl an Eckpunkten oder verwenden Sie das Punkt-Mesh.
Zugriffsfunktionen:
| QAbstract3DGraph::OptimizationHints | optimizationHints() const |
| void | setOptimizationHints(QAbstract3DGraph::OptimizationHints hints) |
Notifier-Signal:
| void | optimizationHintsChanged(QAbstract3DGraph::OptimizationHints hints) |
Siehe auch QAbstract3DSeries::mesh.
[since QtDataVisualization 1.1] orthoProjection : bool
Diese Eigenschaft legt fest, ob für die Darstellung des Diagramms eine orthogonale Projektion verwendet wird.
Standardwert ist „ false “.
Hinweis: Bei der Einstellung „ true “ werdenSchatten deaktiviert.
Diese Aufzählung wurde in QtDataVisualization 1.1 eingeführt.
Zugriffsfunktionen:
| bool | isOrthoProjection() const |
| void | setOrthoProjection(bool enable) |
Notifier-Signal:
| void | orthoProjectionChanged(bool enabled) |
Siehe auch „ QAbstract3DAxis::labelAutoRotation “ und „ Q3DCamera::cameraPreset “.
[since QtDataVisualization 1.2] polar : bool
Diese Eigenschaft gilt unabhängig davon, ob horizontale Achsen in Polarkoordinaten umgewandelt werden.
Wenn „ true “ gilt, wird die x-Achse zur Winkelachse und die z-Achse zur Radialachse. Der Polarmodus ist für Balkendiagramme nicht verfügbar.
Standardmäßig ist „ false “ eingestellt.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| bool | isPolar() const |
| void | setPolar(bool enable) |
Notifier-Signal:
| void | polarChanged(bool enabled) |
Siehe auch „ orthoProjection “ und „ radialLabelOffset “.
[read-only, since QtDataVisualization 1.2] queriedGraphPosition : QVector3D
Diese Eigenschaft enthält die zuletzt abgefragten Werte der Graphpositionen entlang jeder Achse.
Diese schreibgeschützte Eigenschaft enthält die Ergebnisse von „ Q3DScene::graphPositionQuery “. Die Werte werden auf den Bereich „ [-1, 1] “ normiert. Liegt die abgefragte Position außerhalb der Diagrammgrenzen, spiegeln die Werte nicht die tatsächliche Position wider, sondern zeigen stattdessen eine undefinierte Position außerhalb des Bereichs „ [-1, 1] “ an. Der Wert ist undefiniert, bis eine Abfrage erfolgt.
Da es keine eindeutige 3D-Koordinate gibt, die einer bestimmten Bildschirmposition entspricht, erfolgen die Abfragen aus Gründen der Konsistenz stets an den Innenseiten eines unsichtbaren Rahmens, der das Diagramm umgibt.
Hinweis: Bei Balkendiagrammen ist die Abfrage der Diagrammposition nur auf Höhe des Diagrammbodens möglich; daher ist der y-Wert bei Balkendiagrammen immer Null, und gültige Abfragen können nur an Bildschirmpositionen erfolgen, die den Diagrammboden enthalten.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| QVector3D | queriedGraphPosition() const |
Notifier-Signal:
| void | queriedGraphPositionChanged(const QVector3D &data) |
Siehe auch Q3DScene::graphPositionQuery.
[since QtDataVisualization 1.2] radialLabelOffset : float
Diese Eigenschaft enthält den normalisierten horizontalen Versatz für die Achsenbeschriftungen der radialen Polachse.
Der Wert „ 0.0 “ gibt an, dass die Beschriftungen neben der Winkelachsen-Gitterlinie bei 0° gezeichnet werden sollen. Der Wert „ 1.0 “ gibt an, dass die Beschriftungen an ihrer üblichen Stelle am Rand des Diagrammhintergrunds gezeichnet werden. Der Standardwert ist „ 1.0 “.
Diese Eigenschaft wird ignoriert, wenn der Wert der Eigenschaft „ polar “ auf „ false “ gesetzt ist.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| float | radialLabelOffset() const |
| void | setRadialLabelOffset(float offset) |
Notifier-Signal:
| void | radialLabelOffsetChanged(float offset) |
Siehe auch „ polar “.
[since QtDataVisualization 1.2] reflection : bool
Diese Eigenschaft legt fest, ob Bodenreflexionen aktiviert oder deaktiviert sind.
Standardwert ist „ false “.
Betrifft nur Q3DBars. In Q3DBars-Diagrammen, die sowohl positive als auch negative Werte enthalten, werden Reflexionen für benutzerdefinierte Elemente, die die Bodenebene schneiden, jedoch nicht unterstützt. In diesem Fall sollten Reflexionen deaktiviert werden, um eine fehlerhafte Darstellung zu vermeiden.
Bei Verwendung eines benutzerdefinierten Oberflächenformats muss der Stencil-Puffer definiert werden (QSurfaceFormat::setStencilBufferSize()), damit Reflexionen funktionieren.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| bool | isReflection() const |
| void | setReflection(bool enable) |
Notifier-Signal:
| void | reflectionChanged(bool enabled) |
Siehe auch reflectivity.
[since QtDataVisualization 1.2] reflectivity : qreal
Reflexionsgrad des Bodens.
Je höher der Wert, desto stärker reflektiert der Boden. Der gültige Bereich liegt zwischen [0...1]. Der Standardwert ist 0.5.
Hinweis: Betrifft nur Q3DBars.
Diese Aufzählung wurde in QtDataVisualization 1.2 eingeführt.
Zugriffsfunktionen:
| qreal | reflectivity() const |
| void | setReflectivity(qreal reflectivity) |
Notifier-Signal:
| void | reflectivityChanged(qreal reflectivity) |
Siehe auch reflection.
[read-only] scene : Q3DScene*
Diese Eigenschaft enthält den Q3DScene-Zeiger, mit dem die Szene bearbeitet und auf Szenenelemente wie beispielsweise die aktive Kamera zugegriffen werden kann.
Diese Eigenschaft ist schreibgeschützt.
Zugriffsfunktionen:
| Q3DScene * | scene() const |
[read-only, since QtDataVisualization 1.1] selectedElement : ElementType
Diese Eigenschaft enthält das im Diagramm ausgewählte Element.
Diese Eigenschaft kann verwendet werden, um den Typ des ausgewählten Elements abzufragen. Der Typ ist gültig, bis im Diagramm eine neue Auswahl getroffen wird und das Signal „ selectedElementChanged “ ausgelöst wird.
Das Signal kann beispielsweise zur Implementierung benutzerdefinierter Eingabe-Handler verwendet werden, wie im Beispiel in der „Graph Gallery“ auf der Registerkarte „ Scatter Graph “ gezeigt.
Diese Aufzählung wurde in QtDataVisualization 1.1 eingeführt.
Zugriffsfunktionen:
| QAbstract3DGraph::ElementType | selectedElement() const |
Notifier-Signal:
| void | selectedElementChanged(QAbstract3DGraph::ElementType type) |
Siehe auch „ selectedLabelIndex()“, „ selectedAxis()“, „ selectedCustomItemIndex()“, „ selectedCustomItem()“, „ Q3DBars::selectedSeries()“, „ Q3DScatter::selectedSeries()“, „ Q3DSurface::selectedSeries()“ und „ Q3DScene::setSelectionQueryPosition()“.
selectionMode : SelectionFlags
Auswahlmodus für Elemente.
Eine Kombination aus „ SelectionFlags “. Standardmäßig gilt „ SelectionItem “. Verschiedene Diagrammtypen unterstützen unterschiedliche Auswahlmodi.
Zugriffsfunktionen:
| QAbstract3DGraph::SelectionFlags | selectionMode() const |
| void | setSelectionMode(QAbstract3DGraph::SelectionFlags mode) |
Benachrichtigungssignal:
| void | selectionModeChanged(QAbstract3DGraph::SelectionFlags mode) |
Siehe auch SelectionFlags.
shadowQuality : ShadowQuality
Diese Eigenschaft legt die Qualität des Schattens fest.
Einer der Werte der Aufzählung „ ShadowQuality “. Standardmäßig ist „ ShadowQualityMedium “ eingestellt.
Hinweis: Wenn das Festlegen der Schattenqualität auf eine bestimmte Stufe fehlschlägt, wird die Stufe so lange herabgesetzt, bis die Einstellung erfolgreich ist. Bei jeder Änderung wird das Signal „ shadowQualityChanged “ ausgelöst.
Zugriffsfunktionen:
| QAbstract3DGraph::ShadowQuality | shadowQuality() const |
| void | setShadowQuality(QAbstract3DGraph::ShadowQuality quality) |
Notifier-Signal:
| void | shadowQualityChanged(QAbstract3DGraph::ShadowQuality quality) |
Siehe auch „ ShadowQuality “.
Dokumentation der Mitgliedsfunktionen
[virtual noexcept] QAbstract3DGraph::~QAbstract3DGraph()
Löscht „ QAbstract3DGraph “.
[since QtDataVisualization 1.1] int QAbstract3DGraph::addCustomItem(QCustom3DItem *item)
Fügt dem Graph ein QCustom3DItem- item e hinzu. Der Graph übernimmt die Verantwortung für das hinzugefügte Element.
Gibt den Index des hinzugefügten Elements zurück, wenn der Hinzufügungsvorgang erfolgreich war, -1, wenn versucht wird, ein Null-Element hinzuzufügen, und den Index des Elements, wenn versucht wird, ein bereits vorhandenes Element erneut hinzuzufügen.
Elemente werden in der Reihenfolge gerendert, in der sie eingefügt wurden. Die Renderreihenfolge muss berücksichtigt werden, wenn sowohl undurchsichtige als auch transparente Elemente vorhanden sind.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
Siehe auch removeCustomItems(), removeCustomItem(), removeCustomItemAt() und customItems().
void QAbstract3DGraph::addInputHandler(QAbstract3DInputHandler *inputHandler)
Fügt den angegebenen inputHandler zum Graphen hinzu. Die über addInputHandler hinzugefügten Eingabehandler werden nicht direkt verwendet. Dem Graphen wird lediglich die Eigentümerschaft am inputHandler übertragen. Der inputHandler darf nicht null sein oder bereits zu einem anderen Graphen hinzugefügt worden sein.
Siehe auch „ releaseInputHandler()“ und „ setActiveInputHandler()“.
void QAbstract3DGraph::addTheme(Q3DTheme *theme)
Fügt das angegebene „ theme “ zum Graphen hinzu. Die über „addTheme“ hinzugefügten Themen werden nicht direkt verwendet. Dem Graphen wird lediglich die Zugehörigkeit zum Thema zugewiesen. Das „ theme “ darf nicht null sein und darf nicht bereits zu einem anderen Graphen hinzugefügt worden sein.
Siehe auch „ releaseTheme()“ und „ setActiveTheme()“.
void QAbstract3DGraph::clearSelection()
Löscht die Auswahl aus allen zugehörigen Serien.
[since QtDataVisualization 1.2] QList<QCustom3DItem *> QAbstract3DGraph::customItems() const
Gibt die Liste aller hinzugefügten benutzerdefinierten Elemente zurück.
Diese Funktion wurde in QtDataVisualization 1.2 eingeführt.
Siehe auch „ addCustomItem()“.
bool QAbstract3DGraph::hasContext() const
Gibt „ true “ zurück, wenn der OpenGL-Kontext des Graphen erfolgreich initialisiert wurde. Der Versuch, einen Graphen zu verwenden, wenn die Kontextinitialisierung fehlgeschlagen ist, führt in der Regel zu einem Absturz. Ein häufiger Grund für das Scheitern der Kontextinitialisierung ist eine unzureichende Plattformunterstützung für OpenGL.
[since 6.3] bool QAbstract3DGraph::hasSeries(QAbstract3DSeries *series) const
Gibt zurück, ob die „ series “ bereits zum Graphen hinzugefügt wurde.
Diese Funktion wurde in Qt 6.3 eingeführt.
QList<QAbstract3DInputHandler *> QAbstract3DGraph::inputHandlers() const
Gibt die Liste aller hinzugefügten Eingabe-Handler zurück.
Siehe auch ` addInputHandler()`.
[since QtDataVisualization 1.1] void QAbstract3DGraph::releaseCustomItem(QCustom3DItem *item)
Ruft die Eigentumsrechte an dem angegebenen „ item “ zurück und entfernt den „ item “ aus dem Diagramm.
Hinweis: Wird dasselbe Element erneut zum Diagramm hinzugefügt, muss die Textur oder die Texturdatei neu festgelegt werden.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
Siehe auch „ QCustom3DItem::setTextureImage()“ und „ QCustom3DItem::setTextureFile()“.
void QAbstract3DGraph::releaseInputHandler(QAbstract3DInputHandler *inputHandler)
Gibt die Eigentumsrechte an der „ inputHandler “ wieder an den Aufrufer zurück, sofern diese dem Graphen hinzugefügt wurde. Wird die freigegebene „ inputHandler “ gerade verwendet, ist nach diesem Aufruf kein Eingabe-Handler mehr aktiv.
Wird der Standard-Eingabehandler freigegeben und später erneut hinzugefügt, verhält er sich wie jeder andere Eingabehandler auch.
Siehe auch „ addInputHandler()“ und „ setActiveInputHandler()“.
void QAbstract3DGraph::releaseTheme(Q3DTheme *theme)
Gibt die Eigentumsrechte an „ theme “ an den Aufrufer zurück, sofern es diesem Graphen hinzugefügt wurde. Wenn das freigegebene „ theme “ gerade verwendet wird, wird ein neues Standard-Theme erstellt und als aktiv gesetzt.
Wird das Standardtheme freigegeben und später erneut hinzugefügt, verhält es sich wie jedes andere Theme auch.
Siehe auch „ addTheme()“ und „ setActiveTheme()“.
[since QtDataVisualization 1.1] void QAbstract3DGraph::removeCustomItem(QCustom3DItem *item)
Entfernt das benutzerdefinierte ` item`. Löscht die ihm zugewiesenen Ressourcen.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
[since QtDataVisualization 1.1] void QAbstract3DGraph::removeCustomItemAt(const QVector3D &position)
Entfernt alle benutzerdefinierten Elemente unter position. Löscht die ihnen zugewiesenen Ressourcen.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
[since QtDataVisualization 1.1] void QAbstract3DGraph::removeCustomItems()
Entfernt alle benutzerdefinierten Elemente. Löscht die ihnen zugewiesenen Ressourcen.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
[since QtDataVisualization 1.1] QImage QAbstract3DGraph::renderToImage(int msaaSamples = 0, const QSize &imageSize = QSize())
Rendert den aktuellen Frame als Bild mit den in imageSize angegebenen Eigenschaften. Die Standardgröße entspricht der Fenstergröße. Das Bild wird mit der in msaaSamples angegebenen Antialiasing-Stufe gerendert. Die Standardstufe ist 0.
Gibt das gerenderte Bild zurück.
Hinweis: OpenGL ES2 unterstützt kein Antialiasing, daher wird msaaSamples immer auf 0 gesetzt.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
[since QtDataVisualization 1.1] QAbstract3DAxis *QAbstract3DGraph::selectedAxis() const
Kann verwendet werden, um die ausgewählte Achse nach dem Empfang eines „ selectedElementChanged “-Signals mit einem beliebigen Label-Typ abzurufen. Die Auswahl bleibt bis zum nächsten „ selectedElementChanged “-Signal gültig.
Gibt den Zeiger auf die ausgewählte Achse oder null zurück.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
Siehe auch „ selectedElement “.
[since QtDataVisualization 1.1] QCustom3DItem *QAbstract3DGraph::selectedCustomItem() const
Kann verwendet werden, um das ausgewählte benutzerdefinierte Element abzurufen, nachdem ein „ selectedElementChanged “-Signal vom Typ „ QAbstract3DGraph::ElementCustomItem “ empfangen wurde. Das Eigentum an dem Element verbleibt beim Graphen. Die Auswahl ist bis zum nächsten „ selectedElementChanged “-Signal gültig.
Gibt den Zeiger auf das ausgewählte benutzerdefinierte Element oder null zurück.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
Siehe auch „ selectedElement “.
[since QtDataVisualization 1.1] int QAbstract3DGraph::selectedCustomItemIndex() const
Kann verwendet werden, um den Index des ausgewählten benutzerdefinierten Elements abzufragen, nachdem ein „ selectedElementChanged “-Signal vom Typ „ QAbstract3DGraph::ElementCustomItem “ empfangen wurde. Die Auswahl bleibt bis zum nächsten „ selectedElementChanged “-Signal gültig.
Gibt den Index des ausgewählten benutzerdefinierten Elements oder -1 zurück.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
Siehe auch „ selectedElement “.
[since QtDataVisualization 1.1] int QAbstract3DGraph::selectedLabelIndex() const
Kann verwendet werden, um den Index des ausgewählten Labels abzufragen, nachdem ein Signal vom Typ „ selectedElementChanged “ mit einem beliebigen Label-Typ empfangen wurde. Die Auswahl bleibt bis zum nächsten Signal vom Typ „ selectedElementChanged “ gültig.
Gibt den Index der ausgewählten Beschriftung oder -1 zurück.
Diese Funktion wurde in QtDataVisualization 1.1 eingeführt.
Siehe auch „ selectedElement “.
void QAbstract3DGraph::setActiveInputHandler(QAbstract3DInputHandler *inputHandler)
Legt „ inputHandler “ als aktiven Eingabehandler fest, der im Graphen verwendet wird. Ruft implizit „ addInputHandler()“ auf, um die Eigentumsrechte an „ inputHandler “ auf diesen Graphen zu übertragen.
Ist inputHandler null, ist nach diesem Aufruf kein Eingabe-Handler mehr aktiv.
Hinweis: Setter -Funktion für die Eigenschaft „ activeInputHandler “.
Siehe auch activeInputHandler(), addInputHandler() und releaseInputHandler().
void QAbstract3DGraph::setActiveTheme(Q3DTheme *theme)
Legt ` theme ` als aktives Design fest, das für das Diagramm verwendet werden soll. Ruft implizit ` addTheme()` auf, um die Eigentumsrechte am Design auf dieses Diagramm zu übertragen.
Ist theme null, wird ein temporäres Standard-Theme erstellt. Dieses temporäre Theme wird gelöscht, sobald später ein Theme explizit festgelegt wird. Die Eigenschaften des Themes können auch nach dessen Festlegung geändert werden; die Änderungen werden sofort wirksam.
Hinweis: Setter -Funktion für die Eigenschaft ` activeTheme`.
Siehe auch ` activeTheme()`.
[virtual] bool QAbstract3DGraph::shadowsSupported() const
Gibt „ true “ zurück, wenn Schatten in der aktuellen Konfiguration unterstützt werden. OpenGL ES 2-Konfigurationen unterstützen keine Schatten.
QList<Q3DTheme *> QAbstract3DGraph::themes() const
Gibt die Liste aller hinzugefügten Designs zurück.
Siehe auch „ addTheme()“.
Verwandte Nicht-Mitglieder
QSurfaceFormat qDefaultSurfaceFormat(bool antialias)
Mit dieser Komfortfunktion lässt sich ein benutzerdefiniertes Oberflächenformat erstellen, das für die Verwendung in Diagrammen von „ Qt Data Visualization “ geeignet ist.
Der Parameter „ antialias “ gibt an, ob Antialiasing aktiviert ist oder nicht.
Übergeben Sie das von dieser Funktion zurückgegebene Oberflächenformat an den Grafik-Konstruktor (C++) oder legen Sie es als Fensterformat für „ QQuickView “ (QML) fest, bevor Sie „ show() “ darauf anwenden.
Beispiel: Deaktivieren Sie das Antialiasing in einer C++-Anwendung:
#include <QtDataVisualization/qutils.h>
// ...
Q3DBars *graph = new Q3DBars(qDefaultSurfaceFormat(false));Beispiel für die Aktivierung des Antialiasings für direkte Rendering-Modi in einer QML-Anwendung:
#include <QtDataVisualization/qutils.h>
// ...
QQuickView viewer;
viewer.setFormat(qDefaultSurfaceFormat(true));Hinweis: Antialiasing wird in OpenGL ES2-Umgebungen nicht unterstützt.
© 2026 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.