Auf dieser Seite

RandomInstancing QML Type

Erzeugt eine zufällige Instanzierungstabelle. Mehr...

Import Statement: import QtQuick3D.Helpers
Since: Qt 6.2
Inherits:

Instancing

Eigenschaften

Ausführliche Beschreibung

Der Typ „RandomInstancing“ bietet eine einfache Möglichkeit, eine große Anzahl zufälliger Instanzen innerhalb definierter Grenzen zu generieren. Die Anzahl der Instanzen wird durch die Eigenschaft „ instanceCount “ festgelegt. Die Grenzen werden durch die Eigenschaften „ position “, „ scale “, „ rotation “, „ color “ und „ customData “ definiert.

Siehe auch „ InstanceList “.

Dokumentation zu Eigenschaften

color : InstanceRange

Die Eigenschaft „color“ definiert den Farbvariationsbereich für die generierten Instanzen. Der Typ ist „color“. Der Standardwert ist leer, wodurch die Farbe Weiß ist.

Durch Setzen der Eigenschaft „ colorModel “ lassen sich beispielsweise nur gesättigte Farben auswählen.

Siehe auch „ position“ , „ rotation “, „ scale “ und „ customData “.

colorModel : enumeration

Diese Eigenschaft legt fest, wie der Farbbereich interpretiert wird.

Die Instanzfarben werden Komponente für Komponente innerhalb des durch die Start- und Endfarben festgelegten Bereichs generiert. Das Farbmodell bestimmt, wie diese Komponenten definiert werden.

KonstanteBeschreibung
RandomInstancing.RGBDie Komponenten sind Rot, Grün, Blau und Alpha gemäß dem RGB-Farbmodell.
RandomInstancing.HSVDie Komponenten sind Farbton, Sättigung, Helligkeit und Alpha gemäß dem „ HSV Color Model “.
RandomInstancing.HSLDie Komponenten sind Farbton, Sättigung, Helligkeit und Alpha gemäß dem „ HSL Color Model “.

Beispielsweise erzeugt der folgende Farbbereich

color: InstanceRange {
    from: Qt.hsva(0, 0.1, 0.8, 1)
    to: Qt.hsva(1, 0.3, 1, 1)
}

erzeugt beim Verwendung des „ HSV “-Farbmodells eine vollständige Palette von Pastellfarben, beim Verwendung des „ RGB “-Farbmodells jedoch nur Rosatöne.

Der Standardwert ist RandomInstancing.RGB

Siehe auch „ RandomInstancing::color “.

customData : InstanceRange

Die Eigenschaft „customData“ definiert den Variationsbereich der benutzerdefinierten Daten für die generierten Instanzen. Der Typ ist „ vector4d “. Der Standardwert ist leer, wodurch die generierten Daten „ [0, 0, 0, 0] “ lauten.

Siehe auch „ position“ , „ color “, „ rotation “ und „ scale “.

gridSpacing : vector3d [since 6.9]

Die Eigenschaft „gridSpacing“ legt den Mindestabstand zwischen den Instanzen fest und stellt sicher, dass sich diese nicht überlappen. Jede Position wird um mindestens den in „ gridSpacing “ angegebenen Wert voneinander getrennt.

Wenn der angegebene Wert für „ gridSpacing “ nicht ausreicht, um die gewünschte Anzahl an Instanzen unterzubringen, wird die Eigenschaft „ instanceCount “ auf die Anzahl der Instanzen reduziert, die ohne Überlappung platziert werden können.

Hinweis: Die Eigenschaft „gridSpacing“ wirkt sich nur auf die Position von Instanzen aus. Auf Instanzen angewendete Drehungen und Skalierungen werden im Abstandsalgorithmus nicht berücksichtigt.

Der Standardwert ist „ [0, 0, 0] “, wodurch keine Einschränkung hinsichtlich überlappender Instanzen besteht.

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. Durch Ändern dieses Werts wird die gesamte Tabelle neu generiert.

Siehe auch randomSeed.

position : InstanceRange

Die Eigenschaft „position“ definiert die geometrischen Grenzen der generierten 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 Startwert für den Zufallszahlengenerator. Wird hier ein anderer Wert als -1 festgelegt, wird sichergestellt, dass die Instanztabelle bei jeder Generierung denselben Inhalt aufweist. Beachten Sie, dass das Hinzufügen oder Ändern von Attributen dazu führen kann, dass eine völlig andere Tabelle generiert wird.

Der Standardwert ist -1, wodurch die Tabelle bei jeder Generierung einen neuen Zufallswert erhält.

rotation : InstanceRange

Die Eigenschaft „rotation“ definiert den Drehbereich für die generierten Instanzen. Der Typ ist „ vector3d “, was einem Euler-Drehvektor „ [xRotation, yRotation, zRotation] “ entspricht. Der Standardwert ist leer, wodurch keine Drehung angewendet wird.

Siehe auch „ position“ , „ color “, „ scale “ und „ customData “.

scale : InstanceRange

Die Eigenschaft „scale“ definiert die Skalierungsgrenzen für die generierten Instanzen. Der Typ lautet „ vector3d “. Setzen Sie „ InstanceRange.proportional “ auf „ true “, um eine einheitliche Skalierung zu erzielen. 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.