Auf dieser Seite

Q3DGraphsWidgetItem Class

Die Klasse „Q3DGraphsWidgetItem“ stellt ein Fenster und eine Render-Schleife für Diagramme bereit. Mehr...

Header: #include <Q3DGraphsWidgetItem>
CMake: find_package(Qt6 REQUIRED COMPONENTS GraphsWidgets)
target_link_libraries(mytarget PRIVATE Qt6::GraphsWidgets)
qmake: QT += graphswidgets
Erbt von: QObject
Vererbt an:

Q3DBarsWidgetItem, Q3DScatterWidgetItem sowie Q3DSurfaceWidgetItem

Eigenschaften

Öffentliche Funktionen

virtual ~Q3DGraphsWidgetItem() override
QGraphsTheme *activeTheme() const
qsizetype addCustomItem(QCustom3DItem *item)
void addTheme(QGraphsTheme *theme)
float ambientLightStrength() const
qreal aspectRatio() const
QtGraphs3D::CameraPreset cameraPreset() const
QVector3D cameraTargetPosition() const
float cameraXRotation() const
float cameraYRotation() const
float cameraZoomLevel() const
void clearSelection()
int currentFps() const
QList<QCustom3DItem *> customItems() const
qreal cutoffMargin() const
void doPicking(QPoint point)
void doRayPicking(QVector3D origin, QVector3D direction)
QtGraphs3D::DragMode dragMode() const
QtGraphs3D::GridLineType gridLineType() const
bool hasSeries(QAbstract3DSeries *series) const
qreal horizontalAspectRatio() const
bool isOrthoProjection() const
bool isPanEnabled() const
bool isPolar() const
bool isRotationEnabled() const
bool isSelectionEnabled() const
bool isZoomAtTargetEnabled() const
bool isZoomEnabled() const
float labelMargin() const
QColor lightColor() const
float lightStrength() const
QLocale locale() const
qreal margin() const
float maxCameraXRotation() const
float maxCameraYRotation() const
float maxCameraZoomLevel() const
bool measureFps() const
float minCameraXRotation() const
float minCameraYRotation() const
float minCameraZoomLevel() const
int msaaSamples() const
QtGraphs3D::OptimizationHint optimizationHint() const
QVector3D queriedGraphPosition() const
float radialLabelOffset() const
void releaseCustomItem(QCustom3DItem *item)
void releaseTheme(QGraphsTheme *theme)
void removeCustomItem(QCustom3DItem *item)
void removeCustomItemAt(QVector3D position)
void removeCustomItems()
QSharedPointer<QQuickItemGrabResult> renderToImage(QSize imageSize = QSize()) const
Q3DScene *scene() const
QAbstract3DAxis *selectedAxis() const
QCustom3DItem *selectedCustomItem() const
qsizetype selectedCustomItemIndex() const
QtGraphs3D::ElementType selectedElement() const
int selectedLabelIndex() const
QtGraphs3D::SelectionFlags selectionMode() const
QtGraphs3D::ShadowQuality shadowQuality() const
float shadowStrength() const
QList<QGraphsTheme *> themes() const
QtGraphs3D::TransparencyTechnique transparencyTechnique() const
QQuickWidget *widget() const
bool wrapCameraXRotation() const
bool wrapCameraYRotation() const

Öffentliche Slots

void setActiveTheme(QGraphsTheme *activeTheme)
void setAmbientLightStrength(float newAmbientLightStrength)
void setAspectRatio(qreal ratio)
void setCameraPosition(float horizontal, float vertical, float zoom = 100.0f)
void setCameraPreset(QtGraphs3D::CameraPreset preset)
void setCameraTargetPosition(QVector3D target)
void setCameraXRotation(float rotation)
void setCameraYRotation(float rotation)
void setCameraZoomLevel(float level)
void setCutoffMargin(qreal margin)
void setDragMode(QtGraphs3D::DragMode newDragMode)
void setGridLineType(const QtGraphs3D::GridLineType &gridLineType)
void setHorizontalAspectRatio(qreal ratio)
void setLabelMargin(float margin)
void setLightColor(QColor newLightColor)
void setLightStrength(float newLightStrength)
void setLocale(const QLocale &locale)
void setMargin(qreal margin)
void setMaxCameraXRotation(float rotation)
void setMaxCameraYRotation(float rotation)
void setMaxCameraZoomLevel(float level)
void setMeasureFps(bool enable)
void setMinCameraXRotation(float rotation)
void setMinCameraYRotation(float rotation)
void setMinCameraZoomLevel(float level)
void setMsaaSamples(int samples)
void setOptimizationHint(QtGraphs3D::OptimizationHint hint)
void setOrthoProjection(bool enable)
(since 6.12) void setPanButton(Qt::MouseButtons button)
void setPanEnabled(bool enable)
void setPolar(bool enable)
void setRadialLabelOffset(float offset)
void setRotationEnabled(bool enable)
void setSelectionEnabled(bool enable)
void setSelectionMode(const QtGraphs3D::SelectionFlags &selectionMode)
void setShadowQuality(const QtGraphs3D::ShadowQuality &shadowQuality)
void setShadowStrength(float newShadowStrength)
void setTransparencyTechnique(QtGraphs3D::TransparencyTechnique technique)
void setWidget(QQuickWidget *widget)
void setWrapCameraXRotation(bool wrap)
void setWrapCameraYRotation(bool wrap)
void setZoomAtTargetEnabled(bool enable)
void setZoomEnabled(bool enable)

