浏览代码

vector animated particles

Dima Mironov 10 年之前
父节点
当前提交
18ef69cb6d
共有 3 个文件被更改,包括 17 次插入3 次删除
  1. 1 1
      js/controller.js
  2. 8 0
      js/models/particle.js
  3. 8 2
      js/views/particle.js

+ 1 - 1
js/controller.js

@@ -16,7 +16,7 @@ var Controller = function(){
 
 	this.possible_collectibles = [
 		{collectible: higgs, probability: 3e-3},
-		{collectible: electron, probability: .05}
+		{collectible: electron, probability: .5}
 		]
 	this.stage = new createjs.Stage("demoCanvas");
 }

+ 8 - 0
js/models/particle.js

@@ -2,6 +2,14 @@ var Particle = function(position){
 	Collectible.call(this, position);
 	this.type = "Higgs";
 	this.mass = 125;
+	this.draw_properties = {
+		colors: ["hsl(0, 100%, 50%)", "hsl(0, 40%, 50%)"],
+		ratios: [0, 1],
+		inner_radius: .03,
+		outer_radius: .13,
+		inner_center: {x: .07, y: .07},
+		outer_center: {x: 0, y: 0}
+		};
 	this.charge = 0;
 	this.start_time = 1234;
 	this.decay_time = 4444;

+ 8 - 2
js/views/particle.js

@@ -1,10 +1,16 @@
 (function(window) {
     function ParticleView(modelObject){
-        //this.graphics.beginFill("blue").drawCircle(0, 0, window.cell_size * 0.15 / 2);
         this.model = modelObject;
+		var dp = this.model.draw_properties;
+		var cs = window.cell_size;
+        this.graphics
+			.beginRadialGradientFill(dp.colors, dp.ratios, 
+				dp.inner_center.x * cs, dp.inner_center.y * cs , dp.inner_radius * cs,
+				dp.outer_center.x * cs, dp.outer_center.y * cs, dp.outer_radius * cs)
+			.drawCircle(0, 0, cs * dp.outer_radius);
     }
 
-    ParticleView.prototype = new createjs.Bitmap("img/higgs/higgs.gif");
+    ParticleView.prototype = new createjs.Shape();
 
     ParticleView.prototype.update = function(){
         this.x = cell_size * this.model.position.x;