Bars3D QML Type
3D-Balkendiagramm. Mehr...
| Import Statement: | import QtGraphs |
| Inherits: |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- Bars3D ist Teil von „Qt Graphs “ – QML-Typen für 3D.
Eigenschaften
- ambientLightStrength : real
- aspectRatio : real
- barSeriesMargin : size
- barSpacing : size
- barSpacingRelative : bool
- barThickness : real
- cameraPreset : Graphs3D.CameraPreset
- cameraTargetPosition : vector3d
- cameraXRotation : real
- cameraYRotation : real
- cameraZoomLevel : real
- columnAxis : Category3DAxis
- currentFps : int
- customItemList : list<Custom3DItem>
- cutoffMargin : real
(since 6.11) - dragMode : Graphs3D.DragMode
(since 6.12) - floorLevel : real
- gridLineType : Graphs3D.GridLineType
- horizontalAspectRatio : real
- labelMargin : real
- lightColor : color
- lightStrength : real
- locale : locale
- margin : real
- maxCameraXRotation : real
(since 6.9) - maxCameraYRotation : real
(since 6.9) - maxCameraZoomLevel : real
- measureFps : bool
- minCameraXRotation : real
(since 6.9) - minCameraYRotation : real
(since 6.9) - minCameraZoomLevel : real
- msaaSamples : int
- multiSeriesUniform : bool
- optimizationHint : Graphs3D.OptimizationHint
- orthoProjection : bool
- panEnabled : bool
(since 6.12) - polar : bool
- primarySeries : Bar3DSeries
- queriedGraphPosition : vector3d
- radialLabelOffset : real
- renderingMode : Graphs3D.RenderingMode
- rootNode : Node
(since 6.9) - rotationEnabled : bool
- rowAxis : Category3DAxis
- scene : Scene3D
- selectedElement : Graphs3D.ElementType
- selectedSeries : Bar3DSeries
- selectionEnabled : bool
- selectionMode : Graphs3D.SelectionMode
- seriesList : list<Bar3DSeries>
- shadowQuality : Graphs3D.ShadowQuality
- shadowStrength : real
- theme : GraphsTheme
- transparencyTechnique : Graphs3D.TransparencyTechnique
(since 6.9) - valueAxis : ValueAxis3D
- wrapCameraXRotation : bool
- wrapCameraYRotation : bool
- zoomAtTargetEnabled : bool
- zoomEnabled : bool
Signale
- barSeriesMarginChanged(size margin)
- barSpacingChanged(size spacing)
- barSpacingRelativeChanged(bool relative)
- barThicknessChanged(real thicknessRatio)
- columnAxisChanged(Category3DAxis axis)
- doubleTapped(QEventPoint eventPoint, Qt::MouseButton button)
- dragged(QVector2D delta)
- floorLevelChanged(real level)
- longPressed()
- mouseMove(QPoint mousePos)
- multiSeriesUniformChanged(bool uniform)
- pinch(qreal delta)
- primarySeriesChanged(Bar3DSeries series)
- rowAxisChanged(Category3DAxis axis)
- selectedSeriesChanged(Bar3DSeries series)
- tapped(QEventPoint eventPoint, Qt::MouseButton button)
- valueAxisChanged(ValueAxis3D axis)
- wheel(QQuickWheelEvent *event)
Methoden
- qsizetype addCustomItem(Custom3DItem item)
- void addSeries(Bar3DSeries series)
- void clearSelection()
- void doPicking(QPoint point)
- void doRayPicking(QVector3D origin, QVector3D direction)
- bool hasSeries(Abstract3DSeries series)
- void insertSeries(int index, Bar3DSeries series)
- void releaseCustomItem(Custom3DItem item)
- void removeCustomItem(Custom3DItem item)
- void removeCustomItemAt(vector3d position)
- void removeCustomItems()
- void removeSeries(Bar3DSeries series)
- void renderSliceToImage(int requestedIndex, QtGraphs3D::SliceCaptureType sliceType, QUrl filePath)
(since 6.10) - Abstract3DAxis selectedAxis()
- Custom3DItem selectedCustomItem()
- qsizetype selectedCustomItemIndex()
- int selectedLabelIndex()
- void setDefaultInputHandler()
- void setDragButton(Qt::MouseButtons button)
- void setPanButton(Qt::MouseButtons button)
(since 6.12) - void unsetDefaultDragHandler()
- void unsetDefaultInputHandler()
- void unsetDefaultPinchHandler()
- void unsetDefaultTapHandler()
- void unsetDefaultWheelHandler()
Ausführliche Beschreibung
Dieser Typ ermöglicht es Entwicklern, mit „ Qt Quick “ Balkendiagramme in 3D darzustellen.
Um diesen Typ zu verwenden, müssen Sie das Modul „ Qt Graphs “ importieren:
import QtGraphsAnschließend können Sie „Bars3D“ in Ihren QML-Dateien verwenden:
import QtQuick
import QtGraphs
Item {
width: 640
height: 480
Bars3D {
width: parent.width
height: parent.height
Bar3DSeries {
itemLabelFormat: "@colLabel, @rowLabel: @valueLabel"
ItemModelBarDataProxy {
itemModel: dataModel
// Mapping model roles to bar series rows, columns, and values.
rowRole: "year"
columnRole: "city"
valueRole: "expenses"
}
}
}
ListModel {
id: dataModel
ListElement{ year: "2022"; city: "Oulu"; expenses: "4200"; }
ListElement{ year: "2022"; city: "Rauma"; expenses: "2100"; }
ListElement{ year: "2022"; city: "Helsinki"; expenses: "7040"; }
ListElement{ year: "2022"; city: "Tampere"; expenses: "4330"; }
ListElement{ year: "2023"; city: "Oulu"; expenses: "3960"; }
ListElement{ year: "2023"; city: "Rauma"; expenses: "1990"; }
ListElement{ year: "2023"; city: "Helsinki"; expenses: "7230"; }
ListElement{ year: "2023"; city: "Tampere"; expenses: "4650"; }
}
}Ein ausführlicheres Anwendungsbeispiel finden Sie unter „Einfaches Balkendiagramm “.
Siehe auch „ Bar3DSeries“ , „ ItemModelBarDataProxy “, „ Scatter3D “, „ Surface3D “ und „Qt Graphs “ – C++-Klassen für 3D.
Dokumentation zu den Eigenschaften
ambientLightStrength : real
Die Umgebungshelligkeit für das gesamte Diagramm. 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.0 und 1.0 liegen.
aspectRatio : real
Das Skalierungsverhältnis des Diagramms zwischen der längsten Achse auf der horizontalen Ebene und der y-Achse. Der Standardwert ist „ 2.0 “.
Hinweis: Hat keine Auswirkungen auf „ Bars3D “.
Siehe auch „ horizontalAspectRatio “.
barSeriesMargin : size
Abstand zwischen den Spalten einer Reihe in der X- und Z-Richtung. Standardmäßig auf „ (0.0, 0.0) “ voreingestellt. Sinnvolle Werte liegen im Bereich [0,1).
barSpacing : size
Stababstand in X- und Z-Richtung.
Standardmäßig auf „ (1.0, 1.0) “ voreingestellt. Der Abstand wird durch die Eigenschaft „ barSpacingRelative “ beeinflusst.
barSpacingRelative : bool
Ob der Abstand absolut ist oder sich relativ zur Balkenstärke bezieht.
Wenn „ true “ eingestellt ist, bedeutet der Wert „ 0.0 “, dass die Balken nebeneinander platziert werden, „ 1.0 “ bedeutet, dass zwischen den Balken ein Abstand in der Breite eines Balkens gelassen wird, und so weiter. Die Voreinstellung lautet „ true “.
barThickness : real
Das Verhältnis der Stabdicke zwischen den Abmessungen X und Z. Der Wert „ 1.0 “ bedeutet, dass die Stäbe genauso breit wie tief sind, während „ 0.5 “ bedeutet, dass sie doppelt so tief wie breit sind.
cameraPreset : Graphs3D.CameraPreset
Die derzeit aktive Kameravoreinstellung, die zu Graphs3D.CameraPreset gehört. Ist keine Voreinstellung aktiv, lautet der Wert Graphs3D.CameraPreset.NoPreset.
cameraTargetPosition : vector3d
Das Kameraziel als Vector3D. Standardwert ist vector3d(0.0, 0.0, 0.0).
Gültige Koordinatenwerte liegen zwischen -1.0...1.0, wobei die Grenzwerte die Ränder des entsprechenden Achsenbereichs angeben. Alle Werte außerhalb dieses Bereichs werden auf den Grenzwert begrenzt.
cameraXRotation : real
Der X-Drehwinkel der Kamera um den Zielpunkt in Grad, ausgehend von der aktuellen Ausgangsposition.
cameraYRotation : real
Der Y-Drehwinkel der Kamera um den Zielpunkt in Grad, ausgehend von der aktuellen Ausgangsposition.
cameraZoomLevel : real
Der Zoomfaktor der Kamera in Prozent. Der Standardwert „ 100.0 “ bedeutet, dass in der Kamera kein Zoom ein- oder ausgezoomt ist. Der Wert wird durch die Eigenschaften „ minCameraZoomLevel “ und „ maxCameraZoomLevel “ begrenzt.
Siehe auch „ minCameraZoomLevel “ und „ maxCameraZoomLevel “.
columnAxis : Category3DAxis
Die aktive Spaltenachse.
Wird keine Achse angegeben, wird eine temporäre Standardachse ohne Beschriftungen erstellt. Diese temporäre Achse wird gelöscht, wenn eine andere Achse explizit mit derselben Ausrichtung festgelegt wird.
currentFps : int
Wenn die FPS-Messung aktiviert ist, werden die Ergebnisse der letzten Sekunde in dieser schreibgeschützten Eigenschaft gespeichert. Es dauert mindestens eine Sekunde, bis dieser Wert nach Aktivierung der Messung aktualisiert wird.
Siehe auch measureFps.
customItemList : list<Custom3DItem>
Die Liste der „ Custom3DItem “-Elemente, die dem Diagramm hinzugefügt wurden. Das Diagramm übernimmt die Verantwortung für die hinzugefügten Elemente.
cutoffMargin : real [since 6.11]
Der Wert, der für die Differenz zwischen den Achsengrenzen und der Position verwendet wird, an der Diagrammelemente ausgeblendet werden.
Hinweis: Hat keine Auswirkungen auf Balkendiagramme.
Diese Eigenschaft wurde in Qt 6.11 eingeführt.
dragMode : Graphs3D.DragMode [since 6.12]
Legt fest, wie Drag-Ereignisse im Diagramm interpretiert werden; einer der Werte der Enumeration „Graphs3D.DragMode“.
Standardwert ist „ Graphs3D.DragMode.Rotate “.
Diese Eigenschaft wurde in Qt 6.12 eingeführt.
Siehe auch „ panEnabled “.
floorLevel : real
Die Untergrenze für das Balkendiagramm in den Datenkoordinaten der Y-Achse.
Die tatsächliche Untergrenze wird durch die Minimal- und Maximalwerte der Y-Achse begrenzt. Der Standardwert ist Null.
gridLineType : Graphs3D.GridLineType
Legt fest, ob der Typ der Gitterlinien „ Graphs3D.GridLineType.Shader “ oder „ Graphs3D.GridLineType.Geometry “ ist.
Dieser Wert wirkt sich auf alle Gitterlinien aus.
Siehe auch „ Graphs3D.GridLineType “.
horizontalAspectRatio : real
Das Skalierungsverhältnis zwischen der x-Achse und der z-Achse im Diagramm. Der Wert „ 0.0 “ bedeutet eine automatische Skalierung entsprechend den Achsenbereichen. Die Standardeinstellung ist „ 0.0 “.
Hinweis: Hat keine Auswirkungen auf „ Bars3D “, das die Skalierung in der horizontalen Ebene über die Eigenschaften „ barThickness “ und „ barSpacing “ steuert. Polardiagramme ignorieren diese Eigenschaft ebenfalls.
Siehe auch aspectRatio, polar, Bars3D::barThickness und Bars3D::barSpacing.
labelMargin : real
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
Siehe auch QAbstract3DAxis::labelAutoAngle.
lightColor : color
Die Farbe des Umgebungs- und Spiegelungslichts, die unter Scene3D definiert ist.
lightStrength : real
Die Stärke des Spiegelglanzlichts für das gesamte Diagramm. Der Wert muss zwischen 0.0 und 10.0 liegen.
Dieser Wert wirkt sich auf das unter Scene3D angegebene Licht aus.
locale : locale
Legt die für die Formatierung verschiedener Zahlenangaben verwendete Locale fest. Standardmäßig ist die Locale „ "C" “ eingestellt.
Siehe auch Value3DAxis::labelFormat.
margin : real
Der absolute Wert, der für den Abstand zwischen dem Rand des darstellbaren Diagrammbereichs und dem Rand des Diagrammhintergrunds verwendet wird.
Ist der Randwert 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. 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, wenn der Rand im Vergleich zur Größe der Achsenbeschriftungen klein ist, die Positionen der Randbeschriftungen der Achsen angepasst, um eine Überlappung mit den Randbeschriftungen der benachbarten Achsen zu vermeiden.
maxCameraXRotation : real [since 6.9]
Der maximale X-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet 180.0
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
maxCameraYRotation : real [since 6.9]
Der maximale Y-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet 90.0
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
maxCameraZoomLevel : real
Legt die maximal zulässige Zoomstufe der Kamera fest. Liegt die neue maximale Stufe unter der bestehenden minimalen Stufe, wird auch die minimale Stufe an die neue maximale Stufe angepasst. Liegt der aktuelle Wert „ cameraZoomLevel “ außerhalb der neuen Grenzen, wird er ebenfalls angepasst. Der Standardwert ist „ 500.0f “.
Siehe auch „ cameraZoomLevel “ und „ minCameraZoomLevel “.
measureFps : bool
Wenn „ true “ gesetzt ist, erfolgt das Rendern kontinuierlich statt auf Abruf, und der Wert der Eigenschaft „ currentFps “ wird aktualisiert. Der Standardwert ist „ false “.
Siehe auch „ currentFps “.
minCameraXRotation : real [since 6.9]
Der minimale X-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet -180.0
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
minCameraYRotation : real [since 6.9]
Der minimale Y-Drehwinkel der Kamera um den Zielpunkt in Grad. Der Standardwert lautet 0.0
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
minCameraZoomLevel : real
Legt den minimal zulässigen Kamera-Zoomfaktor fest. Wenn der neue Mindestwert höher ist als der bisherige Höchstwert, wird auch der Höchstwert an den neuen Mindestwert angepasst. Liegt der aktuelle cameraZoomLevel außerhalb der neuen Grenzen, wird er ebenfalls angepasst. Der Wert für „minCameraZoomLevel“ darf nicht unter 1.0 liegen. Der Standardwert ist 10.0.
Siehe auch „ cameraZoomLevel “ und „ maxCameraZoomLevel “.
msaaSamples : int
Die Anzahl der Samples, die beim Multisample-Antialiasing verwendet werden, wenn „ renderingMode “ auf „ Indirect “ gesetzt ist. Wenn „ renderingMode “ auf „ DirectToBackground “ gesetzt ist, ist dieser Eigenschaftswert schreibgeschützt und gibt die Anzahl der Samples zurück, die durch das Fensteroberflächenformat festgelegt ist. Der Standardwert ist „ 4 “.
Siehe auch renderingMode.
multiSeriesUniform : bool
Legt fest, ob die Balken anhand der Proportionen eines einzelnen Serienbalkens skaliert werden sollen, auch wenn mehrere Serien angezeigt werden. Bei der Einstellung „ true “ wird „ bar spacing “ nur auf die X-Achse korrekt angewendet. Die Standardeinstellung ist „ false “.
optimizationHint : Graphs3D.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 des Diagramms und eignet sich ideal für große, unveränderliche Datensätze. Bei dynamischen Datenänderungen und Elementrotationen ist er jedoch langsamer. Die Auswahl wird nicht optimiert, daher ist die Verwendung des statischen Modus bei sehr großen Datensätzen nicht ratsam. 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 lautet „ Default “.
Hinweis: In manchen Umgebungen werden große Grafiken, die die statische Optimierung nutzen, 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.
Siehe auch Abstract3DSeries::mesh und Graphs3D.OptimizationHint.
orthoProjection : bool
Wenn „ true “ eingestellt ist, wird zur Darstellung des Diagramms die orthogonale Projektion verwendet. Die Standardeinstellung ist „ false “.
Hinweis: Bei der Einstellung „ true “ werdenSchatten deaktiviert.
panEnabled : bool [since 6.12]
Gibt an, ob dieser Eingabehandler das Verschieben im Diagramm zulässt.
Standardwert ist „ true “.
Diese Eigenschaft wurde in Qt 6.12 eingeführt.
polar : bool
Wenn true ist, werden die horizontalen Achsen in Polarkoordinaten umgewandelt. Die x-Achse wird zur Winkelachse und die z-Achse zur Radialachse. Der Polarmodus ist für Balkendiagramme nicht verfügbar.
Standardmäßig ist „ false “ eingestellt.
Siehe auch „ orthoProjection “ und „ radialLabelOffset “.
primarySeries : Bar3DSeries
Die primäre Reihe des Diagramms. Sie dient zur Festlegung der Beschriftungen der Zeilen- und Spaltenachsen, wenn diese nicht explizit für die Achsen festgelegt wurden.
Wenn die angegebene Reihe noch nicht zum Diagramm hinzugefügt wurde, wird sie durch die Festlegung als primäre Reihe implizit zum Diagramm hinzugefügt.
Wird die primäre Reihe selbst aus dem Diagramm entfernt, wird diese Eigenschaft auf den Standardwert zurückgesetzt.
Ist die Reihe null, wird diese Eigenschaft auf den Standardwert zurückgesetzt. Standardmäßig ist dies die zuerst hinzugefügte Reihe oder Null, wenn dem Diagramm keine Reihen hinzugefügt wurden.
queriedGraphPosition : vector3d [read-only]
Diese schreibgeschützte Eigenschaft enthält die aktuellsten Positionswerte des Diagramms entlang jeder Achse, die mit ` Scene3D::graphPositionQuery` abgefragt wurden. 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 stellen stattdessen eine undefinierte Position außerhalb des Bereichs ` [-1, 1]` dar. Der Wert bleibt 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 Kastens, 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.
Siehe auch Scene3D::graphPositionQuery.
radialLabelOffset : real
Diese Eigenschaft legt den normierten horizontalen Versatz für die Achsenbeschriftungen der radialen Polarkoordinate fest. 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. Diese Eigenschaft wird ignoriert, wenn der Wert der Eigenschaft „polar“ auf „ false “ gesetzt ist. Der Standardwert ist „ 1.0 “.
Siehe auch „ polar “.
renderingMode : Graphs3D.RenderingMode
Wie das Diagramm dargestellt wird. Standardmäßig ist „ Indirect “ eingestellt.
Hinweis: Das Setzen der Eigenschaft „ antialiasing “ des Diagramms hat keine Auswirkungen. Sie wird jedoch vom Diagramm selbst gesetzt, wenn der aktuelle Darstellungsmodus Antialiasing verwendet.
Siehe auch „ msaaSamples “ und „ Graphs3D.RenderingMode “.
rootNode : Node [read-only, since 6.9]
Gibt einen Zeiger auf den Wurzelknoten des 3D-Graphen zurück. Verwenden Sie diese Eigenschaft, um einen 3D-Graphen mithilfe von „ importScene “ in einen separaten „ View3D “ einzufügen:
Bars3D {
id: bars
}
View3D {
importScene: bars.rootNode
}Diese Eigenschaft wurde in Qt 6.9 eingeführt.
Siehe auch „ View3D “.
rotationEnabled : bool
Gibt an, ob dieser Eingabe-Handler die Drehung von Diagrammen zulässt.
Standardwert ist „ true “.
rowAxis : Category3DAxis
Die aktive Zeilenachse.
Wird keine Achse angegeben, wird eine temporäre Standardachse ohne Beschriftungen erstellt. Diese temporäre Achse wird gelöscht, wenn eine andere Achse explizit auf dieselbe Ausrichtung gesetzt wird.
scene : Scene3D [read-only]
Der Zeiger „ Scene3D “, mit dem die Szene bearbeitet und auf die Szenenelemente zugegriffen werden kann.
Diese Eigenschaft ist schreibgeschützt.
selectedElement : Graphs3D.ElementType [read-only]
Das im Diagramm ausgewählte Element.
Mit dieser Eigenschaft lässt sich der Typ des ausgewählten Elements abfragen. Der Typ bleibt gültig, bis im Diagramm eine neue Auswahl getroffen wird und das Signal „ selectedElementChanged “ ausgelöst wird.
Das Signal kann beispielsweise zur Implementierung einer benutzerdefinierten Eingabeverarbeitung verwendet werden, wie im Beispiel „Axis Handling“ gezeigt.
Siehe auch „ selectedLabelIndex()“, „ selectedAxis()“, „ selectedCustomItemIndex()“, „ selectedCustomItem()“, „ Bars3D::selectedSeries “, „ Scatter3D::selectedSeries “, „ Scene3D::selectionQueryPosition “ und „ Graphs3D.ElementType “.
selectedSeries : Bar3DSeries [read-only]
Die ausgewählte Serie oder null. Wenn für selectionMode das Flag „ SelectionMultiSeries “ gesetzt ist, enthält diese Eigenschaft die Serie, zu der der ausgewählte Balken gehört.
selectionEnabled : bool
Gibt an, ob dieser Eingabe-Handler die Auswahl aus dem Diagramm zulässt.
Standardwert ist „ true “.
selectionMode : Graphs3D.SelectionMode
Der aktive Auswahlmodus im Diagramm. Einer der Enum-Werte aus „ Graphs3D.SelectionFlag “.
seriesList : list<Bar3DSeries> [default]
Die Reihen des Diagramms. Standardmäßig enthält diese Eigenschaft eine leere Liste. Um die Reihen festzulegen, verwenden Sie entweder die Funktion ` addSeries()` oder definieren Sie sie als untergeordnete Elemente des Diagramms.
shadowQuality : Graphs3D.ShadowQuality
Die Qualität der Schatten. Einer der Enum-Werte aus „ Graphs3D.ShadowQuality “.
shadowStrength : real
Die Schattenintensität für das gesamte Diagramm. Je höher der Wert, desto dunkler sind die Schatten. Der Wert muss zwischen 0.0 und 100.0 liegen.
Dieser Wert beeinflusst die unter Scene3D festgelegte Beleuchtung.
theme : GraphsTheme
Das aktive Thema der Grafik.
Siehe auch GraphsTheme.
transparencyTechnique : Graphs3D.TransparencyTechnique [since 6.9]
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.
| Konstante | Beschreibung |
|---|---|
Default | Gibt an, dass ordnungsunabhängige Transparenztechniken nicht 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 “ }. |
Approximate | Gibt an, dass ein Diagramm versucht, eine Annäherung an die reihenfolgeunabhängige Transparenz zu erzielen. 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 Leistungseinbußen jedoch geringer sein müssen als bei der Verwendung einer exakten reihenfolgeunabhängigen Transparenz. |
Accurate | Gibt an, dass eine genaue, reihenfolgeunabhängige Transparenz verwendet wird. Verwenden Sie diese Option, wenn eine perfekte Darstellung der Transparenz erforderlich ist. |
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
valueAxis : ValueAxis3D
Die aktive Werteachse.
Wird keine Achse angegeben, wird eine temporäre Standardachse ohne Beschriftungen und mit einem sich automatisch anpassenden Bereich erstellt. Diese temporäre Achse wird gelöscht, wenn eine andere Achse explizit mit derselben Ausrichtung festgelegt wird.
wrapCameraXRotation : bool
Das Verhalten der Minimal- und Maximalgrenzen bei der X-Drehung. Standardmäßig wechselt die X-Drehung vom Minimalwert zum Maximalwert und vom Maximalwert zum Minimalwert.
Bei der Einstellung „ true “ wird die X-Drehung der Kamera vom Minimalwert zum Maximalwert und vom Maximalwert zum Minimalwert wiederholt. Bei der Einstellung „ false “ wird die X-Drehung der Kamera auf den durch den Minimal- und Maximalwert bestimmten Sektor beschränkt.
wrapCameraYRotation : bool
Das Verhalten der Minimal- und Maximalgrenzen bei der Y-Drehung. Standardmäßig ist die Y-Drehung auf den Minimal- und Maximalwert begrenzt, ohne dass ein Umschlagen erfolgt.
Wenn „ true “ gesetzt ist, wird die Y-Drehung der Kamera vom Minimal- zum Maximalwert und vom Maximal- zum Minimalwert umgeschaltet. Wenn „ false “ gesetzt ist, ist die Y-Drehung der Kamera auf den durch den Minimal- und Maximalwert bestimmten Sektor beschränkt.
zoomAtTargetEnabled : bool
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 “.
zoomEnabled : bool
Gibt an, ob dieser Eingabe-Handler das Zoomen im Diagramm zulässt.
Standardwert ist „ true “.
Signal-Dokumentation
barSeriesMarginChanged(size margin)
Dieses Signal wird ausgelöst, wenn sich „ barSeriesMargin “ in „ margin “ ändert.
Hinweis: Der zugehörige Handler lautet onBarSeriesMarginChanged.
barSpacingChanged(size spacing)
Dieses Signal wird ausgelöst, wenn sich barSpacing in spacing ändert.
Hinweis: Der entsprechende Handler lautet „ onBarSpacingChanged “.
barSpacingRelativeChanged(bool relative)
Dieses Signal wird ausgelöst, wenn sich barSpacingRelative in relative ändert.
Hinweis: Der entsprechende Handler lautet onBarSpacingRelativeChanged.
barThicknessChanged(real thicknessRatio)
Dieses Signal wird ausgelöst, wenn sich barThickness in thicknessRatio ändert.
Hinweis: Der zugehörige Handler lautet onBarThicknessChanged.
columnAxisChanged(Category3DAxis axis)
Dieses Signal wird ausgelöst, wenn sich columnAxis in axis ändert.
Hinweis: Der entsprechende Handler lautet onColumnAxisChanged.
doubleTapped(QEventPoint eventPoint, Qt::MouseButton button)
Dieses Signal wird ausgelöst, wenn das Diagrammelement innerhalb kurzer Zeit zweimal angetippt wird. Der Signalparameter „ eventPoint “ enthält Informationen aus dem Release-Ereignis über den Punkt, der angetippt wurde, und „ button “ ist der „ mouse button “, der angeklickt wurde, bzw. „ NoButton “ auf einem Touchscreen.
Hinweis: Der entsprechende Handler ist „ onDoubleTapped “.
Siehe auch „ QEventPoint “, „ Qt::MouseButtons “ und „ TapHandler::doubleTapped “.
dragged(QVector2D delta)
Dieses Signal wird ausgegeben, wenn sich die Translation der Punktgruppe im Diagramm während der Ausführung der Pinch-Geste ändert. Der Vektor „ delta “ gibt die Änderung der Translation an.
Hinweis: Der entsprechende Handler ist „ onDragged “.
Siehe auch „ PinchHandler::translationChanged “.
floorLevelChanged(real level)
Dieses Signal wird ausgelöst, wenn sich floorLevel in level ändert.
Hinweis: Der entsprechende Handler ist onFloorLevelChanged.
longPressed()
Dieses Signal wird ausgelöst, wenn das Element „ parent “ länger als „ TapHandler::longPressThreshold “ gedrückt gehalten wird.
Hinweis: Der entsprechende Handler lautet „ onLongPressed “.
Siehe auch „ TapHandler::longPressed “.
mouseMove(QPoint mousePos)
Dieses Signal wird ausgelöst, wenn der Graph ein „mouseMove“-Ereignis empfängt. Der Wert von „ mousePos “ gibt die Position der Maus an, während sich diese bewegt.
Hinweis: Der entsprechende Handler ist „ onMouseMove “.
Siehe auch ` QQuickItem::mouseMoveEvent`.
multiSeriesUniformChanged(bool uniform)
Dieses Signal wird ausgelöst, wenn sich „ multiSeriesUniform “ in „ uniform “ ändert.
Hinweis: Der entsprechende Handler lautet onMultiSeriesUniformChanged.
pinch(qreal delta)
Dieses Signal wird ausgelöst, wenn sich der Skalierungsfaktor im Diagramm ändert, während die Pinch-Geste ausgeführt wird. Der Wert „ delta “ gibt die multiplikative Änderung der Skalierung an.
Hinweis: Der entsprechende Handler ist „ onPinch “.
Siehe auch „ PinchHandler::scaleChanged “.
primarySeriesChanged(Bar3DSeries series)
Dieses Signal wird ausgelöst, wenn sich „ primarySeries “ in „ series “ ändert.
Hinweis: Der zugehörige Handler lautet onPrimarySeriesChanged.
rowAxisChanged(Category3DAxis axis)
Dieses Signal wird ausgelöst, wenn sich „ rowAxis “ in „ axis “ ändert.
Hinweis: Der entsprechende Handler lautet onRowAxisChanged.
selectedSeriesChanged(Bar3DSeries series)
Dieses Signal wird ausgelöst, wenn sich „ selectedSeries “ in „ series “ ändert.
Hinweis: Der entsprechende Handler lautet onSelectedSeriesChanged.
tapped(QEventPoint eventPoint, Qt::MouseButton button)
Dieses Signal wird ausgelöst, wenn das Diagrammelement einmal angetippt wird. Der Signalparameter „ eventPoint “ enthält Informationen aus dem Release-Ereignis über den Punkt, der angetippt wurde, und „ button “ ist das „ mouse button “, das angeklickt wurde, bzw. „ NoButton “ auf einem Touchscreen.
Hinweis: Der entsprechende Handler ist „ onTapped “.
Siehe auch QEventPoint, Qt::MouseButtons und TapHandler::singleTapped.
valueAxisChanged(ValueAxis3D axis)
Dieses Signal wird ausgelöst, wenn sich „ valueAxis “ in „ axis “ ändert.
Hinweis: Der entsprechende Handler lautet „ onValueAxisChanged “.
wheel(QQuickWheelEvent *event)
Dieses Signal wird jedes Mal ausgelöst, wenn der Graph ein „ event “ vom Typ „ QWheelEvent “ empfängt: also jedes Mal, wenn das Rad bewegt oder die Scroll-Geste aktualisiert wird.
Hinweis: Der entsprechende Handler ist ` onWheel`.
Siehe auch „ WheelEvent “ und „ WheelHandler::wheel “.
Methodendokumentation
qsizetype addCustomItem(Custom3DItem item)
Fügt dem Graph ein ` Custom3DItem ` ` item ` hinzu. Der Graph übernimmt die Verantwortung für das hinzugefügte Element.
Gibt den Index des hinzugefügten Elements zurück, wenn das Hinzufügen 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.
Siehe auch removeCustomItems(), removeCustomItem() und removeCustomItemAt().
void addSeries(Bar3DSeries series)
Fügt die „ series “ zum Diagramm hinzu. Ein Diagramm kann mehrere Reihen enthalten, jedoch nur einen Achsenpaar; daher müssen die Zeilen und Spalten aller Reihen übereinstimmen, damit die visualisierten Daten aussagekräftig sind. Wenn das Diagramm mehrere sichtbare Reihen enthält, erzeugt nur die zuerst hinzugefügte Reihe die Zeilen- oder Spaltenbeschriftungen auf den Achsen, sofern diese nicht explizit für die Achsen festgelegt wurden. Wenn für die neu hinzugefügte Reihe ein Balken ausgewählt wurde, wird dieser hervorgehoben und eine eventuell vorhandene Auswahl wird aufgehoben. Nur eine der hinzugefügten Reihen kann eine aktive Auswahl haben.
Siehe auch ` GraphsItem3D::hasSeries()`.
void clearSelection()
Löscht die Auswahl aus allen zugehörigen Serien.
void 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 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 hasSeries(Abstract3DSeries series)
Gibt zurück, ob das „ series “ bereits zum Graphen hinzugefügt wurde.
void insertSeries(int index, Bar3DSeries series)
Fügt den „ series “ an der Position „ index “ in die Serienliste ein. Falls der „ series “ bereits zur Liste hinzugefügt wurde, wird er an die neue Position „ index “ verschoben.
Hinweis: Beim Verschieben einer Serie an eine neue Position „ index “, die hinter ihrem alten Index liegt, wird die neue Position in der Liste so berechnet, als befände sich die Serie noch an ihrem alten Index; der endgültige Index entspricht daher tatsächlich dem Wert „ index “ minus eins.
Siehe auch GraphsItem3D::hasSeries().
void releaseCustomItem(Custom3DItem item)
Erlangt die Eigentumsrechte an „ item “ zurück und entfernt „ item “ aus dem Diagramm.
Hinweis: Wenn dasselbe Element wieder zum Graph hinzugefügt wird, muss die Texturdatei neu festgelegt werden.
Siehe auch „ Custom3DItem::textureFile “.
void removeCustomItem(Custom3DItem item)
Entfernt den benutzerdefinierten „ item “. Löscht die ihm zugewiesenen Ressourcen.
void removeCustomItemAt(vector3d position)
Entfernt alle benutzerdefinierten Elemente unter position. Löscht die ihnen zugewiesenen Ressourcen.
void removeCustomItems()
Entfernt alle benutzerdefinierten Elemente. Löscht die ihnen zugewiesenen Ressourcen.
void removeSeries(Bar3DSeries series)
Entfernen Sie den Knoten „ series “ aus dem Graphen.
Siehe auch „ GraphsItem3D::hasSeries()“.
[since 6.10] void renderSliceToImage(int requestedIndex, QtGraphs3D::SliceCaptureType sliceType, QUrl filePath)
Exportiert einen 2D-Schnitt aus der Serie unter requestedIndex und speichert das Ergebnis als Bild unter der angegebenen Adresse filePath. Der exportierte Schnitt enthält Balken in Zeilen- oder Spaltenrichtung, die durch sliceType definiert sind.
Diese Methode wurde in Qt 6.10 eingeführt.
Abstract3DAxis selectedAxis()
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 die ausgewählte Achse oder „null“ zurück.
Siehe auch „ selectedElement “.
Custom3DItem selectedCustomItem()
Kann verwendet werden, um das ausgewählte benutzerdefinierte Element abzurufen, nachdem ein „ selectedElementChanged “-Signal vom Typ „ ElementType.CustomItem “ empfangen wurde. Das Eigentum an dem Element verbleibt beim Graphen. Die Auswahl gilt bis zum nächsten „ selectedElementChanged “-Signal.
Gibt das ausgewählte benutzerdefinierte Element oder null zurück.
Siehe auch „ selectedElement “.
qsizetype selectedCustomItemIndex()
Kann verwendet werden, um den Index des ausgewählten benutzerdefinierten Elements abzufragen, nachdem ein „ selectedElementChanged “-Signal vom Typ „ ElementType.CustomItem “ 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.
Siehe auch „ selectedElement “.
int selectedLabelIndex()
Kann verwendet werden, um den Index des ausgewählten Labels abzufragen, nachdem ein „ selectedElementChanged “-Signal mit einem beliebigen Label-Typ empfangen wurde. Die Auswahl gilt bis zum nächsten „ selectedElementChanged “-Signal.
Gibt den Index der ausgewählten Bezeichnung oder -1 zurück.
Siehe auch „ selectedElement “.
void setDefaultInputHandler()
* * @brief Stellt den Standardmechanismus zur Eingabeverarbeitung wieder her. * * Diese Methode reaktiviert die internen, vordefinierten Eingabebehandler. * Verwenden Sie diese Methode, um zum Standardverhalten zurückzukehren, nachdem Sie zuvor * unsetDefaultInputHandler aufgerufen haben. *
Siehe auch ` unsetDefaultInputHandler()`.
void setDragButton(Qt::MouseButtons button)
* * @brief Legt fest, welche Maustaste zum Auslösen von Drag-Ereignissen verwendet wird. * * Mit dieser Methode kann die Maustaste, die zum Auslösen * eines Drag-Vorgangs erforderlich ist, auf „ button “ geändert werden. * Die Standardeinstellung ist „ Qt::RightButton “.
[since 6.12] void setPanButton(Qt::MouseButtons button)
* * * @brief Legt die Maustaste fest, mit der Schwenkereignisse ausgelöst werden. * * Mit dieser Methode kann die Maustaste, die zum Auslösen * eines Ziehvorgangs erforderlich ist, auf „ button “ geändert werden. * Die Standardeinstellung ist „ Qt::MiddleButton “.
Diese Methode wurde in Qt 6.12 eingeführt.
void unsetDefaultDragHandler()
* * @brief Deaktiviert den standardmäßigen Drag-Ereignis-Handler. * * Dadurch wird die integrierte Reaktion auf Drag-Gesten gezielt deaktiviert. * Verwenden Sie diese Option, wenn Sie einen benutzerdefinierten Handler für Drag-Ereignisse implementieren möchten. *
Siehe auch unsetDefaultInputHandler().
void unsetDefaultInputHandler()
* * @brief Deaktiviert den Standardmechanismus zur Eingabeverarbeitung. * * Diese Methode deaktiviert alle vordefinierten Standard-Eingabebehandler. * Rufen Sie diese Methode auf, wenn Sie das Standardverhalten überschreiben möchten. *
Siehe auch unsetDefaultTapHandler(), unsetDefaultDragHandler(), unsetDefaultWheelHandler() und unsetDefaultPinchHandler().
void unsetDefaultPinchHandler()
* * @brief Deaktiviert den Standard-Handler für Pinch-Gesten. * * Damit wird die integrierte Reaktion auf Pinch-Gesten gezielt deaktiviert. * Verwenden Sie diese Option, um einen benutzerdefinierten Handler für Pinch-Gesten zu implementieren. *
Siehe auch unsetDefaultInputHandler().
void unsetDefaultTapHandler()
* * @brief Deaktiviert den standardmäßigen Handler für Tipp-Ereignisse. * * Dadurch wird die integrierte Reaktion auf Tipp- oder Klick-Ereignisse ausdrücklich deaktiviert, * sodass eine benutzerdefinierte Logik zur Verarbeitung von Tipp-Ereignissen möglich ist. *
Siehe auch unsetDefaultInputHandler().
void unsetDefaultWheelHandler()
* * @brief Deaktiviert den standardmäßigen Ereignis-Handler für das Mausrad. * * Dadurch wird insbesondere die integrierte Reaktion auf das Scrollen mit dem Mausrad deaktiviert. * Verwenden Sie diese Option, wenn Sie ein benutzerdefiniertes Verhalten für das Mausrad implementieren möchten. *
Siehe auch unsetDefaultInputHandler().
© 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.