Signale

void activeThemeChanged(QGraphsTheme*activeTheme)
void ambientLightStrengthChanged()
void aspectRatioChanged(qreal ratio)
void cameraPresetChanged(QtGraphs3D::CameraPreset preset)
void cameraTargetPositionChanged(QVector3D Ziel)
void cameraXRotationChanged(float rotation)
void cameraYRotationChanged(float rotation)
void cameraZoomLevelChanged(float zoomLevel)
void currentFpsChanged(int fps)
void cutoffMarginChanged(qreal newMargin)
void dragModeChanged(QtGraphs3D::DragMode dragMode)
void gridLineTypeChanged()
void horizontalAspectRatioChanged(qreal ratio)
void labelMarginChanged(float margin)
void lightColorChanged()
void lightStrengthChanged()
void localeChanged(const QLocale&locale)
void marginChanged(qreal margin)
void maxCameraXRotationChanged(float rotation)
void maxCameraYRotationChanged(float rotation)
void maxCameraZoomLevelChanged(float zoomLevel)
void measureFpsChanged(bool enabled)
void minCameraXRotationChanged(float rotation)
void minCameraYRotationChanged(float rotation)
void minCameraZoomLevelChanged(float zoomLevel)
void msaaSamplesChanged(int samples)
void optimizationHintChanged(QtGraphs3D::OptimizationHint hint)
void orthoProjectionChanged(bool enabled)
void panEnabledChanged(bool enable)
void polarChanged(bool enabled)
void queriedGraphPositionChanged(QVector3D data)
void radialLabelOffsetChanged(float offset)
void rotationEnabledChanged(bool enable)
void selectedElementChanged(QtGraphs3D::ElementType type)
void selectionEnabledChanged(bool enable)
void selectionModeChanged(const QtGraphs3D::SelectionFlags selectionMode)
void shadowQualityChanged(QtGraphs3D::ShadowQuality quality)
void shadowStrengthChanged()
void transparencyTechniqueChanged(QtGraphs3D::TransparencyTechnique technique)
void wrapCameraXRotationChanged(bool wrap)
void wrapCameraYRotationChanged(bool wrap)
void zoomAtTargetEnabledChanged(bool enable)
void zoomEnabledChanged(bool enable)

Ausführliche 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.

Multisampling ist in „ QSurfaceFormat “ standardmäßig deaktiviert. Um Multisampling zu aktivieren, legen Sie ein benutzerdefiniertes Oberflächenformat als Standardoberflächenformat fest. Um das benutzerdefinierte Oberflächenformat zu erhalten, verwenden Sie „ QQuick3D::idealSurfaceFormat()“.

Siehe auch die C++-Klassen„ Q3DBarsWidgetItem“ , „ Q3DScatterWidgetItem “, „ Q3DSurfaceWidgetItem “ und „Qt Graphs “ für 3D.

Dokumentation zu den Eigenschaften

activeTheme : QGraphsTheme*

Diese Eigenschaft enthält das aktive Thema des Diagramms.

Legt „ activeTheme “ 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 activeTheme null, wird ein temporäres Standard-Thema erstellt. Dieses temporäre Thema wird gelöscht, sobald später ein Thema explizit festgelegt wird. Die Eigenschaften des Themas können auch nach dessen Festlegung geändert werden; die Änderungen werden sofort wirksam.

Zugriffsfunktionen:

QGraphsTheme *activeTheme() const
void setActiveTheme(QGraphsTheme *activeTheme)

Notifier-Signal:

void activeThemeChanged(QGraphsTheme *activeTheme)

ambientLightStrength : float

Diese Eigenschaft legt die Umgebungshelligkeit für das gesamte Diagramm fest.

Dieser Wert bestimmt, wie gleichmäßig und hell die Farben im gesamten Diagramm dargestellt werden, unabhängig von der Position der Lichtquelle.

Der Wert muss zwischen 0.0f und 1.0f liegen.

Zugriffsfunktionen:

float ambientLightStrength() const
void setAmbientLightStrength(float newAmbientLightStrength)

Benachrichtigungssignal:

void ambientLightStrengthChanged()

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 „ Q3DBarsWidgetItem “.

Zugriffsfunktionen:

qreal aspectRatio() const
void setAspectRatio(qreal ratio)

Benachrichtigungssignal:

void aspectRatioChanged(qreal ratio)

Siehe auch „ horizontalAspectRatio “.

cameraPreset : QtGraphs3D::CameraPreset

Die voreingestellte Kameraposition, die die Kamera derzeit verwendet. Der Wert kann auf einen der Werte der Enumeration „CameraPreset“ gesetzt werden. Mit dieser Eigenschaft lässt sich ein vordefinierter Kamerawinkel festlegen, aus dem das Diagramm betrachtet wird.

Standardmäßig ist die Kamera-Voreinstellung auf „ CameraPreset::FrontLow “ gesetzt.

