Javascript 有人能帮忙吗?I';我正在尝试制作一个程序,在数字-1到10之间循环,并用半径平方做圆,但它不';行不通
我希望程序通过for循环中的每个数字循环,并创建一个半径为该数字平方的圆,但它似乎不起作用。我只创建一个半径为for循环中最后一个数字的圆 我尝试创建一个单独的函数并返回值并将其放入draw函数中,但这似乎不起作用Javascript 有人能帮忙吗?I';我正在尝试制作一个程序,在数字-1到10之间循环,并用半径平方做圆,但它不';行不通,javascript,function,loops,for-loop,Javascript,Function,Loops,For Loop,我希望程序通过for循环中的每个数字循环,并创建一个半径为该数字平方的圆,但它似乎不起作用。我只创建一个半径为for循环中最后一个数字的圆 我尝试创建一个单独的函数并返回值并将其放入draw函数中,但这似乎不起作用 function setup() { createCanvas(600, 600); } function draw() { for (i = -1; i <= 10; i++) { newI = i ** 2; }; background(250);
function setup() {
createCanvas(600, 600);
}
function draw() {
for (i = -1; i <= 10; i++) {
newI = i ** 2;
};
background(250);
circle(300, 300, newI);
//ignore the lines those are just the axis//
line(300, 0, 300, 600);
line(0, 300, 600, 300);
}
函数设置(){
createCanvas(600600);
}
函数绘图(){
对于@Tim Biegeleisen提到的(i=-1;i),圆()和线()应该在循环中,但另一种方法是将它们分开
与其将逻辑放入循环中,不如让循环迭代调用单独的命名frunction,并将新的i值作为参数传递
编辑:循环更改为递减,以反转半径的顺序
function setup() {
createCanvas(600, 600);
}
function draw() {
for (i = 10; i >= -1; i--) {
createCircle(i ** 2)
};
}
function createCircle(newI){
background(250);
circle(300, 300, newI);
line(300, 0, 300, 600);
line(0, 300, 600, 300);
}
正如@Tim Biegeleisen所提到的,圆()和线()应该在循环中,但另一种方法是将它们分开
与其将逻辑放入循环中,不如让循环迭代调用单独的命名frunction,并将新的i值作为参数传递
编辑:循环更改为递减,以反转半径的顺序
function setup() {
createCanvas(600, 600);
}
function draw() {
for (i = 10; i >= -1; i--) {
createCircle(i ** 2)
};
}
function createCircle(newI){
background(250);
circle(300, 300, newI);
line(300, 0, 300, 600);
line(0, 300, 600, 300);
}
对于初学者来说,那些对circle()
和line()
的调用可能属于For
循环。对于初学者来说,那些对circle()
和line()
的调用可能属于For
循环。我试着运行了这个循环,结果是相同的,只有一个循环。你确定a)你没有在循环的每一次迭代中删除并重新绘制圆?或者b)你没有在相同的坐标处绘制圆,所以实际上有所有10个圆-但每个圆都直接位于其前身之上?关于第二个圆,你可能是对的。它们可能都在彼此之上。我如何制作它们“看穿"?试着从最大半径到最小半径运行循环it-我刚刚更改了循环,使其与注释中建议的顺序相反。我试着运行此循环,结果是相同的,只有一个圆。你确定a)你没有在循环的每次迭代中删除并重新绘制圆吗?或者b)你没有在相同的位置绘制圆co坐标实际上有10个圆,但每个圆都直接位于前一个圆的上方?你可能对第二个圆的看法是正确的。它们可能都在彼此的上方。我如何使它们“透明”?试着从最大半径到最小半径运行你的循环。我只是按照评论中的建议,改变了循环的顺序。