2011-11-28 41 views
5

Tôi đang cố gắng sử dụng hệ thống hạt iOS 5 (CAEmitterLayer và CAEmitterCell) để vẽ các hạt xung quanh một vòng tròn (hoặc thậm chí tốt hơn, một CGPath), nhưng tôi không biết làm thế nào để làm nó. Điều tốt nhất tôi có thể làm là tạo một vòng cung (bằng cách sửa đổi thuộc tính yAcceleration của CAEmitterCell), nhưng tôi không thể làm một vòng tròn hoàn chỉnh. Tất nhiên, tôi có thể làm nhiều vòng cung để mô phỏng một vòng tròn, nhưng "nút thắt" rất dễ thấy. Ngoài ra, tôi không muốn sử dụng mặt nạ, bởi vì nó sẽ có vẻ như các hạt ở các cạnh được cắt. Bất kỳ ý tưởng làm thế nào để làm điều đó?sử dụng CAEmitterLayer để vẽ các hạt xung quanh một vòng tròn hoặc một CGPath

+0

bất kỳ mẫu mã? – nycynik

Trả lời

3

Bạn có thể sử dụng một CAKeyframeAnimation để animate emitterPosition:

CAKeyframeAnimation *particleAnimation = [CAKeyframeAnimation animationWithKeyPath:@"emitterPosition"]; 
[particleAnimation setPath:yourPath]; 
[particleAnimation setDuration:1.0]; 
[particleAnimation setCalculationMode:kCAAnimationPaced]; 
[yourEmitterLayer addAnimation:particleAnimation forKey:@"yourAnimation"]; 
+0

Xin chào, bạn sử dụng CAEmitterCell như thế nào? – Jules

0
yourEmitter.emitterShape = kCAEmitterLayerCircle; 
yourEmitter.emitterMode = kCAEmitterLayerOutline; 
Các vấn đề liên quan