Hinweis: Wenn Sie die Eigenschaften „ cameraXRotation “, „ cameraYRotation “ oder „ cameraZoomLevel “ festgelegt oder die Methode „setCustomCamera()“ aufgerufen haben, gibt diese Eigenschaft „CameraPreset::NoPreset“ zurück, bis entweder „setCameraPreset()“ erneut aufgerufen wird oder die Voreinstellung auf einen anderen Wert geändert wird.

Zugriffsfunktionen:

QtGraphs3D::CameraPreset cameraPreset() const
void setCameraPreset(QtGraphs3D::CameraPreset preset)

Notifier-Signal:

void cameraPresetChanged(QtGraphs3D::CameraPreset preset)

cameraTargetPosition : QVector3D

Diese Eigenschaft enthält die Zielposition der Kamera als Vektor oder Scheitelpunkt im 3D-Raum.

Der Standardwert ist QVector3D(0.0, 0.0, 0.0).

Gültige Koordinatenwerte liegen im Bereich von -1.0...1.0, wobei die Grenzwerte die Ränder des entsprechenden Achsenbereichs angeben. Alle Werte außerhalb dieses Bereichs werden auf den Rand begrenzt.

Zugriffsfunktionen:

QVector3D cameraTargetPosition() const
void setCameraTargetPosition(QVector3D target)

Benachrichtigungssignal:

void cameraTargetPositionChanged(QVector3D target)

cameraXRotation : float

Diese Eigenschaft enthält den X-Drehwinkel der Kamera um den Zielpunkt in Grad.

Zugriffsfunktionen:

float cameraXRotation() const
void setCameraXRotation(float rotation)

Benachrichtigungssignal:

void cameraXRotationChanged(float rotation)

cameraYRotation : float

Diese Eigenschaft enthält den Y-Drehwinkel der Kamera um den Zielpunkt in Grad.

Zugriffsfunktionen:

float cameraYRotation() const
void setCameraYRotation(float rotation)

Benachrichtigungssignal:

void cameraYRotationChanged(float rotation)

cameraZoomLevel : float

Diese Eigenschaft gibt den Zoomfaktor der Kamera in Prozent an.

Der Standardwert „ 100.0f “ bedeutet, dass in der Kamera kein Vergrößerungs- oder Verkleinerungsfaktor eingestellt ist. Der Wert wird durch die Eigenschaften „ minCameraZoomLevel “ und „ maxCameraZoomLevel “ begrenzt.

Zugriffsfunktionen:

float cameraZoomLevel() const
void setCameraZoomLevel(float level)

Benachrichtigungssignal:

void cameraZoomLevelChanged(float zoomLevel)

Siehe auch „ minCameraZoomLevel “ und „ maxCameraZoomLevel “.

[read-only] currentFps : int

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.

Zugriffsfunktionen:

int currentFps() const

Benachrichtigungssignal:

void currentFpsChanged(int fps)

Siehe auch „ measureFps “.

[since 6.11] cutoffMargin : qreal

Diese Eigenschaft enthält den Wert, der für den Abstand zwischen den Achsengrenzen und der Position verwendet wird, an der Diagrammelemente ausgeblendet werden.

Hinweis: Hat keine Auswirkungen auf Balkendiagramme.

Diese Aufzählung wurde in Qt 6.11 eingeführt.

Zugriffsfunktionen:

qreal cutoffMargin() const
void setCutoffMargin(qreal margin)

Notifier-Signal:

void cutoffMarginChanged(qreal newMargin)

[since 6.12] dragMode : QtGraphs3D::DragMode

Legt fest, wie Drag-Ereignisse im Diagramm interpretiert werden; einer der Aufzählungswerte „ QtGraphs3D::DragMode “.

Standardwert ist „ QtGraphs3D::DragMode::Rotate “.

Diese Aufzählung wurde in Qt 6.12 eingeführt.

Zugriffsfunktionen:

QtGraphs3D::DragMode dragMode() const
void setDragMode(QtGraphs3D::DragMode newDragMode)

Notifier-Signal:

void dragModeChanged(QtGraphs3D::DragMode dragMode)

Siehe auch „ panEnabled “.

gridLineType : QtGraphs3D::GridLineType

Diese Eigenschaft gilt unabhängig davon, ob der Typ der Gitterlinien „ QtGraphs3D::GridLineType::Shader “ oder „ QtGraphs3D::GridLineType::Geometry “ ist.

Dieser Wert wirkt sich auf alle Gitterlinien aus.

Zugriffsfunktionen:

QtGraphs3D::GridLineType gridLineType() const
void setGridLineType(const QtGraphs3D::GridLineType &gridLineType)

Benachrichtigungssignal:

void gridLineTypeChanged()

Siehe auch „ QtGraphs3D::GridLineType “.

horizontalAspectRatio : qreal

Diese Eigenschaft legt das Skalierungsverhältnis zwischen der x-Achse und der z-Achse im Diagramm fest.

Der Wert „ 0.0 “ gibt an, dass die Skalierung automatisch entsprechend den Achsenbereichen erfolgt. Der Standardwert ist „ 0.0 “.

