Auf dieser Seite

Custom3DVolume QML Type

Fügt einem Diagramm ein volumengeneriertes Objekt hinzu. Mehr...

Import Statement: import QtDataVisualization 1.12
Since: QtDataVisualization 1.2
In C++: QCustom3DVolume
Inherits:

Custom3DItem

Status: Deprecated

Dieser Typ ist veraltet. Wir raten dringend davon ab, ihn in neuem Code zu verwenden.

Eigenschaften

Ausführliche Beschreibung

Ein volumengeneriertes Objekt ist ein Quader mit einer 3D-Textur. Für das Volumen werden drei Schnittebenen unterstützt, jeweils eine entlang jeder Hauptachse des Volumens.

Das Rendern von Volumenobjekten ist sehr leistungsintensiv, insbesondere wenn das Volumen weitgehend transparent ist, da der Inhalt des Volumens mittels Raytracing dargestellt wird. Die Leistung skaliert nahezu linear mit der Anzahl der Pixel, die das Volumen auf dem Bildschirm einnimmt. Daher sind die Darstellung des Volumens in einer kleineren Ansicht oder die Begrenzung des Zoomfaktors des Diagramms einfache Möglichkeiten, die Leistung zu verbessern. Ebenso haben die Abmessungen der Volumen-Textur einen großen Einfluss auf die Leistung. Wenn die Bildrate wichtiger ist als eine pixelgenaue Darstellung des Volumeninhalts, sollten Sie in Erwägung ziehen, den High-Definition-Shader zu deaktivieren, indem Sie die Eigenschaft „ useHighDefShader “ auf „ false “ setzen.

Hinweis: Das Ausfüllen der Volumendaten wäre aus reinem QML heraus in der Regel weder effizient noch praktikabel, daher werden die damit direkt verbundenen Eigenschaften von QML nicht vollständig unterstützt. Erstellen Sie eine hybride QML/C++-Anwendung, wenn Sie Volumenobjekte mit einer Benutzeroberfläche vom Typ „ Qt Quick “ verwenden möchten.

Hinweis: Volumetrische Objekte werden nur bei orthogonaler Projektion unterstützt.

Hinweis: Volumetrische Objekte verwenden 3D-Texturen, die in OpenGL ES2-Umgebungen nicht unterstützt werden.

Siehe auch „ AbstractGraph3D::orthoProjection “ und „ useHighDefShader “.

Dokumentation zu den Eigenschaften

alphaMultiplier : real

Der Alpha-Wert jedes Texels der Volumen-Textur wird zum Zeitpunkt des Renderings mit diesem Wert multipliziert. Dies kann genutzt werden, um eine gleichmäßige Transparenz im Volumen zu erzeugen. Wenn preserveOpacity auf true gesetzt ist, sind nur Texel betroffen, die von vornherein zumindest eine gewisse Transparenz aufweisen; vollständig undurchsichtige Texel bleiben unberührt. Der Wert darf nicht negativ sein. Der Standardwert ist 1.0.

Siehe auch „ preserveOpacity “.

drawSliceFrames : bool

Wenn dieser Eigenschaftswert „ true “ lautet, werden die Rahmen der durch die Schnittindex-Eigenschaften angegebenen Schnitte um das Volumen herum gezeichnet. Lautet er „ false “, werden keine Schnittrahmen gezeichnet. Das Zeichnen von Schnittrahmen ist unabhängig vom Zeichnen der Schnitte, sodass Sie das gesamte Volumen anzeigen und dennoch die Schnittrahmen darum herum zeichnen können. Der Standardwert ist „ false “.

Siehe auch sliceIndexX, sliceIndexY, sliceIndexZ und drawSlices.

drawSlices : bool

Wenn dieser Eigenschaftswert auf „ true “ gesetzt ist, werden anstelle des gesamten Volumens die durch die Schnittindex-Eigenschaften angegebenen Schnitte gezeichnet. Bei „ false “ wird immer das gesamte Volumen gezeichnet. Die Standardeinstellung ist „ false “.

Hinweis: Die Schnitte werden immer entlang der Achsen des Elements gezeichnet. Wenn das Element also gedreht wird, werden auch die Schnitte gedreht.

Siehe auch „ sliceIndexX “, „ sliceIndexY “ und „ sliceIndexZ “.

preserveOpacity : bool

Wenn dieser Eigenschaftswert auf „ true “ gesetzt ist, wird „ alphaMultiplier “ nur auf Texel angewendet, die bereits eine gewisse Transparenz aufweisen. Ist er auf „ false “ gesetzt, wird der Multiplikator auf den Alpha-Wert aller Texel angewendet. Der Standardwert ist „ true “.

Siehe auch alphaMultiplier.

sliceFrameColor : color

Die Farbe des Ausschnittrahmens. Transparente Ausschnittrahmenfarben werden nicht unterstützt.

Standardmäßig ist schwarz eingestellt.

Siehe auch drawSliceFrames.

sliceFrameGaps : vector3d

