Image 如何在粒子中显示不同的图像?
我想发射粒子,但要使用阵列中的图像。Image 如何在粒子中显示不同的图像?,image,qml,particle-system,Image,Qml,Particle System,我想发射粒子,但要使用阵列中的图像。 我修改了我的代码。现在的错误是,显然在函数getImage()中,可以遍历所有数组来获取每个图像的每个路径,但在ImageParticle中,它只能识别单个路径。 结果是:粒子被发射,但矩阵中20个图像中只有一个图像被发射已识别。 有人知道我做错了吗 import QtQuick 2.0 import QtQuick.Particles 2.0 Rectangle { id: bg width: 1920
我修改了我的代码。现在的错误是,显然在函数getImage()中,可以遍历所有数组来获取每个图像的每个路径,但在ImageParticle中,它只能识别单个路径。
结果是:粒子被发射,但矩阵中20个图像中只有一个图像被发射已识别。
有人知道我做错了吗
import QtQuick 2.0
import QtQuick.Particles 2.0
Rectangle {
id: bg
width: 1920
height: 1080
color: "black"
ParticleSystem {
id: particleSys
}
Emitter{
id: particles
anchors.centerIn: parent
height: 1; width: 1
system: particleSys
emitRate: 30
lifeSpan: 4000
lifeSpanVariation: 500
maximumEmitted: 1000
size: 5
endSize: 200
velocity: TargetDirection{
targetX: 100; targetY: 100
targetVariation: 360
magnitude: 250
}
}
property var picturesList: [
"images/Image1.png", "images/Image2.png", "images/Image3.png", "images/Image4.png", "images/Image5.png", "images/Image6.png", "images/Image7.png", "images/Image8.png", "images/Image9.png", "images/Image10.png",
"images/Image11.png", "images/Image12.png", "images/Image13.png", "images/Image14.png", "images/Image15.png", "images/Image16.png", "images/Image17.png", "images/Image18.png", "images/Image19.png", "images/Image20.png"
]
function getImage(arr){
var flag = "";
for(var i = 0; i < arr.length ; i++){
flag = arr[i];
//console.log("Position: " + arr[i] + " flag: " + flag )
}
return flag;
}
ImageParticle{
property var link: getImage(picturesList)
source: link
system: particleSys
}
}
导入QtQuick 2.0
导入QtQuick.Particles 2.0
长方形{
id:bg
宽度:1920
身高:1080
颜色:“黑色”
粒子系统{
id:particleSys
}
发射器{
id:粒子
anchors.centerIn:父对象
高度:1;宽度:1
系统:particleSys
发射率:30
寿命:4000
寿命变化:500
最高限额:1000
尺码:5
完尺寸:200
速度:目标方向{
targetX:100;targetY:100
目标变化:360
震级:250
}
}
属性var图片列表:[
“images/Image1.png”、“images/Image2.png”、“images/Image3.png”、“images/Image4.png”、“images/Image5.png”、“images/Image6.png”、“images/Image7.png”、“images/Image8.png”、“images/Image9.png”、“images/Image10.png”,
“images/Image11.png”、“images/Image12.png”、“images/Image13.png”、“images/Image14.png”、“images/Image15.png”、“images/Image16.png”、“images/Image17.png”、“images/Image18.png”、“images/Image19.png”、“images/Image20.png”
]
函数getImage(arr){
var flag=“”;
对于(var i=0;i
您的问题是什么?生成随机数?使用Math.random()*(max-min)+min
。获取文件列表?使用真正的问题是,我希望“n”张照片(不同的照片)显示出来,而不是粒子。这些照片的路径在一个阵列中,但我做了一些修改,我的问题仍然是:它们留下了粒子,但只识别阵列中所有粒子的图像。过了一会儿,我上传了对代码的修改。我还研究了FolderListModel来实现它,只得到了“x”文件夹中图像的路径。可能是