问题,在对象内使用p5.js宽度和高度方法

时间:2017-05-04 09:29:24

标签: p5.js

您好我无法理解我可以在哪里和哪里使用p5.js方法。在此codepen

var bubble = {
  x: 200,
  y: 200,
  display: function() {
    stroke(255);
    strokeWeight(4);
    noFill();
    ellipse(this.x, this.y, 24, 24);
  },
  move: function() {
    this.x = this.x + random(-1, 1);
    this.y = this.y + random(-1, 1);
  }
}

function setup() {
  createCanvas(600, 400);

}

function draw() {
  background(0);
  bubble.display();
  bubble.move();
  ellipse(width/2,height/2,50,50)
}

如果我更换了我的“泡泡”中的x和y值。对象,例如,' width / 2'和'身高/ 2' - 控制台打印'宽度'没有定义?如果我在draw()函数中使用相同的方法,它工作正常。我猜这是一个范围问题?但不知道如何解决它。非常感谢。

1 个答案:

答案 0 :(得分:1)

var bubble = {
  init : function(){
   this.x = width/2;
   this.y = height/2;
  },
  display: function() {
    stroke(255);
    strokeWeight(4);
    noFill();
    ellipse(this.x, this.y, 24, 24);
  },
  move: function() {
    this.x = mouseX;
    this.y = mouseY;
  }
}

我无法告诉你为什么它不起作用,我无法弄清楚,但这是一个有效的解决方案