Die Größe des Luftspalts, der in jeder Dimension zwischen dem Volumen selbst und dem Rahmen verbleibt. Der Spalt kann in den verschiedenen Dimensionen unterschiedlich groß sein. Die Werte sind Bruchteile der Volumendicke in derselben Dimension. Die Werte dürfen nicht negativ sein.

Standardwert ist „ vector3d(0.01, 0.01, 0.01) “.

Siehe auch „ drawSliceFrames “.

sliceFrameThicknesses : vector3d

Die Dicke der Schnittrahmen für jede Dimension. Die Werte sind Bruchteile der Volumendicke in derselben Dimension. Die Werte dürfen nicht negativ sein.

Standardwert ist „ vector3d(0.01, 0.01, 0.01) “.

Siehe auch „ drawSliceFrames “.

sliceFrameWidths : vector3d

Die Breiten der Schnittrahmen. Die Breite kann je nach Dimension unterschiedlich sein, sodass Sie beispielsweise das Zeichnen der Rahmen an bestimmten Seiten des Volumens unterlassen können, indem Sie den Wert für diese Dimension auf Null setzen. Die Werte sind Bruchteile der Volumendicke in derselben Dimension. Die Werte dürfen nicht negativ sein.

Standardwert ist „ vector3d(0.01, 0.01, 0.01) “.

Siehe auch „ drawSliceFrames “.

sliceIndexX : int

Der x-Dimensionsindex in den Texturdaten, der angibt, welcher vertikale Schnitt angezeigt werden soll. Wird eine Dimension auf einen negativen Wert gesetzt, wird für diese Dimension kein Schnitt oder Schnittrahmen gezeichnet. Sind alle Dimensionen negativ, werden keine Schnitte oder Schnittrahmen gezeichnet und das Volumen wird normal dargestellt. Der Standardwert ist „ -1 “.

Siehe auch QCustom3DVolume::textureData, drawSlices und drawSliceFrames.

sliceIndexY : int

Der y-Dimensionsindex in den Texturdaten, der angibt, welcher horizontale Schnitt angezeigt werden soll. Wird eine Dimension auf einen negativen Wert gesetzt, wird kein Schnitt bzw. kein Schnittrahmen für diese Dimension gezeichnet. Sind alle Dimensionen negativ, werden keine Schnitte oder Schnittrahmen gezeichnet und das Volumen wird normal dargestellt. Der Standardwert ist „ -1 “.

Siehe auch QCustom3DVolume::textureData, drawSlices und drawSliceFrames.

sliceIndexZ : int

Der z-Dimensionsindex in den Texturdaten, der angibt, welcher vertikale Schnitt angezeigt werden soll. Wird eine Dimension auf einen negativen Wert gesetzt, wird für diese Dimension kein Schnitt oder Schnittrahmen gezeichnet. Sind alle Dimensionen negativ, werden keine Schnitte oder Schnittrahmen gezeichnet und das Volumen wird normal dargestellt. Der Standardwert ist „ -1 “.

Siehe auch QCustom3DVolume::textureData, drawSlices und drawSliceFrames.

textureDepth : int

Die Tiefe der 3D-Textur, die den Volumengehalt in Pixeln definiert. Der Standardwert ist „ 0 “.

Hinweis: Das Ändern dieser Eigenschaft über QML wird nicht unterstützt, da die Texturdaten nicht entsprechend in der Größe angepasst werden können.

textureHeight : int

Die Höhe der 3D-Textur, die den Volumeninhalt in Pixeln definiert. Der Standardwert ist „ 0 “.

Hinweis: Eine Änderung dieser Eigenschaft über QML wird nicht unterstützt, da die Texturdaten nicht entsprechend in der Größe angepasst werden können.

textureWidth : int

Die Breite der 3D-Textur, die den Volumeninhalt in Pixeln definiert. Der Standardwert lautet „ 0 “.

Hinweis: Eine Änderung dieser Eigenschaft über QML wird nicht unterstützt, da die Texturdaten nicht entsprechend in ihrer Größe angepasst werden können.

useHighDefShader : bool

Wenn dieser Eigenschaftswert „ true “ lautet, wird zum Rendern des Volumens ein Shader mit hoher Auflösung verwendet. Lautet er „ false “, wird ein Shader mit niedriger Auflösung verwendet.

Der hochauflösende Shader gewährleistet, dass jedes sichtbare Texel der Volumen-Textur beim Rendern des Volumens abgetastet wird. Der Shader mit niedriger Auflösung rendert nur eine grobe Annäherung an den Inhalt des Volumens, dafür jedoch mit einer deutlich höheren Bildrate. Der Shader mit niedriger Auflösung garantiert nicht, dass jedes Texel der Volumentextur abgetastet wird, sodass es zu Flackern kommen kann, wenn das Volumen ausgeprägte, dünne Strukturen enthält.

Hinweis: Dieser Wert hat keinen Einfluss auf den Detaillierungsgrad beim Rendern der Schnitte des Volumens.

Standardwert ist „ true “.

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