Hat keine Auswirkung auf „ Q3DBarsWidgetItem “, das die Skalierung in der horizontalen Ebene über die Eigenschaften „ barThickness “ und „ barSpacing “ steuert. Polardiagramme ignorieren diese Eigenschaft ebenfalls.

Zugriffsfunktionen:

qreal horizontalAspectRatio() const
void setHorizontalAspectRatio(qreal ratio)

Benachrichtigungssignal:

void horizontalAspectRatioChanged(qreal ratio)

Siehe auch „ aspectRatio“ , „ polar “, „ Q3DBarsWidgetItem::barThickness “ und „ Q3DBarsWidgetItem::barSpacing “.

labelMargin : float

Diese Eigenschaft legt den Rand für die Platzierung der Achsenbeschriftungen fest.

Bei negativen Werten werden die Beschriftungen innerhalb des Darstellungsbereichs platziert, bei positiven Werten außerhalb des Darstellungsbereichs. Die automatische Drehung der Beschriftungen ist deaktiviert, wenn der Wert negativ ist. Standardwert ist 0.1

Zugriffsfunktionen:

float labelMargin() const
void setLabelMargin(float margin)

Benachrichtigungssignal:

void labelMarginChanged(float margin)

Siehe auch QAbstract3DAxis::labelAutoAngle.

lightColor : QColor

Diese Eigenschaft enthält die Farbe für das Umgebungs- und Spiegelungslicht.

Dieser Wert wirkt sich auf das unter „ Q3DScene “ angegebene Licht aus.

Zugriffsfunktionen:

QColor lightColor() const
void setLightColor(QColor newLightColor)

Benachrichtigungssignal:

void lightColorChanged()

lightStrength : float

Diese Eigenschaft enthält die Stärke des Spiegelungslichts für den gesamten Graphen.

Der Wert muss zwischen 0.0f und 10.0f liegen.

Dieser Wert wirkt sich auf das unter Q3DScene angegebene Licht aus.

Zugriffsfunktionen:

float lightStrength() const
void setLightStrength(float newLightStrength)

Benachrichtigungssignal:

void lightStrengthChanged()

locale : QLocale

Diese Eigenschaft enthält die Locale, die für die Formatierung verschiedener numerischer Bezeichnungen verwendet wird.

Standardmäßig ist die Locale „ "C" “ eingestellt.

Zugriffsfunktionen:

QLocale locale() const
void setLocale(const QLocale &locale)

Benachrichtigungssignal:

void localeChanged(const QLocale &locale)

Siehe auch „ QValue3DAxis::labelFormat “.

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 vorkommen, dass sich die Streudiagrammpunkte 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 Achsbeschriftungen klein ist.

Zugriffsfunktionen:

qreal margin() const
void setMargin(qreal margin)

Benachrichtigungssignal:

void marginChanged(qreal margin)

maxCameraXRotation : float

Diese Eigenschaft enthält den maximalen X-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert ist 180.0

Zugriffsfunktionen:

float maxCameraXRotation() const
void setMaxCameraXRotation(float rotation)

Benachrichtigungssignal:

void maxCameraXRotationChanged(float rotation)

maxCameraYRotation : float

Diese Eigenschaft enthält den maximalen Y-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet 90.0

Zugriffsfunktionen:

float maxCameraYRotation() const
void setMaxCameraYRotation(float rotation)

Benachrichtigungssignal:

void maxCameraYRotationChanged(float rotation)

maxCameraZoomLevel : float

Diese Eigenschaft gibt den maximal zulässigen Zoomfaktor der Kamera an.

Wird der Maximalwert auf einen neuen Wert gesetzt, der unter dem bestehenden Minimalwert liegt, wird auch der Minimalwert an den neuen Maximalwert angepasst. Liegt der aktuelle Wert „ cameraZoomLevel “ außerhalb der neuen Grenzen, wird dieser ebenfalls angepasst. Der Standardwert ist „ 500.0f “.

Zugriffsfunktionen:

float maxCameraZoomLevel() const
void setMaxCameraZoomLevel(float level)

Benachrichtigungssignal:

void maxCameraZoomLevelChanged(float zoomLevel)

Siehe auch „ cameraZoomLevel “ und „ minCameraZoomLevel “.

measureFps : bool

Diese Eigenschaft legt fest, ob die Darstellung kontinuierlich statt bei Bedarf erfolgt.

Wenn „ true “ gilt, erfolgt die Darstellung kontinuierlich und der Wert der Eigenschaft „ currentFps “ wird aktualisiert. Der Standardwert ist „ false “.

Zugriffsfunktionen:

bool measureFps() const
void setMeasureFps(bool enable)

Notifier-Signal:

void measureFpsChanged(bool enabled)

Siehe auch „ currentFps “.

minCameraXRotation : float

Diese Eigenschaft enthält den minimalen X-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet -180.0

Zugriffsfunktionen:

float minCameraXRotation() const
void setMinCameraXRotation(float rotation)

Benachrichtigungssignal:

void minCameraXRotationChanged(float rotation)

minCameraYRotation : float

Diese Eigenschaft enthält den minimalen Y-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet 0.0

Zugriffsfunktionen:

float minCameraYRotation() const
void setMinCameraYRotation(float rotation)

