如何在 p5.js 中使用向量生成点网格

How to Generate a Grid of Points Using Vectors in p5.js

我正在尝试在矢量描述的 canvas 上生成一个点网格,以形成一个流场。我在嵌套循环中生成向量,然后将它们推送到列表中,最后尝试绘制它们。但是,当我尝试绘制它们时,无法识别 .x 和 .y 属性。我认为这是因为向量列表 empty/only 中有一个条目,我不知道为什么。抱歉,如果这是一个简单的问题 - 这是我第一次使用 javascript 和 p5.js。我的代码如下所示,它应该生成一个统一的点网格。

let width = 600;
let height = 600;
let points = [];


function setup() {
  createCanvas(width, height);
  background(30);
  
  let density = 50;
  let spacing = width / density;

  for (var x = 0; x < width; x += spacing); {
    for (var y = 0; y < height; y += spacing); {
      var p = createVector(x, y)
      points.push(p)
      
    }
  }
}


function draw() {
  noStroke();
  fill(255);

  for (var i = 0; i < points.length; i++); {
    circle(points[i].x, points[i].y, 1);
  }
}

编辑:我的代码肯定会生成一个向量,但由于某种原因只生成一个向量。所以我认为问题是 for 循环没有正确执行。

您的 for 循环语法不正确。右括号和左花括号后不应有分号:

  //                                    !
  for (var i = 0; i < points.length; i++); {
    circle(points[i].x, points[i].y, 1);
  }

您需要修复每个 for 循环。