Difference between revisions of "Fractal Polygons"
From JSXGraph Wiki
Jump to navigationJump to searchA WASSERMANN (talk | contribs) |
|||
(16 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | With turtle graphics it is quite easy to construct regular polygons in a recursive manner. | ||
+ | |||
+ | It is possible to play around with this example: | ||
In the last line of the input window there is the command | In the last line of the input window there is the command | ||
<source lang="javascript"> | <source lang="javascript"> | ||
− | + | fracPolygon(5,100,0.4,5); | |
</source> | </source> | ||
The meaning of the parameters is | The meaning of the parameters is | ||
− | * 5: number of vertices of the regular | + | * 5: number of vertices of the regular polygon, |
− | * 100: length of a side of the initial | + | * 100: length of a side of the initial polygon, |
* 0.4: shrink factor from one level to the next, | * 0.4: shrink factor from one level to the next, | ||
− | * 5: number of recursion steps | + | * 5: number of recursion steps. |
− | |||
<html> | <html> | ||
− | |||
− | |||
− | |||
− | |||
<form><textarea id="inputtext" rows=3 cols=35 wrap="off" style="width:600px;"> | <form><textarea id="inputtext" rows=3 cols=35 wrap="off" style="width:600px;"> | ||
− | function | + | function fracPolygon(corner,len,shrink,recurs) { |
if (recurs>0) { | if (recurs>0) { | ||
if (arguments.length==4) { // initial call | if (arguments.length==4) { // initial call | ||
t.rt(180); | t.rt(180); | ||
− | + | fracPolygon(corner,len*shrink,shrink,recurs-1,1); | |
t.lt(180); | t.lt(180); | ||
} | } | ||
Line 27: | Line 25: | ||
for(var i=0;i<corner-1;i++) { | for(var i=0;i<corner-1;i++) { | ||
t.rt(180); | t.rt(180); | ||
− | + | fracPolygon(corner,len*shrink,shrink,recurs-1,1); | |
t.lt(180); | t.lt(180); | ||
t.fd(len); | t.fd(len); | ||
Line 38: | Line 36: | ||
t.setPos(-100,0); | t.setPos(-100,0); | ||
t.setPenColor('blue'); | t.setPenColor('blue'); | ||
− | + | fracPolygon(5,100,0.4,5); | |
</textarea><br /> | </textarea><br /> | ||
<input type="button" value="run" onClick="run()"> | <input type="button" value="run" onClick="run()"> | ||
<input type="button" value="clear" onClick="clearturtle()"> | <input type="button" value="clear" onClick="clearturtle()"> | ||
</form> | </form> | ||
− | < | + | </html> |
− | + | <jsxgraph width="600" height="600" box="box"> | |
− | var brd = JXG.JSXGraph.initBoard('box', { | + | var brd = JXG.JSXGraph.initBoard('box', {boundingbox: [-250, 250, 250, -250]}); |
− | var t = | + | var t = brd.create('turtle'); |
function run() { | function run() { | ||
brd.suspendUpdate(); | brd.suspendUpdate(); | ||
− | var code = | + | var code = document.getElementById('inputtext').value; |
if (code=='') { return; } | if (code=='') { return; } | ||
eval(code); | eval(code); | ||
Line 57: | Line 55: | ||
t.cs(); | t.cs(); | ||
} | } | ||
− | </ | + | </jsxgraph> |
− | |||
===References=== | ===References=== | ||
− | * Peter Baptist, Wolfgang Neidhardt, Alfred Wassermann:'' Symmetry and Regular Polygons'', Prispevki k poucevanju Matematike, The Improvement of Mathematics Education in Secondary Schools: A Tempus Project, Maribor 1996 | + | * Peter Baptist, Wolfgang Neidhardt, Alfred Wassermann:'' Symmetry and Regular Polygons'', Prispevki k poucevanju Matematike, The Improvement of Mathematics Education in Secondary Schools: A Tempus Project, Maribor 1996. |
[[Category:Examples]] | [[Category:Examples]] | ||
+ | [[Category:Turtle Graphics]] | ||
+ | [[Category:Fractals]] |
Latest revision as of 11:28, 31 January 2013
With turtle graphics it is quite easy to construct regular polygons in a recursive manner.
It is possible to play around with this example: In the last line of the input window there is the command
fracPolygon(5,100,0.4,5);
The meaning of the parameters is
- 5: number of vertices of the regular polygon,
- 100: length of a side of the initial polygon,
- 0.4: shrink factor from one level to the next,
- 5: number of recursion steps.
References
- Peter Baptist, Wolfgang Neidhardt, Alfred Wassermann: Symmetry and Regular Polygons, Prispevki k poucevanju Matematike, The Improvement of Mathematics Education in Secondary Schools: A Tempus Project, Maribor 1996.