geosolution/scene~ParticleSystem(position, type)

Summary

Methods:
addBursts

添加爆破,粒子系统会在一个确定的时刻,突然发射大量的粒子,用来模拟爆炸等场景。

removeBursts

移除爆破

restart

重启发射

setEmissionType

设置发射器的类型

start

启动粒子发射器开始发射

stop

停止粒子发射器,不再发射粒子,对已经发射的粒子不影响。

Constructor

new ParticleSystem(position, type)

粒子系统表示三维计算机图形学中模拟一些特定的模糊现象的技术,
而这些现象用其它传统的渲染技术难以实现真实感的物理运动规律。
经常使用粒子系统模拟的现象有火、爆炸、烟、水流、火花、落叶、
云、雾、雪、尘、流星尾迹或者象发光轨迹这样的抽象视觉效果等等。
一个粒子系统包含两部分:
1.一个粒子发射器,它会按照确定的规则不断的向外面发射粒子,粒子一旦发射出来就和发射器没有关系,粒子的生命周期、运动轨迹等在从发射出来的那一刻就确定。
2.发射出的粒子按照确定的规则运动消亡。

Parameters:
Name Type Default Description
position Array.<Number>

粒子系统中粒子发射器的初始位置【地理坐标】

type String circle

粒子系统的类型,默认支持"circle"|"sphere"|"box"|"cone",缺省值:circle(圆形发射器)。
不同类型的粒子发射器,发射粒子的方式不同,详细的在不同类型的粒子发射器中详细说明。

Members

a

设置粒子从粒子发射器发射出来时的初始运动加速度,方向有粒子发射器决定,这里只是发射方向上的标量加速度。

alpha0

粒子透明度的一组值[alpha0,alpha1],alpha0用来设置粒子从发射器中发射出来的初始透明度。

alpha1

粒子透明度的一组值[alpha0,alpha1],alpha1用来设置粒子从发射器中发射出来后消亡前的瞬间透明度。

angleRandom

获取粒子在生命周期内是否随机变换本身的角度,用在不规则的粒子上,可以产生不可预期的效果。

bursts

获取粒子系统爆破参数,所谓爆破就是在例子发射过程中我们引入的一种规则,它会定时或不定时的一次性发射海量粒子,以此来模拟爆破。

color0

粒子颜色的一组值[color0,color1],color0用来设置粒子从发射器中发射出来的初始颜色。

color1

粒子颜色的一组值[color0,color1],color1用来设置粒子从发射器中发射出来后消亡前的瞬间颜色。

emissionPosition

设置粒子发射器的位置。

icon

设置粒子的图标,粒子支持指定半径大小的圆点|图标点。

lifetime

设置粒子的生命周期。超过生命周期,粒子自动销毁,单位ms

limit

设置最大活跃粒子数,当粒子超过该阈值,超过该值会自动销毁最先产生的粒子,保证活跃粒子数平衡。

loopAngle

获取粒子发射器的张度,单位:度。

looping

设置粒子发射器是否环状发射,如果环状发射,那么粒子只会在发射器边缘发射粒子。

mode

粒子产生模式

num

获取单次粒子发射个数

particles

获取未被销毁的所有粒子。

randomMode

粒子发射后,在其生命周期内size值变化的设定模式。随机|不随机。
如果随机这随着粒子的运动,会在size0和size1中间随机一个大小,否则会以线性插值的方式确定例子大小。
size0,size1 是粒子大小相关的参数,size0代表例子发射时的大小;size1是粒子消亡时的大小。

rate

设置粒子发射频率 次数/秒,频率越高单位时间发射粒子的次数越多,他和参数{num}(单次发射粒子数)一起决定发射粒子的重量

size0

粒子大小的一组值[size0,size1],size0用来设置粒子从发射器中发射出来的初始大小。

size1

粒子大小的一组值[size0,size1],size1用来设置粒子从发射器中发射出来后消亡前的瞬间大小。

speed

设置粒子初始运动速度。

unit

粒子大小的度量单位

Methods

addBursts(time, min, max, probability)

添加爆破,粒子系统会在一个确定的时刻,突然发射大量的粒子,用来模拟爆炸等场景。

Parameters:
Name Type Default Description
time Number

爆破时刻,粒子生命周期内的一个时间点,单位ms

min Number

一次爆破发射粒子的最小数量

max Number

一次爆破发射粒子的最大数量

probability Number 1

爆破的可能性,1的话在time指定的时刻一定爆破,<1则变成一种可能性,如此产生随机的效果

removeBursts(index)

移除爆破

Parameters:
Name Type Description
index

具体爆破的索引,当index超出时移除最后一个爆破。当index不传时,移除所有。

restart()

重启发射

setEmissionType(type, params)

设置发射器的类型

Parameters:
Name Type Description
type

circle box cone shpere

params

type"circle"
options:radius代表半径 normal:[0,0,1] 代表面朝向
type:"box"
options:a,b,c代表长宽高,normal 代表朝向
type:"cone"
options:radius代表锥角度一半,normal 代表面朝向
type:"shpere"
options:radius 代表半径

start()

启动粒子发射器开始发射

stop()

停止粒子发射器,不再发射粒子,对已经发射的粒子不影响。