Benachrichtigungssignal:

void minCameraYRotationChanged(float rotation)

minCameraZoomLevel : float

Diese Eigenschaft gibt den minimal zulässigen Zoomfaktor der Kamera an.

Wird der Mindestwert auf einen neuen Wert gesetzt, der höher ist als der bestehende Höchstwert, wird auch der Höchstwert an den neuen Mindestwert angepasst. Liegt der aktuelle ZoomLevel außerhalb der neuen Grenzen, wird er ebenfalls angepasst. Der Wert „minCameraZoomLevel“ kann nicht unter „ 1.0f “ festgelegt werden. Der Standardwert ist „ 10.0f “.

Zugriffsfunktionen:

float minCameraZoomLevel() const
void setMinCameraZoomLevel(float level)

Notifier-Signal:

void minCameraZoomLevelChanged(float zoomLevel)

Siehe auch cameraZoomLevel und maxCameraZoomLevel.

msaaSamples : int

Diese Eigenschaft gibt die Anzahl der bei MSAA verwendeten Samples an.

Legt die Anzahl der verwendeten MSAA-Samples auf „ samples “ fest. Die Anzahl der Samples kann entweder 0, 2, 4 oder 8 betragen.

Zugriffsfunktionen:

int msaaSamples() const
void setMsaaSamples(int samples)

Benachrichtigungssignal:

void msaaSamplesChanged(int samples)

optimizationHint : QtGraphs3D::OptimizationHint

Legt fest, ob zur Optimierung der Darstellung der Standardmodus oder der Legacy-Modus verwendet wird.

Der Standardmodus nutzt instanziertes Rendering und bietet auf den meisten Systemen den vollen Funktionsumfang bei bester Leistung. Der statische Modus optimiert das Rendern von Diagrammen und eignet sich ideal für große, unveränderliche Datensätze. Bei dynamischen Datenänderungen und Elementrotationen 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 Legacy-Modus rendert alle Elemente im Diagramm einzeln, ohne Instanzierung. Er sollte nur verwendet werden, wenn der Standardmodus nicht funktioniert, d. h. wenn das Zielsystem keine Instanzierung unterstützt. Die Standardeinstellung ist „ QtGraphs3D::OptimizationHint::Default “.

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 Vertex-Anzahlen pro Call 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:

QtGraphs3D::OptimizationHint optimizationHint() const
void setOptimizationHint(QtGraphs3D::OptimizationHint hint)

Notifier-Signal:

void optimizationHintChanged(QtGraphs3D::OptimizationHint hint)

Siehe auch QAbstract3DSeries::mesh.

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.

Zugriffsfunktionen:

bool isOrthoProjection() const
void setOrthoProjection(bool enable)

Benachrichtigungssignal:

void orthoProjectionChanged(bool enabled)

Siehe auch „ QAbstract3DAxis::labelAutoAngle “.

[since 6.12] panEnabled : bool

Diese Eigenschaft gibt an, ob dieser Eingabe-Handler das Verschieben im Diagramm zulässt.

Standardwert ist „ true “.

Diese Aufzählung wurde in Qt 6.12 eingeführt.

Zugriffsfunktionen:

bool isPanEnabled() const
void setPanEnabled(bool enable)

Notifier-Signal:

void panEnabledChanged(bool enable)

Siehe auch „ dragMode “ und „ setPanButton()“.

polar : bool

Diese Eigenschaft gilt unabhängig davon, ob horizontale Achsen in Polarkoordinatenachsen umgewandelt werden.

Wenn „ true “ gesetzt ist, 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.

Zugriffsfunktionen:

bool isPolar() const
void setPolar(bool enable)

Benachrichtigungssignal:

void polarChanged(bool enabled)

Siehe auch „ orthoProjection “ und „ radialLabelOffset “.

[read-only] queriedGraphPosition : QVector3D

Diese Eigenschaft enthält die zuletzt abgefragten Werte für die Graphpositionen entlang jeder Achse.

Diese schreibgeschützte Eigenschaft enthält die Ergebnisse von Q3DScene::graphPositionQuery. Die Werte sind 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 kann die Diagrammposition nur auf Höhe des Diagrammbodens abgefragt werden; daher ist der y-Wert bei Balkendiagrammen immer Null, und gültige Abfragen können nur an Bildschirmpositionen erfolgen, die den Diagrammboden enthalten.

Zugriffsfunktionen:

QVector3D queriedGraphPosition() const

Benachrichtigungssignal:

void queriedGraphPositionChanged(QVector3D data)

Siehe auch Q3DScene::graphPositionQuery.

radialLabelOffset : float

Diese Eigenschaft enthält den normierten 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.

Zugriffsfunktionen:

float radialLabelOffset() const
void setRadialLabelOffset(float offset)

Benachrichtigungssignal:

void radialLabelOffsetChanged(float offset)

Siehe auch „ polar “.

rotationEnabled : bool

Diese Eigenschaft gibt an, ob dieser Eingabe-Handler die Drehung von Diagrammen zulässt.

Standardwert ist „ true “.

Zugriffsfunktionen:

bool isRotationEnabled() const
void setRotationEnabled(bool enable)

Notifier-Signal:

void rotationEnabledChanged(bool enable)

[read-only] scene : Q3DScene* const

Diese Eigenschaft enthält den Zeiger „ Q3DScene “, mit dem die Szene bearbeitet und auf die Szenenelemente zugegriffen werden kann.

Diese Eigenschaft ist schreibgeschützt.

Zugriffsfunktionen:

Q3DScene *scene() const

[read-only] selectedElement : QtGraphs3D::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 und das Signal „ selectedElementChanged “ ausgesendet wird.

Das Signal kann beispielsweise zur Implementierung benutzerdefinierter Eingabehandler verwendet werden, wie im Beispiel der Graph-Galerie auf der Registerkarte „ Scatter Graph “ gezeigt.

Zugriffsfunktionen:

QtGraphs3D::ElementType selectedElement() const

Notifier-Signal:

void selectedElementChanged(QtGraphs3D::ElementType type)

Siehe auch „ selectedLabelIndex()“, „ selectedAxis()“, „ selectedCustomItemIndex()“, „ selectedCustomItem()“, „ Q3DBarsWidgetItem::selectedSeries()“, „ Q3DScatterWidgetItem::selectedSeries()“, „ Q3DSurfaceWidgetItem::selectedSeries()“ und „ Q3DScene::setSelectionQueryPosition()“.

selectionEnabled : bool

Diese Eigenschaft gibt an, ob dieser Eingabe-Handler die Auswahl aus dem Diagramm zulässt.

Standardwert ist „ true “.

Zugriffsfunktionen:

bool isSelectionEnabled() const
void setSelectionEnabled(bool enable)

Notifier-Signal:

void selectionEnabledChanged(bool enable)

selectionMode : QtGraphs3D::SelectionFlags

Auswahlmodus für Elemente.

Eine Kombination aus „SelectionFlags“. Standardmäßig gilt: „ Item “. Verschiedene Diagrammtypen unterstützen unterschiedliche Auswahlmodi.

Zugriffsfunktionen:

QtGraphs3D::SelectionFlags selectionMode() const
void setSelectionMode(const QtGraphs3D::SelectionFlags &selectionMode)

Benachrichtigungssignal:

void selectionModeChanged(const QtGraphs3D::SelectionFlags selectionMode)

Siehe auch „ QtGraphs3D::SelectionFlags “.

shadowQuality : QtGraphs3D::ShadowQuality

Diese Eigenschaft legt die Qualität des Schattens fest.

Einer der Werte der Enumeration „ShadowQuality“. Standardmäßig ist „ Medium “ 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:

QtGraphs3D::ShadowQuality shadowQuality() const
void setShadowQuality(const QtGraphs3D::ShadowQuality &shadowQuality)

Notifier-Signal:

void shadowQualityChanged(QtGraphs3D::ShadowQuality quality)

Siehe auch „ QtGraphs3D::ShadowQuality “.

shadowStrength : float

Diese Eigenschaft legt die Schattenintensität für das gesamte Diagramm fest.

Je höher der Wert, desto dunkler sind die Schatten. Der Wert muss zwischen 0.0 und 100.0 liegen.

Dieser Wert wirkt sich auf die unter Q3DScene festgelegte Beleuchtung aus.

Zugriffsfunktionen:

float shadowStrength() const
void setShadowStrength(float newShadowStrength)

Benachrichtigungssignal:

void shadowStrengthChanged()

[since 6.9] transparencyTechnique : QtGraphs3D::TransparencyTechnique

Legt fest, welche Transparenztechnik verwendet werden soll. Der Standardwert ist „ Default “. Verwenden Sie beim Rendern transparenter Oberflächendiagramme „ Approximate “ oder „ Accurate “. Für andere Diagrammtypen sollte „ Default “ verwendet werden.

KonstanteBeschreibung
DefaultGibt an, dass keine reihenunabhängigen Transparenztechniken verwendet werden. Bietet die beste Leistung. Verwenden Sie diese Option, wenn Diagramme keine Transparenz enthalten oder wenn ein Balken- oder Streudiagramm ebenfalls Instanzierung verwendet, d. h. „ optimizationHint “ ist { „QtGraphs3D::OptimizationHint::Default “ }.
ApproximateGibt an, dass ein Diagramm eine Annäherung an die reihenfolgeunabhängige Transparenz versucht. Diese Methode ist schneller als „ Accurate “ und funktioniert auf älterer Hardware, kann jedoch zu ungenauen Ergebnissen führen. Verwenden Sie diese Option, wenn reihenfolgeunabhängige Transparenz erforderlich ist, die Leistungsbeeinträchtigung jedoch geringer sein muss als bei der Verwendung einer exakten reihenfolgeunabhängigen Transparenz.
AccurateGibt an, dass eine genaue, reihenfolgeunabhängige Transparenz verwendet wird. Verwenden Sie diese Option, wenn eine perfekte Darstellung der Transparenz erforderlich ist.

Diese Aufzählung wurde in Qt 6.9 eingeführt.

Zugriffsfunktionen:

QtGraphs3D::TransparencyTechnique transparencyTechnique() const
void setTransparencyTechnique(QtGraphs3D::TransparencyTechnique technique)

