Logarithmic spiral: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
 
(9 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], {type:'[]');
  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 12:50, 28 June 2019

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

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

with real numbers [math]\displaystyle{ a }[/math] and [math]\displaystyle{ 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'});