используйте CAEmitterLayer для рисования частиц по кругу или CGPath

Я пытаюсь использовать систему частиц iOS 5 (CAEmitterLayer и CAEmitterCell) для рисования частиц по кругу (или, что еще лучше, CGPath), но я не знаю, как это сделать. Лучшее, что я мог сделать, это сделать дугу (путем изменения свойства yAcceleration CAEmitterCell), но я не могу сделать полный круг. Конечно, я мог бы сделать несколько дуг, чтобы имитировать круг, но «узлы» очень хорошо видны. Также я не хочу использовать маски, потому что будет казаться, что частицы по краям обрезаны. Любые идеи, как это сделать?


person cpprulez    schedule 28.11.2011    source источник


Ответы (2)


Вы можете использовать CAKeyframeAnimation для анимации EmitterPosition:

CAKeyframeAnimation *particleAnimation = [CAKeyframeAnimation animationWithKeyPath:@"emitterPosition"];
[particleAnimation setPath:yourPath];
[particleAnimation setDuration:1.0];
[particleAnimation setCalculationMode:kCAAnimationPaced];
[yourEmitterLayer addAnimation:particleAnimation forKey:@"yourAnimation"]; 
person Marco    schedule 04.03.2012
comment
Привет, как вы используете CAEmitterCell? - person Jules; 12.06.2014

Вы хотите использовать particleEmitter.emitterShape = kCAEmitterLayerCircle

http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Reference/CAEmitterLayer_class/Reference/Reference.html

person Weston    schedule 22.03.2012