Notifier-Signal:

void transparencyTechniqueChanged(QtGraphs3D::TransparencyTechnique technique)

Siehe auch „ QtGraphs3D::TransparencyTechnique “.

wrapCameraXRotation : bool

Diese Eigenschaft legt das Verhalten der Minimal- und Maximalgrenzen bei der X-Drehung fest.

Bei der Einstellung „ true “ wird die X-Rotation der Kamera vom Minimalwert zum Maximalwert und vom Maximalwert zum Minimalwert umgeschaltet. Bei der Einstellung „ false “ ist die X-Rotation der Kamera auf den durch den Minimal- und Maximalwert bestimmten Sektor beschränkt. Standardmäßig ist „ true “ eingestellt.

Zugriffsfunktionen:

bool wrapCameraXRotation() const
void setWrapCameraXRotation(bool wrap)

Benachrichtigungssignal:

void wrapCameraXRotationChanged(bool wrap)

wrapCameraYRotation : bool

Diese Eigenschaft legt das Verhalten der Minimal- und Maximalgrenzen bei der Y-Drehung fest.

Wenn „ true “ eingestellt ist, wird die Y-Rotation der Kamera vom Minimalwert zum Maximalwert und vom Maximalwert zum Minimalwert umgeschaltet. Wenn „ false “ eingestellt ist, ist die Y-Rotation der Kamera auf den durch den Minimal- und Maximalwert bestimmten Bereich beschränkt. Standardmäßig ist „ true “ eingestellt.

Zugriffsfunktionen:

bool wrapCameraYRotation() const
void setWrapCameraYRotation(bool wrap)

Benachrichtigungssignal:

void wrapCameraYRotationChanged(bool wrap)

zoomAtTargetEnabled : bool

Diese Eigenschaft legt fest, ob beim Zoomen das Kameraziel so geändert werden soll, dass der gezoomte Punkt im Diagramm nach dem Zoomen an derselben Stelle bleibt.

Standardwert ist „ true “.

Zugriffsfunktionen:

bool isZoomAtTargetEnabled() const
void setZoomAtTargetEnabled(bool enable)

Notifier-Signal:

void zoomAtTargetEnabledChanged(bool enable)

zoomEnabled : bool

Diese Eigenschaft gibt an, ob dieser Eingabe-Handler das Zoomen im Diagramm zulässt.

Standardwert ist „ true “.

Zugriffsfunktionen:

bool isZoomEnabled() const
void setZoomEnabled(bool enable)

Notifier-Signal:

void zoomEnabledChanged(bool enable)

Dokumentation der Mitgliedsfunktionen

[override virtual noexcept] Q3DGraphsWidgetItem::~Q3DGraphsWidgetItem()

Löscht „ Q3DGraphsWidgetItem “.

qsizetype Q3DGraphsWidgetItem::addCustomItem(QCustom3DItem *item)

Fügt dem Graph ein „ QCustom3DItem “ ( item ) 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 wurde, ein Null-Element hinzuzufügen, und den Index des Elements, wenn versucht wurde, 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 deckende als auch transparente Elemente vorhanden sind.

Siehe auch removeCustomItems(), removeCustomItem(), removeCustomItemAt() und customItems().

void Q3DGraphsWidgetItem::addTheme(QGraphsTheme *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 oder bereits zu einem anderen Graphen hinzugefügt worden sein.

Siehe auch „ releaseTheme()“ und „ setActiveTheme()“.

void Q3DGraphsWidgetItem::clearSelection()

Löscht die Auswahl aus allen zugehörigen Serien.

QList<QCustom3DItem *> Q3DGraphsWidgetItem::customItems() const

Gibt die Liste aller hinzugefügten benutzerdefinierten Elemente zurück.

Siehe auch „ addCustomItem()“.

void Q3DGraphsWidgetItem::doPicking(QPoint point)

Führt eine Auswahl anhand der Ansichtskoordinaten aus „ point “ für die Elemente des Graphen durch und wählt dabei das erste getroffene Element aus. Die Standard-Eingabeverarbeitung führt dies beim Empfang des „onTapped“-Ereignisses durch.

Siehe auch selectedElement.

void Q3DGraphsWidgetItem::doRayPicking(QVector3D origin, QVector3D direction)

Führt eine Auswahl beginnend bei origin und in direction für die Elemente des Graphen durch und wählt dabei das erste gefundene Element aus.

Siehe auch selectedElement.

bool Q3DGraphsWidgetItem::hasSeries(QAbstract3DSeries *series) const

Gibt zurück, ob das „ series “ bereits zum Graphen hinzugefügt wurde.

void Q3DGraphsWidgetItem::releaseCustomItem(QCustom3DItem *item)

Ruft die Eigentumsrechte an dem angegebenen „ item “ zurück und entfernt den „ item “ aus dem Diagramm.

Hinweis: Wenn dasselbe Element wieder in den Graph eingefügt wird, muss die Textur oder die Texturdatei neu festgelegt werden.

Siehe auch „ QCustom3DItem::setTextureImage()“ und „ QCustom3DItem::setTextureFile()“.

void Q3DGraphsWidgetItem::releaseTheme(QGraphsTheme *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()“.

void Q3DGraphsWidgetItem::removeCustomItem(QCustom3DItem *item)

Entfernt den benutzerdefinierten „ item “. Löscht die ihm zugewiesenen Ressourcen.

void Q3DGraphsWidgetItem::removeCustomItemAt(QVector3D position)

Entfernt alle benutzerdefinierten Elemente unter position. Löscht die ihnen zugewiesenen Ressourcen.

void Q3DGraphsWidgetItem::removeCustomItems()

Entfernt alle benutzerdefinierten Elemente. Löscht die ihnen zugewiesenen Ressourcen.

QSharedPointer<QQuickItemGrabResult> Q3DGraphsWidgetItem::renderToImage(QSize imageSize = QSize()) const

Rendert den aktuellen Frame als Bild mit der Größe imageSize. Gibt einen Shared Pointer auf das Grab-Ergebnis zurück, über den auf das gerenderte Bild zugegriffen werden kann, sobald es bereitsteht. Das Bild wird mit den aktuellen Antialiasing-Einstellungen gerendert.

Siehe auch QQuickItem::grabToImage().

QAbstract3DAxis *Q3DGraphsWidgetItem::selectedAxis() const

Kann verwendet werden, um die ausgewählte Achse nach dem Empfang eines „ selectedElementChanged “-Signals mit einem beliebigen Label-Typ abzurufen. Die Auswahl gilt bis zum nächsten „ selectedElementChanged “-Signal.

Gibt den Zeiger auf die ausgewählte Achse oder null zurück.

Siehe auch „ selectedElement “.

QCustom3DItem *Q3DGraphsWidgetItem::selectedCustomItem() const

Kann verwendet werden, um das ausgewählte benutzerdefinierte Element abzurufen, nachdem das Signal „ selectedElementChanged “ mit dem Typ „Q3DGraphsWidgetItem::ElementType::CustomItem“ empfangen wurde. Das Eigentum an dem Element verbleibt beim Diagramm. Die Auswahl ist bis zum nächsten Signal „ selectedElementChanged “ gültig.

Gibt den Zeiger auf das ausgewählte benutzerdefinierte Element oder null zurück.

Siehe auch „ selectedElement “.

qsizetype Q3DGraphsWidgetItem::selectedCustomItemIndex() const

Kann verwendet werden, um den Index des ausgewählten benutzerdefinierten Elements abzufragen, nachdem das Signal „ selectedElementChanged “ mit dem Typ „Q3DGraphsWidgetItem::ElementType::CustomItem“ empfangen wurde. Die Auswahl bleibt bis zum nächsten Signal „ selectedElementChanged “ gültig.

Gibt den Index des ausgewählten benutzerdefinierten Elements oder -1 zurück.

Siehe auch „ selectedElement “.

int Q3DGraphsWidgetItem::selectedLabelIndex() const

Kann verwendet werden, um den Index der ausgewählten Beschriftung abzufragen, nachdem ein „ selectedElementChanged “-Signal mit einem beliebigen Beschriftungstyp empfangen wurde. Die Auswahl bleibt bis zum nächsten „ selectedElementChanged “-Signal gültig.

Gibt den Index des ausgewählten Labels oder -1 zurück.

Siehe auch „ selectedElement “.

[slot] void Q3DGraphsWidgetItem::setCameraPosition(float horizontal, float vertical, float zoom = 100.0f)

Hilfsfunktion zum Festlegen der Kameradrehungen und der Entfernung. Die Eigenschaften „horizontal “ und „ vertical “ definieren die zu verwendenden Kameradrehungen. Der optionale Parameter „ zoom “ kann angegeben werden, um den Zoom-Prozentsatz der Kamera innerhalb der durch die Eigenschaften „ minCameraZoomLevel “ und „ maxCameraZoomLevel “ definierten Grenzen festzulegen.

[slot, since 6.12] void Q3DGraphsWidgetItem::setPanButton(Qt::MouseButtons button)

Legt die Maus button fest, die zum Auslösen des Schwenkens in 3D-Diagrammen verwendet wird.

Diese Funktion wurde in Qt 6.12 eingeführt.

Siehe auch „ panEnabled “.

[slot] void Q3DGraphsWidgetItem::setWidget(QQuickWidget *widget)

Legt die angegebene „ widget “-Instanz als „ QQuickWidget “ für das Widget-Element fest. Das Diagramm wird als Inhalt des „ QQuickWidget “ festgelegt.

Diagramme können nur in Widget-Anwendungen gerendert werden, die QQuickWidgets verwenden.

Anwendungsbeispiel:

QQuickWidget quickwidget;
Q3DBarsWidgetItem graph;
graph.setWidget(&quickwidget);

Siehe auch ` widget()` .

QList<QGraphsTheme *> Q3DGraphsWidgetItem::themes() const

Gibt die Liste aller hinzugefügten Designs zurück.

Siehe auch „ addTheme()“.

QQuickWidget *Q3DGraphsWidgetItem::widget() const

Gibt einen Zeiger auf die Instanz von ` QQuickWidget ` zurück, die für das Widget-Element festgelegt wurde.

Siehe auch ` setWidget()`.

© 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.