particle.js 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. (function(window) {
  2. function ParticleView(modelObject){
  3. this.graphics.beginFill("blue").drawCircle(0, 0, window.cell_size * 0.15 / 2);
  4. this.model = modelObject;
  5. }
  6. ParticleView.prototype = new createjs.Shape();
  7. ParticleView.prototype.update = function(){
  8. this.x = cell_size * this.model.position.x;
  9. this.y = cell_size * this.model.position.y;
  10. }
  11. ParticleView.prototype.animate = function(){
  12. if(this.model.target){
  13. var own_view = this;
  14. this.update();
  15. this.update = function(){};
  16. createjs.Tween.get(this).to(
  17. { x: cell_size * this.model.target.x, y: cell_size * this.model.target.y },
  18. // We do not want to have magnetically curved particles for now
  19. // {guide:{ path:[0,0, 0,200,200,200, 200,0,0,0] }},
  20. this.model.target.time - this.model.start_time
  21. ).call(function(){
  22. own_view.update = ParticleView.prototype.update;
  23. own_view.model.position.x = own_view.model.target.x;
  24. own_view.model.position.y = own_view.model.target.y;
  25. });
  26. }
  27. }
  28. window.ParticleView = ParticleView;
  29. }(window));