【发布时间】:2017-11-09 18:04:49
【问题描述】:
我正在尝试模拟重力和排序。我现在才刚刚开始,但我已经遇到了一个我似乎无法找到答案的问题。我正在努力使我的粒子使用另一个变量通过重力变量以指数方式加速。但是当我运行这段代码时,它使粒子[0].y = NaN。非常感谢帮助。
var c = document.getElementById("canvas");
var ctx = c.getContext("2d");
var gravity, objectDensity, force, parVelo;
gravity = 9.8;
function Object(mass, x, y, w, h) {
this.m = mass;
this.x = x;
this.y = y;
this.w = w;
this.h = h;
};
var particle = [];
particle.push(new Object(10,10,10,20,20));
function draw() {
parVelo += gravity;
ctx.clearRect(0,0,c.width,c.height);
for(let i = 0, len = particle.length; i < len; i++) {
ctx.fillRect(particle[i].x,particle[i].y,particle[i].w,particle[i].h)
particle[i].y += parVelo;
}
}
setInterval(draw,1000);
【问题讨论】:
-
您没有为
parVelo设置初始值 -
哇...基本的编码技术。我真的忽略了这一点。我现在有点尴尬。
标签: javascript arrays html simulation