1
これはp5.js
/処理で書かれています。彼らがしているので、あなたのstartx
とstarty
変数が変更されていないようにそれはそうな理由がある古いポイント私の出発点はJavaScriptを変更していません
var aslider, lslider, sslider, newx, newy;
function setup() {
createCanvas(300,300);
aslider = createSlider(1,359,17); #angle
lslider = createSlider(1,50,10); #length
sslider = createSlider(1,50,20); #amount of side
}
function draw() {
var angle = aslider.value();
var length = lslider.value();
var size = sslider.value();
var startx = 100;
var starty = 100;
var radians = angle * (Math.PI/180);
for (var i = 0; i < size; i++) {
newx = Math.cos(radians) * length + startx;
newy = Math.sin(radians) * length + starty;
line(startx, starty, newx, newy);
startx = newx; #not changing
starty = newy; #not changing
}
}
'startx'と' starty'はいつ更新されませんか?ループの繰り返し中または後続の関数の実行中(後続の関数がスコープの問題を呼び出す場合) 'startx'にブレークポイントを設定し、実行中にデバッガで検査しましたか?あなたは特定の 'newx'、' newy'は実際に新しい価値を持っていますか? – scrappedcola
'startx/y'の宣言を関数の外側のスコープに移動しました。現在、関数が呼び出されるたびにそれらをオーバーライドしています。 – Teemu