Auf dieser Seite

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)
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:

Q3DBars *graphWindow = new Q3DBars;
graphWindow->setFlags(graphWindow->flags() ^ Qt::FramelessWindowHint);

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.

KonstanteWertBeschreibung
QAbstract3DGraph::ElementNone0Kein definiertes Element.
QAbstract3DGraph::ElementSeries1Eine Reihe (d. h. ein Element einer Reihe).
QAbstract3DGraph::ElementAxisXLabel2Die Beschriftung der x-Achse.
QAbstract3DGraph::ElementAxisYLabel3Die Beschriftung der y-Achse.
QAbstract3DGraph::ElementAxisZLabel4Die Beschriftung der z-Achse.
QAbstract3DGraph::ElementCustomItem5Ein 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.

KonstanteWertBeschreibung
QAbstract3DGraph::OptimizationDefault0Bietet den vollen Funktionsumfang bei angemessener Leistung.
QAbstract3DGraph::OptimizationStatic1Optimiert 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.

KonstanteWertBeschreibung
QAbstract3DGraph::SelectionNone0Auswahlmodus deaktiviert.
QAbstract3DGraph::SelectionItem1Bei der Auswahl wird ein einzelnes Element hervorgehoben.
QAbstract3DGraph::SelectionRow2Bei der Auswahl wird eine einzelne Zeile hervorgehoben.
QAbstract3DGraph::SelectionItemAndRowSelectionItem | SelectionRowKombinationsflag zum Hervorheben sowohl des Elements als auch der Zeile mit unterschiedlichen Farben.
QAbstract3DGraph::SelectionColumn4Die Auswahl hebt eine einzelne Spalte hervor.
QAbstract3DGraph::SelectionItemAndColumnSelectionItem | SelectionColumnKombinationsflag zum Hervorheben von Element und Spalte in unterschiedlichen Farben.
QAbstract3DGraph::SelectionRowAndColumnSelectionRow | SelectionColumnKombinationsflag zum Hervorheben von Zeile und Spalte.
QAbstract3DGraph::SelectionItemRowAndColumnSelectionItem | SelectionRow | SelectionColumnKombinationsflag zum Hervorheben von Element, Zeile und Spalte.
QAbstract3DGraph::SelectionSlice8Das 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:
  • Wenn die Auswahl explizit über die Series-API auf ein sichtbares Element geändert wird
  • Wenn die Auswahl durch Klicken auf das Diagramm geändert wird
  • Wenn sich der Auswahlmodus ändert und das ausgewählte Element sichtbar ist
QAbstract3DGraph::SelectionMultiSeries16Das 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.

KonstanteWertBeschreibung
QAbstract3DGraph::ShadowQualityNone0Schatten sind deaktiviert.
QAbstract3DGraph::ShadowQualityLow1Schatten werden in geringer Qualität gerendert.
QAbstract3DGraph::ShadowQualityMedium2Schatten werden in mittlerer Qualität gerendert.
QAbstract3DGraph::ShadowQualityHigh3Schatten werden in hoher Qualität dargestellt.
QAbstract3DGraph::ShadowQualitySoftLow4Schatten werden in niedriger Qualität mit weichen Kanten dargestellt.
QAbstract3DGraph::ShadowQualitySoftMedium5Schatten werden in mittlerer Qualität mit weichen Kanten dargestellt.
QAbstract3DGraph::ShadowQualitySoftHigh6Schatten 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.