Difference between revisions of "Slow the turtle down"

From JSXGraph Wiki
Jump to navigationJump to search
(New page: <jsxgraph width="500" height="500"> var brd = JXG.JSXGraph.initBoard('jxgbox',{unitX:1, unitY:1}); </jsxgraph> Category:Examples Category:Turtle Graphics)
 
 
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
This is an example, where the turtle speed is controlled by the setTimeout() method
 +
of JavaScript.
 +
<html>
 +
<form><input type="button" value="run" onclick="run(100)"></form>
 +
</html>
 +
 
<jsxgraph width="500" height="500">
 
<jsxgraph width="500" height="500">
var brd = JXG.JSXGraph.initBoard('jxgbox',{unitX:1, unitY:1});
+
var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox: [-250, 250, 250, -250]});
 +
var t = brd.create('turtle',[100,-50],{strokeOpacity:0.7,fillColor:'#ff8800',fillOpacity:0.2});
 +
t.setPenSize(3);
 +
 
 +
function run(n) {
 +
  if (n>0) {
 +
    t.fd(20);
 +
    t.lt(90*(1-n/100));
 +
    var st = 'run(' + (n-1) + ')';
 +
    setTimeout(st,25);
 +
  }
 +
}
 
</jsxgraph>
 
</jsxgraph>
 +
 +
<source lang="javascript">
 +
var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox: [-250, 250, 250, -250]});
 +
var t = brd.create('turtle',[100,-50],{strokeOpacity:0.7,fillColor:'#ff8800',fillOpacity:0.2});
 +
t.setPenSize(3);
 +
 +
function run(n) {
 +
  if (n>0) {
 +
    t.fd(20);
 +
    t.lt(90*(1-n/100));
 +
    var st = 'run(' + (n-1) + ')';
 +
    setTimeout(st,25);
 +
  }
 +
}
 +
</source>
  
 
[[Category:Examples]]
 
[[Category:Examples]]
 
[[Category:Turtle Graphics]]
 
[[Category:Turtle Graphics]]

Latest revision as of 14:44, 8 June 2011

This is an example, where the turtle speed is controlled by the setTimeout() method of JavaScript.

var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox: [-250, 250, 250, -250]});
var t = brd.create('turtle',[100,-50],{strokeOpacity:0.7,fillColor:'#ff8800',fillOpacity:0.2});
t.setPenSize(3);

function run(n) {
   if (n>0) {
     t.fd(20);
     t.lt(90*(1-n/100));
     var st = 'run(' + (n-1) + ')';
     setTimeout(st,25);
   }
}