Difference between revisions of "N-gones - Slow version"
From JSXGraph Wiki
Jump to navigationJump to searchA WASSERMANN (talk | contribs) |
A WASSERMANN (talk | contribs) |
||
(17 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<html> | <html> | ||
<link rel="stylesheet" type="text/css" href="http://jsxgraph.uni-bayreuth.de/distrib/jsxgraph.css" /> | <link rel="stylesheet" type="text/css" href="http://jsxgraph.uni-bayreuth.de/distrib/jsxgraph.css" /> | ||
− | < | + | <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); | |
− | function | + | </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); | |
− | + | 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 == |
− | var brd = JXG.JSXGraph.initBoard('jxgbox', { | + | |
− | var t = brd. | + | <source lang="javascript"> |
+ | var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-300, 300, 300, -300]}); | ||
+ | var t = brd.create('turtle',[],{fillColor:'yellow'}); | ||
+ | var speed; | ||
− | function | + | function innerloop(i,j,ne,sz) { |
if (i>0) { | 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 = ' | + | var st = 'innerloop('+(i)+','+(j)+','+(ne)+','+(sz)+')'; |
− | + | setTimeout(st,speed); | |
− | setTimeout(st, | ||
} | } | ||
} | } | ||
+ | function ngon(ne,sz) { | ||
+ | innerloop(ne,ne,ne,sz); | ||
+ | } | ||
function runturtle() { | function runturtle() { | ||
− | + | var code = document.getElementById('inputtext').value; | |
− | |||
− | var code = | ||
if (code=='') { return; } | if (code=='') { return; } | ||
eval(code); | eval(code); | ||
− | |||
} | } | ||
function clearturtle() { | function clearturtle() { | ||
t.cs(); | t.cs(); | ||
} | } | ||
− | + | </source> | |
− | </ | ||
[[Category:Examples]] | [[Category:Examples]] | ||
[[Category:Turtle Graphics]] | [[Category:Turtle Graphics]] |
Latest revision as of 15: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();
}