N-gones - Slow version: Difference between revisions
From JSXGraph Wiki
A WASSERMANN (talk | contribs) No edit summary |
A WASSERMANN (talk | contribs) No edit summary |
||
(43 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<html> | <html> | ||
<form><textarea id="inputtext" rows= | <link rel="stylesheet" type="text/css" href="http://jsxgraph.uni-bayreuth.de/distrib/jsxgraph.css" /> | ||
function | <form><textarea id="inputtext" rows=5 cols=35 wrap="off" style="width:600px;"> | ||
speed=25; | |||
t.cs().hideTurtle().setProperty({strokeWidth:4,strokeOpacity:0.6,fillOpacity:0.3}); | |||
ngon(10,60); | |||
</textarea><br /> | |||
<input type="button" value="run" onClick="runturtle()"> | |||
<input type="button" value="clear" onClick="clearturtle()"> | |||
</form> | |||
</html> | |||
<jsxgraph width="600" height="600"> | |||
var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-300, 300, 300, -300]}); | |||
var t = brd.create('turtle',[],{fillColor:'yellow'}); | |||
var speed; | |||
function innerloop(i,j,ne,sz) { | |||
if (i>0) { | |||
if (j==ne) { t.rt(360/ne); } | |||
t.rt(360/ne); | t.rt(360/ne); | ||
t.fd(sz); | t.fd(sz); | ||
j--; | |||
if (j<=0) { | |||
j=ne; | |||
i--; | |||
} | |||
var st = 'innerloop('+(i)+','+(j)+','+(ne)+','+(sz)+')'; | |||
setTimeout(st,speed); | |||
} | } | ||
} | } | ||
function | function ngon(ne,sz) { | ||
innerloop(ne,ne,ne,sz); | |||
} | |||
function runturtle() { | |||
var code = document.getElementById('inputtext').value; | |||
if (code=='') { return; } | |||
eval(code); | |||
} | |||
function clearturtle() { | |||
t.cs(); | |||
} | |||
</jsxgraph> | |||
== Sourcecode == | |||
<source lang="javascript"> | |||
var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-300, 300, 300, -300]}); | |||
var t = brd.create('turtle',[],{fillColor:'yellow'}); | |||
var speed; | |||
function innerloop(i,j,ne,sz) { | |||
if (i>0) { | |||
if (j==ne) { t.rt(360/ne); } | |||
t.rt(360/ne); | t.rt(360/ne); | ||
t.fd(sz); | |||
j--; | |||
if (j<=0) { | |||
j=ne; | |||
i--; | |||
} | |||
var st = 'innerloop('+(i)+','+(j)+','+(ne)+','+(sz)+')'; | |||
setTimeout(st,speed); | |||
} | } | ||
} | } | ||
function ngon(ne,sz) { | |||
innerloop(ne,ne,ne,sz); | |||
} | |||
function runturtle() { | |||
var code = document.getElementById('inputtext').value; | |||
function | |||
var code = | |||
if (code=='') { return; } | if (code=='') { return; } | ||
eval(code); | eval(code); | ||
} | } | ||
function clearturtle() { | function clearturtle() { | ||
t.cs(); | t.cs(); | ||
} | } | ||
</source> | |||
</ | |||
[[Category:Examples]] | |||
[[Category:Turtle Graphics]] |
Latest revision as of 13:34, 3 March 2021
Sourcecode
var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-300, 300, 300, -300]});
var t = brd.create('turtle',[],{fillColor:'yellow'});
var speed;
function innerloop(i,j,ne,sz) {
if (i>0) {
if (j==ne) { t.rt(360/ne); }
t.rt(360/ne);
t.fd(sz);
j--;
if (j<=0) {
j=ne;
i--;
}
var st = 'innerloop('+(i)+','+(j)+','+(ne)+','+(sz)+')';
setTimeout(st,speed);
}
}
function ngon(ne,sz) {
innerloop(ne,ne,ne,sz);
}
function runturtle() {
var code = document.getElementById('inputtext').value;
if (code=='') { return; }
eval(code);
}
function clearturtle() {
t.cs();
}