QML-发射器Emitter

import QtQuick 2.0
import QtQuick.Window 2.12
import QtQuick.Controls 2.5
import QtQuick.Particles 2.13

Window {
    id:window
    width: 640
    height: 480
    color: "gray"
    visible: true

    MouseArea{
        id:mouse
        anchors.fill: parent
        hoverEnabled: true
    }

    ParticleSystem{
        id: particleSystem
    }

    Emitter{
        id:emitter
        anchors.centerIn: parent
        width: 300
        height: 300
        system: particleSystem
        /*
            emitRate:每秒发射出的粒子数(默认为10);
            lifeSpan:粒子生命周期毫秒数(默认为1000);
            lifeSpanVariation:粒子生命周期变动区毫秒数(在lifeSpan设置的值上下浮动多少);
            size:粒子初始化大小(默认为16);
            endSize:粒子消失时大小(默认为16)。
        */

        emitRate: 10
        lifeSpan: 800
        lifeSpanVariation:10000
        size: 15
        velocity: PointDirection{
            x: 100
            y: 0

            xVariation: 0
            yVariation: 45
        }
    }

    ImageParticle {
        id: img
        source: "/v1.jpg"
        system:particleSystem
        color: Qt.rgba(153/255,217/255,234/255,1.0)

        //随机修改比例
        colorVariation: 0.3
    }

    Attractor{
        anchors.fill: parent
        enabled: true
        system: particleSystem

        pointX: mouse.mouseX
        pointY: mouse.mouseY

        //控制粒子被鼠标吸引的程度
        strength: -1000000
        //加速度
        affectedParameter: Attractor.Acceleration
        //从粒子到点的距离如何影响吸引力的强度
        proportionalToDistance: Attractor.InverseQuadratic

    }

}

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值