RandomInstancing QML Type
Erzeugt eine zufällige Instanzierungstabelle. Mehr...
Import Statement: | import QtQuick3D.Helpers |
Since: | Qt 6.2 |
Inherits: |
Eigenschaften
- color : InstanceRange
- colorModel : enumeration
- customData : InstanceRange
- gridSpacing : vector3d
(since 6.9)
- instanceCount : int
- position : InstanceRange
- randomSeed : int
- rotation : InstanceRange
- scale : InstanceRange
Detaillierte Beschreibung
Der Typ RandomInstancing bietet eine einfache Möglichkeit, eine große Anzahl von Zufallsinstanzen innerhalb bestimmter Grenzen zu erzeugen. Die Anzahl der Instanzen wird durch die Eigenschaft instanceCount definiert. Die Grenzen werden durch die Eigenschaften position, scale, rotation, color, und customData definiert.
Siehe auch InstanceList.
Dokumentation der Eigenschaften
color : InstanceRange |
Die Eigenschaft color definiert den Bereich der Farbvariation für die erzeugten Instanzen. Der Typ ist color. Der Standardwert ist leer, so dass die Farbe weiß ist.
Das Setzen der Eigenschaft colorModel ermöglicht es, z.B. nur gesättigte Farben auszuwählen.
Siehe auch position, rotation, scale, und customData.
colorModel : enumeration |
Diese Eigenschaft steuert, wie der Farbbereich interpretiert wird.
Die Instanzfarben werden komponentenweise innerhalb des durch die Farben from und to festgelegten Bereichs erzeugt. Das Farbmodell bestimmt, wie diese Komponenten definiert werden.
Konstante | Beschreibung |
---|---|
RandomInstancing.RGB | Die Komponenten sind Rot, Grün, Blau und Alpha, entsprechend dem RGB-Farbmodell. |
RandomInstancing.HSV | Die Komponenten sind Farbton, Sättigung, Wert und Alpha, entsprechend dem HSV Color Model. |
RandomInstancing.HSL | Die Komponenten sind Farbton, Sättigung, Helligkeit und Alpha, gemäß HSL Color Model. |
Ein Beispiel: Der folgende Farbbereich
color: InstanceRange { from: Qt.hsva(0, 0.1, 0.8, 1) to: Qt.hsva(1, 0.3, 1, 1) }
bei Verwendung des Farbmodells HSV
eine vollständige Palette von Pastellfarben, bei Verwendung des Farbmodells RGB
jedoch nur rosa Schattierungen.
Der Standardwert ist RandomInstancing.RGB
Siehe auch RandomInstancing::color.
customData : InstanceRange |
gridSpacing : vector3d |
Die Eigenschaft gridSpacing definiert den Mindestabstand zwischen den Instanzen, um sicherzustellen, dass sie sich nicht überlappen. Jede Position wird mindestens durch den in gridSpacing
angegebenen Wert getrennt.
Wenn die angegebene gridSpacing
nicht die gewünschte Anzahl von Instanzen aufnehmen kann, wird die Eigenschaft instanceCount
auf die Anzahl von Instanzen reduziert, die ohne Überlappung platziert werden können.
Hinweis: Die Eigenschaft gridSpacing wirkt sich nur auf die Position der Instanzen aus. Die auf die Instanzen angewendete Drehung und Skalierung wird beim Abstandsalgorithmus nicht berücksichtigt.
Der Standardwert ist [0, 0, 0]
, der keine Einschränkung für überlappende Instanzen vorsieht.
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
Siehe auch position.
instanceCount : int |
Die Eigenschaft instanceCount gibt die Anzahl der zu erzeugenden Instanzen an. Das Ändern dieses Wertes wird die gesamte Tabelle neu generieren.
Siehe auch randomSeed.
position : InstanceRange |
Die Eigenschaft position definiert die geometrischen Grenzen der erzeugten Instanzen. Der Standardwert ist leer, was zu einer generierten Position von [0, 0, 0]
führt.
Siehe auch color, rotation, scale, und customData.
randomSeed : int |
Diese Eigenschaft legt den Seed für den Zufallszahlengenerator fest. Die Einstellung auf einen Wert ungleich -1 garantiert, dass die Instanztabelle jedes Mal den gleichen Inhalt hat, wenn sie generiert wird. Beachten Sie, dass das Hinzufügen oder Ändern von Attributen dazu führen kann, dass eine völlig andere Tabelle erzeugt wird.
Der Standardwert ist -1, was dazu führt, dass die Tabelle jedes Mal einen neuen Zufallswert erhält, wenn sie erzeugt wird.
rotation : InstanceRange |
Die Eigenschaft Rotation definiert den Rotationsbereich für die erzeugten Instanzen. Der Typ ist vector3d, was einem Euler-Rotationsvektor [xRotation, yRotation, zRotation]
entspricht. Der Standardwert ist leer, so dass keine Rotation angewendet wird.
Siehe auch position, color, scale, und customData.
scale : InstanceRange |
Die Eigenschaft scale definiert die Skalierungsgrenzen für die erzeugten Instanzen. Der Typ ist vector3d. Setzen Sie InstanceRange.proportional auf true
für eine einheitliche Skalierung. Der Standardwert ist leer, wodurch keine Skalierung angewendet wird.
Siehe auch position, color, rotation, scale, und customData.
© 2025 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.