Difference between revisions of "Logarithmic spiral"

From JSXGraph Wiki
Jump to navigationJump to search
 
(11 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
<jsxgraph box="jsxgbox" width="500" height="500">
 
<jsxgraph box="jsxgbox" width="500" height="500">
 
  board = JXG.JSXGraph.initBoard('jsxgbox', {boundingbox: [-10, 10, 10, -10]});
 
  board = JXG.JSXGraph.initBoard('jsxgbox', {boundingbox: [-10, 10, 10, -10]});
  var a = board.createElement('slider', [[1,-1],[5,-1],[0,0.3,1]],{name:'a'});
+
  var a = board.create('slider', [[1,-1],[5,-1],[0,0.3,1]],{name:'a'});
  var b = board.createElement('slider', [[1,-2],[5,-2],[0,0.15,1]],{name:'b'});
+
  var b = board.create('slider', [[1,-2],[5,-2],[-1,0.15,1]],{name:'b'});
  var c = board.createElement('curve', [function(phi){return a.Value()*JXG.Math.pow(Math.E,b.Value()*phi); }, [0, 0], 0, 8*Math.PI],
+
  var c = board.create('curve', [function(phi){return a.Value()*Math.exp(b.Value()*phi); }, [0, 0], 0, 8*Math.PI],
 
             {curveType:'polar', strokewidth:4});         
 
             {curveType:'polar', strokewidth:4});         
  //var g = board.createElement('glider', [c]);
+
  var g = board.create('glider', [c]);
  //var t = board.createElement('tangent', [g], {dash:2,strokeColor:'#a612a9'});
+
  var t = board.create('tangent', [g], {dash:2,strokeColor:'#a612a9'});
  
 
</jsxgraph>  
 
</jsxgraph>  
Line 18: Line 18:
 
<source lang="javascript">
 
<source lang="javascript">
 
  board = JXG.JSXGraph.initBoard('jsxgbox', {boundingbox: [-10, 10, 10, -10]});
 
  board = JXG.JSXGraph.initBoard('jsxgbox', {boundingbox: [-10, 10, 10, -10]});
  var a = board.createElement('slider', [[1,-1],[5,-1],[0,0.3,1]],{name:'a'});
+
  var a = board.create('slider', [[1,-1],[5,-1],[0,0.3,1]],{name:'a'});
  var b = board.createElement('slider', [[1,-2],[5,-2],[0,0.15,1]],{name:'b'});
+
  var b = board.create('slider', [[1,-2],[5,-2],[-1,0.15,1]],{name:'b'});
  var c = board.createElement('curve', [function(phi){return a.Value()*JXG.Math.pow(Math.E,b.Value()*phi); }, [0, 0],0, 8*Math.PI],
+
  var c = board.create('curve', [function(phi){return a.Value()*JXG.Math.pow(Math.E,b.Value()*phi); }, [0, 0],0, 8*Math.PI],
 
             {curveType:'polar', strokewidth:4});         
 
             {curveType:'polar', strokewidth:4});         
  var g = board.createElement('glider', [c]);
+
  var g = board.create('glider', [c]);
  var t = board.createElement('tangent', [g], {dash:2,strokeColor:'#a612a9'});
+
  var t = board.create('tangent', [g], {dash:2,strokeColor:'#a612a9'});
 
</source>
 
</source>
  
 
[[Category:Examples]]
 
[[Category:Examples]]
 
[[Category:Curves]]
 
[[Category:Curves]]

Latest revision as of 14:50, 28 June 2019

It can be described in polar coordinates [math](r, \theta)[/math] by the equation

[math]r = ae^{b\theta}\,[/math]

with real numbers [math]a[/math] and [math]b[/math].

The JavaScript code to produce this picture

 board = JXG.JSXGraph.initBoard('jsxgbox', {boundingbox: [-10, 10, 10, -10]});
 var a = board.create('slider', [[1,-1],[5,-1],[0,0.3,1]],{name:'a'});
 var b = board.create('slider', [[1,-2],[5,-2],[-1,0.15,1]],{name:'b'});
 var c = board.create('curve', [function(phi){return a.Value()*JXG.Math.pow(Math.E,b.Value()*phi); }, [0, 0],0, 8*Math.PI],
             {curveType:'polar', strokewidth:4});        
 var g = board.create('glider', [c]);
 var t = board.create('tangent', [g], {dash:2,strokeColor:'#a612a9'});