Sur cette page

RandomInstancing QML Type

Génère une table d'instanciation aléatoire. Plus d'informations...

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

Instancing

Propriétés

Description détaillée

Le type RandomInstancing permet de générer facilement un grand nombre d'instances aléatoires dans des limites définies. Le nombre d'instances est défini par la propriété instanceCount. Les limites sont définies par les propriétés position, scale, rotation, color, et customData.

Voir également InstanceList.

Documentation sur les propriétés

color : InstanceRange

La propriété color définit la plage de variation de la couleur pour les instances générées. Le type est la couleur. La valeur par défaut est empty, ce qui signifie que la couleur est blanche.

La définition de la propriété colorModel permet de ne sélectionner que des couleurs saturées, par exemple.

Voir aussi position, rotation, scale, et customData.

colorModel : enumeration

Cette propriété contrôle la manière dont la gamme de couleurs est interprétée.

Les couleurs de l'instance sont générées composant par composant dans la plage déterminée par les couleurs from et to. Le modèle de couleur détermine la manière dont ces composants sont définis.

ConstanteDescription
RandomInstancing.RGBLes composantes sont le rouge, le vert, le bleu et l'alpha, conformément au modèle de couleur RVB.
RandomInstancing.HSVLes composantes sont la teinte, la saturation, la valeur et l'alpha, selon le modèle de couleur HSV Color Model.
RandomInstancing.HSLLes composantes sont la teinte, la saturation, la luminosité et l'alpha, conformément au modèle de couleur HSL Color Model.

À titre d'exemple, la gamme de couleurs suivante

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

générera une gamme complète de couleurs pastel en utilisant le modèle de couleurs HSV, mais seulement des nuances de rose en utilisant le modèle de couleurs RGB.

La valeur par défaut est RandomInstancing.RGB

Voir également RandomInstancing::color.

customData : InstanceRange

La propriété customData définit la plage de variation des données personnalisées pour les instances générées. Le type est vector4d. La valeur par défaut est vide, ce qui fait que les données générées sont [0, 0, 0, 0].

Voir également position, color, rotation, et scale.

gridSpacing : vector3d [since 6.9]

La propriété gridSpacing définit l'espacement minimal entre les instances, afin de garantir qu'elles ne se chevauchent pas. Chaque position sera séparée par au moins la valeur spécifiée dans gridSpacing.

Si la valeur spécifiée dans gridSpacing ne permet pas d'accueillir le nombre d'instances demandé, la propriété instanceCount sera réduite au nombre d'instances qui peuvent être placées sans se chevaucher.

Remarque : La propriété gridSpacing n'affecte que la position des instances. La rotation et la mise à l'échelle appliquées aux instances ne sont pas prises en compte dans l'algorithme d'espacement.

La valeur par défaut est [0, 0, 0], ce qui n'impose aucune restriction sur le chevauchement des instances.

Cette propriété a été introduite dans Qt 6.9.

Voir également position.

instanceCount : int

La propriété instanceCount spécifie le nombre d'instances à générer. La modification de cette valeur entraîne la régénération de l'ensemble du tableau.

Voir aussi randomSeed.

position : InstanceRange

La propriété position définit les limites géométriques des instances générées. La valeur par défaut est vide, ce qui donne une position générée de [0, 0, 0].

Voir également color, rotation, scale, et customData.

randomSeed : int

Cette propriété définit la graine du générateur de nombres aléatoires. La définition d'une valeur différente de -1 garantit que la table d'instance aura le même contenu à chaque fois qu'elle sera générée. Notez que l'ajout ou la modification d'attributs peut entraîner la génération d'une table complètement différente.

La valeur par défaut est -1, ce qui fait que la table reçoit une nouvelle valeur aléatoire à chaque fois qu'elle est générée.

rotation : InstanceRange

La propriété de rotation définit la plage de rotation pour les instances générées. Le type est vector3d, ce qui correspond à un vecteur de rotation d'Euler [xRotation, yRotation, zRotation]. La valeur par défaut est empty, ce qui signifie qu'aucune rotation n'est appliquée.

Voir également position, color, scale, et customData.

scale : InstanceRange

La propriété scale définit les limites d'échelle pour les instances générées. Le type est vector3d. Pour une mise à l'échelle uniforme, réglez InstanceRange.proportional sur true. La valeur par défaut est empty, ce qui signifie qu'aucune mise à l'échelle n'est appliquée.

Voir également position, color, rotation, et 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.