首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用p5.js更改处理代码并显示形状

使用p5.js更改处理代码并显示形状
EN

Stack Overflow用户
提问于 2021-05-11 22:20:52
回答 1查看 29关注 0票数 1

我想将处理代码更改为p5.js。我试图编写p5.js的代码,但它在p5.js上无法显示任何内容。原始文件和我的代码如下所示。

这是我的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function setup(){
  createCanvas(400,400);
}
   var N = 100;
   var cx   = [0.000, 1.000, 0.500]; 
   var cy   = [0.000, 0.000, 0.866]; 
   var x = 0.0, y = 0.0; 
   
function draw(){
   for (var i = 0; i < N; i++) { 
       nextPoint();
       drawPoint(); 
   } 
}
function drawPoint(){
  strokeWeight(1);
  var px = map(x,0,1.0,0,300);
  var py = map(y,0,1.0,0,300);
  point(px, py); 
}

function nextPoint() {
   let r = random(3);
    x = (x + cx[r]) / 2.0; 
    y = (y + cy[r]) / 2.0; 
}

这是源代码:(表单处理)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
void setup(){
  size(400,400);
}
   int N = 100;
   float[] cx   = { 0.000, 1.000, 0.500 }; 
   float[] cy   = { 0.000, 0.000, 0.866 }; 
   float x = 0.0, y = 0.0; 
   
void draw(){
   for (int i = 0; i < N; i++) { 
       nextPoint();
       drawPoint(); 
   } 
}
void drawPoint(){
  strokeWeight(1);
  float px = map(x,0,1.0,0,300);
  float py = map(y,0,1.0,0,300);
  point(px, py); 
}
void nextPoint() {
   int r = (int)random(3);
    x = (x + cx[r]) / 2.0; 
    y = (y + cy[r]) / 2.0; 
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-12 00:01:22

定义r时需要使用floor()。尽管JavaScript没有像Java那样严格的变量数据类型,但它仍然不知道像cx[1.348]这样的东西是什么意思。当您使用非整数值进行数组访问时,您将获得cx[1.348] = NaN,然后当您尝试在NaN, NaN上绘制点时,它不会执行任何操作。因此,您的代码应该在第23行显示let r = floor(random(3)) (您还可以考虑在setup()中设置背景色)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67495051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文