亀に好きな曲線を描かせる
微分して亀に好きな曲線を描かせよう。
1. 曲線をパラメーター t で表示する
2. x,y を t で微分する
3. 下の例を参考にプログラムを書く
放物線
function onLoad(){ logo.init(); move(100); turn(90); move(-100); penDown(); graph(0, 1, 1/128, 200); penUp(); } function graph(start, end, dt, scale) { var rot = 0; for(var t = start; t < end; t = t + dt) { var dy = 2*t; var dx = 1; var th = Math.atan2(dy,dx)/Math.PI*180; var ln = Math.sqrt(dy*dy+dx*dx)*dt*scale; turn(th - rot); rot = th; move(ln); } }
正弦曲線
function onLoad(){ logo.init(); turn(90); move(-200); penDown(); graph(0, 6.283, 1/128, 400/6.283); penUp(); } function graph(start, end, dt, scale) { var rot = 0; for(var t = start; t < end; t = t + dt) { var dy = Math.cos(t); var dx = 1; var th = Math.atan2(dy,dx)/Math.PI*180; var ln = Math.sqrt(dy*dy+dx*dx)*dt*scale; turn(th - rot); rot = th; move(ln); } }