Node QML Type
Die Basiskomponente für ein Objekt, das in einer 3D-Szene vorhanden ist. Mehr...
| Import Statement: | import QtQuick3D |
| Inherits: | |
| Inherited By: | 36 typesAffector3D, Attractor3D, AxisHelper, Camera, CustomCamera, DirectionalLight, FrustumCamera, Gravity3D, InstanceRepeater, Joint, Light, Loader3D, LodManager, LookAtNode, Model, OrthographicCamera, ParticleEmitter3D, ParticleSystem3D, PerspectiveCamera, PointLight, PointRotator3D, ReflectionProbe, Repeater3D, Repeller3D, RuntimeLoader, ScaleAffector3D, Skeleton, SpotLight, TrailEmitter3D, Wander3D, XrCamera, XrController, XrHandModel, XrItem, XrOrigin, and XrView |
Eigenschaften
- eulerRotation : vector3d
- forward : vector3d
- layers : int
- opacity : real
- pivot : vector3d
- position : vector3d
- right : vector3d
- rotation : quaternion
- scale : vector3d
- scenePosition : vector3d
- sceneRotation : quaternion
- sceneScale : vector3d
- sceneTransform : matrix4x4
- staticFlags : int
- up : vector3d
- visible : bool
- x : real
- y : real
- z : real
Methoden
- vector3d mapDirectionFromNode(QtQuick3D::Node node, vector3d localDirection)
- vector3d mapDirectionFromScene(vector3d sceneDirection)
- vector3d mapDirectionToNode(QtQuick3D::Node node, vector3d localDirection)
- vector3d mapDirectionToScene(vector3d localDirection)
- vector3d mapPositionFromNode(QtQuick3D::Node node, vector3d localPosition)
- vector3d mapPositionFromScene(vector3d scenePosition)
- vector3d mapPositionToNode(QtQuick3D::Node node, vector3d localPosition)
- vector3d mapPositionToScene(vector3d localPosition)
- void rotate(real degrees, vector3d axis, enumeration space)
Ausführliche Beschreibung
Der Typ „Node“ dient als Basisklasse für andere räumliche Typen, wie beispielsweise „ Model “, „ Camera “ und „ Light “. Diese Objekte repräsentieren eine Entität, die in der 3D-Szene existiert, da sie über eine Position und weitere Eigenschaften in der 3D-Welt verfügen. Mit Ausnahme des/der Stammknoten(s) werden alle „Node“-Typen relativ zu ihrem übergeordneten „Node“ transformiert, d. h. in lokalen Koordinaten. In vielerlei Hinsicht erfüllt der „Node“-Typ in „ Qt Quick 3D “-Szenen denselben Zweck wie „ Item “ in „ Qt Quick “-Szenen.
Neben den von „Node“ abgeleiteten Typen ist es auch möglich, andere Typen einem Knoten unterzuordnen. Dazu gehören „ QObject “-Instanzen, bei denen der Knoten lediglich als „ QObject parent “ dient, sowie „Qt Quick “-Elemente.
Das Einbinden anderer Objekte zum Zweck der Gruppierung in Komponenten oder Unterbäume kann eine praktische Methode sein, um beispielsweise eine Gruppe von Knoten als Ganzes zu animieren. Dieser Codeausschnitt zeigt, wie man mit „Node“ eine Kamera animiert:
Node {
PerspectiveCamera {
position: Qt.vector3d(0, 0, -600)
}
SequentialAnimation on eulerRotation.y {
loops: Animation.Infinite
PropertyAnimation {
duration: 5000
from: 0
to: 360
}
}
}„Node“ muss auch verwendet werden, wenn eine Szene außerhalb von „ View3D “ erstellt wird, beispielsweise um Szenen im laufenden Betrieb zu wechseln oder dieselbe Szene in mehreren Ansichten anzuzeigen.
Node {
id: standAloneScene
DirectionalLight {}
Model {
source: "#Sphere"
materials: [ DefaultMaterial {} ]
}
PerspectiveCamera {
z: 600
}
}
View3D {
importScene: standAloneScene
}Dokumentation zu den Eigenschaften
eulerRotation : vector3d
Diese Eigenschaft enthält die Rotationswerte für die x-, y- und z-Achse. Diese Werte werden als Vector3d gespeichert. Als Rotationsreihenfolge wird ZXY angenommen.
Siehe auch „ QQuaternion::fromEulerAngles()“.
forward : vector3d [read-only]
Diese Eigenschaft gibt einen normierten Vektor der Vorwärtsrichtung des Knotens im Szenenraum zurück.
Siehe auch up, right und mapDirectionToScene.
layers : int
Diese Eigenschaft definiert die Inhalts-Ebenen, zu denen dieser Knoten gehört. Die Ebenen können verwendet werden, um zusammengehörige Knoten zu gruppieren, beispielsweise um sie gemeinsam darzustellen oder aus der Darstellung herauszufiltern. Wird diese Eigenschaft auf die aktive Ebene „ Camera “ gesetzt, stellt die Kamera nur noch Knoten dar, die zu den angegebenen Ebenen gehören. Der Wert ist eine Bitmaske, wobei jedes Bit eine Ebene repräsentiert.
Standardmäßig werden Knoten der Ebene „ main “ zugeordnet, die unter ContentLayer.Layer0 zu finden ist.
Hinweis: Die Eigenschaft „layers“ wird nicht vererbt; das Festlegen dieser Eigenschaft auf einem Knoten führt nicht dazu, dass der Wert vom übergeordneten Knoten auf den untergeordneten Knoten übertragen wird. Jeder Knoten behält seine eigene Ebenenzuordnung bei und muss einzeln festgelegt werden.
Siehe auch „ ContentLayer “.
opacity : real
Diese Eigenschaft enthält den lokalen Deckkraftwert des Knotens. Da Knotenobjekte nicht unbedingt sichtbar sind, hat dieser Wert möglicherweise keine Auswirkung; er wird jedoch von allen untergeordneten Elementen des Knotens geerbt, die möglicherweise sichtbar sind.
pivot : vector3d
Diese Eigenschaft enthält die Drehpunkte für die x-, y- und z-Achse. Diese Werte dienen als Drehpunkte, wenn der Knoten gedreht wird.
position : vector3d
Diese Eigenschaft enthält die Positionsverschiebung im lokalen Koordinatensystem.
right : vector3d [read-only]
Diese Eigenschaft gibt einen normierten Vektor zurück, der die Richtung der Knoten im Szenenraum angibt.
Siehe auch forward, up und mapDirectionToScene.
rotation : quaternion
Diese Eigenschaft enthält die Rotationswerte für den Knoten. Diese Werte werden als Quaternion gespeichert.
scale : vector3d
Diese Eigenschaft enthält die Skalierungswerte für die x-, y- und z-Achse.
scenePosition : vector3d [read-only]
Diese Eigenschaft gibt die Position des Knotens im Szenenraum zurück.
Hinweis: Diese wird manchmal auch als globale Position bezeichnet. Dabei ist jedoch die Bedeutung „global in der 3D-Welt“ gemeint und nicht „global in Bezug auf den Bildschirm oder den Desktop“ (was üblicherweise die Interpretation in anderen Qt-APIs ist).
Hinweis: Die Position wird in derselben Ausrichtung wie der Knoten angegeben.
Siehe auch mapPositionToScene.
sceneRotation : quaternion [read-only]
Diese Eigenschaft gibt die Drehung des Knotens im Szenenraum zurück.
sceneScale : vector3d [read-only]
Diese Eigenschaft gibt den Maßstab des Knotens im Szenenraum zurück.
sceneTransform : matrix4x4 [read-only]
Diese Eigenschaft gibt die globale Transformationsmatrix für diesen Knoten zurück.
Hinweis: Der Rückgabewert liegt in rechtshändigen Koordinaten vor.
staticFlags : int
Diese Eigenschaft definiert die statischen Flags, anhand derer bestimmt wird, wie der Knoten dargestellt wird. Derzeit hat sie keine Funktion, sondern dient lediglich als Platzhalter für eine zukünftige Implementierung.
up : vector3d [read-only]
Diese Eigenschaft gibt einen normierten Vektor der Aufwärtsrichtung der Knoten im Szenenraum zurück.
Siehe auch „ forward “, „ right “ und „ mapDirectionToScene “.
visible : bool
Wenn diese Eigenschaft auf „true“ gesetzt ist, kann der Knoten (und seine untergeordneten Knoten) sichtbar sein.
x : real
Diese Eigenschaft enthält den x-Wert der Positionsverschiebung im lokalen Koordinatensystem.
Siehe auch „ position “.
y : real
Diese Eigenschaft enthält den y-Wert der Positionsverschiebung im lokalen Koordinatensystem.
Siehe auch „ position “.
z : real
Diese Eigenschaft enthält den z-Wert der Positionsverschiebung im lokalen Koordinatensystem.
Siehe auch „ position “.
Methodendokumentation
vector3d mapDirectionFromNode(QtQuick3D::Node node, vector3d localDirection)
Wandelt „ localDirection “ vom lokalen Raum von „ node “ in den lokalen Raum dieses Knotens um. Der Rückgabewert wird nicht von der (vererbten) Skalierung oder Position des Knotens beeinflusst.
Hinweis: Der Rückgabewert hat dieselbe Länge wie „ localDirection “ (d. h. er ist nicht normiert).
Hinweis: Ist node null, wird localDirection so interpretiert, wie es in den Koordinaten des Szenenraums vorliegt.
Siehe auch „ mapDirectionToNode “, „ mapDirectionFromScene “ und „ mapDirectionToScene “.
vector3d mapDirectionFromScene(vector3d sceneDirection)
Wandelt „ sceneDirection “ vom Szenenraum in den lokalen Raum um. Der Rückgabewert wird nicht durch die (geerbte) Skalierung oder Position des Knotens beeinflusst.
Hinweis: Der Rückgabewert hat dieselbe Länge wie „ sceneDirection “ (d. h. er ist nicht normiert).
Siehe auch „ mapDirectionToScene “, „ mapDirectionToNode “ und „ mapDirectionFromNode “.
vector3d mapDirectionToNode(QtQuick3D::Node node, vector3d localDirection)
Wandelt „ localDirection “ vom lokalen Raum dieses Knotens in den lokalen Raum von „ node “ um. Der Rückgabewert wird nicht von der (vererbten) Skalierung oder Position des Knotens beeinflusst.
Hinweis: Der Rückgabewert hat dieselbe Länge wie ` localDirection ` (d. h. er ist nicht normalisiert).
Hinweis: Ist ` node ` null, wird die zurückgegebene Richtung in Koordinaten des Szenenraums transformiert.
Siehe auch „ mapDirectionFromNode “, „ mapDirectionFromScene “ und „ mapDirectionToScene “.
vector3d mapDirectionToScene(vector3d localDirection)
Wandelt „ localDirection “ vom lokalen Raum in den Szenenraum um. Der Rückgabewert wird nicht von der (geerbten) Skalierung oder Position des Knotens beeinflusst.
Hinweis: Der Rückgabewert hat dieselbe Länge wie „ localDirection “ (d. h., er ist nicht normalisiert).
Siehe auch „ mapDirectionFromScene “, „ mapDirectionToNode “ und „ mapDirectionFromNode “.
vector3d mapPositionFromNode(QtQuick3D::Node node, vector3d localPosition)
Transformiert „ localPosition “ vom lokalen Raum von „ node “ in den lokalen Raum dieses Knotens.
Hinweis: Ist node null, wird localPosition so interpretiert, wie es in den Koordinaten des Szenenraums vorliegt.
Siehe auch „ mapPositionToScene “, „ mapPositionFromScene “ und „ mapPositionToNode “.
vector3d mapPositionFromScene(vector3d scenePosition)
Wandelt „ scenePosition “ vom Szenenraum in den lokalen Raum um.
Siehe auch „ mapPositionToScene “, „ mapPositionToNode “ und „ mapPositionFromNode “.
vector3d mapPositionToNode(QtQuick3D::Node node, vector3d localPosition)
Wandelt „ localPosition “ vom lokalen Raum dieses Knotens in den lokalen Raum von „ node “ um.
Hinweis: Ist node null, wird localPosition in Koordinaten des Szenenraums transformiert.
Siehe auch „ mapPositionToScene “, „ mapPositionFromScene “ und „ mapPositionFromNode “.
vector3d mapPositionToScene(vector3d localPosition)
Wandelt „ localPosition “ vom lokalen Raum in den Szenenraum um.
Hinweis: „ Szenenraum“ wird manchmal auch als „globaler Raum“ bezeichnet. Dabei ist jedoch die Bedeutung „global in der 3D-Welt“ gemeint und nicht „global für den Bildschirm oder den Desktop“ (was üblicherweise die Interpretation in anderen Qt-APIs ist).
Siehe auch mapPositionFromScene, mapPositionToNode und mapPositionFromNode.
void rotate(real degrees, vector3d axis, enumeration space)
Dreht diesen Knoten um eine Achse „ axis “ um den angegebenen Winkel „ degrees “. Die angegebene Drehung wird zur aktuellen Drehung des Knotens addiert. Die Achse kann relativ zu verschiedenen „ space“ angegeben werden.
| Konstante | Beschreibung |
|---|---|
Node.LocalSpace | Die Achse ist relativ zur lokalen Ausrichtung dieses Knotens. |
Node.ParentSpace | Die Achse ist relativ zur lokalen Orientierung des übergeordneten Knotens. |
Node.SceneSpace | Die Achse ist relativ zur Szene. |
© 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.