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 von und bis 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
Die Eigenschaft customData definiert den Bereich der benutzerdefinierten Datenvariation für die erzeugten Instanzen. Der Typ ist vector4d. Der Standardwert ist leer, was dazu führt, dass die generierten Daten [0, 0, 0, 0] sind.
Siehe auch position, color, rotation, und scale.
gridSpacing : vector3d [since 6.9]
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. Wenn Sie diesen Wert ändern, wird die gesamte Tabelle neu generiert.
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 definiert den Seed für den Zufallszahlengenerator. Die Einstellung auf einen Wert ungleich -1 garantiert, dass die Instanztabelle bei jeder Generierung den gleichen Inhalt hat. 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, und customData.
© 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.