【发布时间】:2016-07-23 02:52:00
【问题描述】:
我想使用粒子创建某种实时图表,我在其中发射粒子并更改发射器位置。
问题是我找不到以直线水平发射粒子的方法。它们似乎有一些雪的影响(重力和旋转)。
有没有办法从左到右绘制像一条线一样的粒子??
func createParticles()
{
let particleEmitter = CAEmitterLayer()
particleEmitter.emitterPosition = CGPoint(x: self.center.x, y: 100)
particleEmitter.emitterShape = kCAEmitterLayerPoint
particleEmitter.emitterSize = CGSize(width: self.frame.size.width, height: 1)
let red = makeEmitterCellWithColor(Globals.sharedInstance.palleteRed)
let green = makeEmitterCellWithColor(Globals.sharedInstance.palleteRed)
let blue = makeEmitterCellWithColor(Globals.sharedInstance.palleteRed)
particleEmitter.emitterCells = [red, green, blue]
self.layer.addSublayer(particleEmitter)
}
func makeEmitterCellWithColor(color: UIColor) -> CAEmitterCell {
let cell = CAEmitterCell()
cell.birthRate = 1
cell.lifetime = 6.0
cell.lifetimeRange = 0
cell.color = color.CGColor
cell.velocity = 100
cell.velocityRange = 220
cell.emissionLongitude = CGFloat(M_PI)
cell.emissionRange = CGFloat(M_PI_4)
cell.spin = 0
cell.spinRange = 0
cell.scaleRange = 0.15
cell.scaleSpeed = -0.05
cell.contents = UIImage(named: "particle")?.CGImage
return cell
}
【问题讨论】: