Images: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
Line 47: Line 47:


==Dynamic image II==
==Dynamic image II==
The following example is even more dyanmic. If the position of the point "A"s changed, the image not only follows but
also the image itself changes and the opcity.
<jsxgraph with="500" height="500" box="box3">
<jsxgraph with="500" height="500" box="box3">
(function(){
(function(){
   var brd = JXG.JSXGraph.initBoard('box3', {boundingbox:[-5,5,5,-5],axis:true});
   var brd = JXG.JSXGraph.initBoard('box3', {boundingbox:[-5,5,5,-5],axis:true});
   var p = brd.create('point',[-1,-1], {size:10, opacity:0.3});
   var p = brd.create('point',[0,-1], {size:10, opacity:0.3});
   var urlImg1 = "http://jsxgraph.uni-bayreuth.de/distrib/images/fagiolo.jpg";
   var urlImg1 = "http://jsxgraph.uni-bayreuth.de/distrib/images/fagiolo.jpg";
   var urlImg2 = "http://jsxgraph.uni-bayreuth.de/distrib/images/perched_birds.jpg";
   var urlImg2 = "http://jsxgraph.uni-bayreuth.de/distrib/images/perched_birds.jpg";
   var im = brd.create('image',
   var im = brd.create('image',
           [
           [
             function(){if (p.X()<0) { return urlImg1; } else { return urlImg2; } },
             function(){if (p.X()<0) { return urlImg1; } else { return urlImg2; } },   // Make the image url dynamic
             [function(){return p.X();},function(){return p.Y();}], [2*1.61,2]  
             [function(){return p.X();},function(){return p.Y();}], [2*1.61,2]         // Make the image position dynamic
           ],
           ],
           { opacity: function(){ return 1/Math.exp(Math.abs(p.Y()));} }
           { opacity: function(){ return 2.0/Math.exp(Math.abs(p.Y()));} }             // Make the opacity dynamic
           );  
           );  
})();
})();
Line 65: Line 67:
===The JavaScript code===
===The JavaScript code===
<source lang="javascript">
<source lang="javascript">
   var brd = JXG.JSXGraph.initBoard('box2', {boundingbox:[-5,5,5,-5],axis:true});
   var brd = JXG.JSXGraph.initBoard('box3', {boundingbox:[-5,5,5,-5],axis:true});
   var p = brd.create('point',[-1,-1], {size:10, opacity:0.3});
   var p = brd.create('point',[0,-1], {size:10, opacity:0.3});
   var urlImg = "http://jsxgraph.uni-bayreuth.de/distrib/images/uccellino.jpg";
   var urlImg1 = "http://jsxgraph.uni-bayreuth.de/distrib/images/fagiolo.jpg";
   var im = brd.create('image',[urlImg, [function(){return p.X();},function(){return p.Y();}], [3,3] ]);  
  var urlImg2 = "http://jsxgraph.uni-bayreuth.de/distrib/images/perched_birds.jpg";
   var im = brd.create('image',
          [
            function(){if (p.X()<0) { return urlImg1; } else { return urlImg2; } },   // Make the image url dynamic
            [function(){return p.X();},function(){return p.Y();}], [2*1.61,2]         // Make the image position dynamic
          ],
          { opacity: function(){ return 2.0/Math.exp(Math.abs(p.Y()));} }            // Make the opacity dynamic
          );  
</source>
</source>


[[Category:Examples]]
[[Category:Examples]]

Revision as of 21:05, 1 January 2011

Static image

The JavaScript code

Images can be included with the command

var im = brd.create('image',[urlImg, [-1,-1], [2*2.67181,2] ]);

It has the parameters:

  • urlImage: URL of the image. Data URLs are possible, but will not beshown in the Internet Explorer <8 and are restricted to max. 32kByte in the Internet Explorer 8.
  • [x,y]: position of the lower left corner of the image.
  • [w,h]: width and height of the image.
var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox:[-5,5,5,-5],axis:true});
var urlImg = "http://jsxgraph.uni-bayreuth.de/distrib/images/uccellino.jpg";
var im = brd.create('image',[urlImg, [-1,-1], [3,3] ]);

Dynamic image I

The JavaScript code

The parameters

  • urlImage
  • [x,y]
  • [w,h]

can be given by functions. Here is an example where the position of the image depends on the position of the point "A".

  var brd = JXG.JSXGraph.initBoard('box2', {boundingbox:[-5,5,5,-5],axis:true});
  var p = brd.create('point',[-1,-1], {size:10, opacity:0.3});
  var urlImg = "http://jsxgraph.uni-bayreuth.de/distrib/images/uccellino.jpg";
  var im = brd.create('image',[urlImg, [function(){return p.X();},function(){return p.Y();}], [3,3] ]);

Dynamic image II

The following example is even more dyanmic. If the position of the point "A"s changed, the image not only follows but also the image itself changes and the opcity.

The JavaScript code

  var brd = JXG.JSXGraph.initBoard('box3', {boundingbox:[-5,5,5,-5],axis:true});
  var p = brd.create('point',[0,-1], {size:10, opacity:0.3});
  var urlImg1 = "http://jsxgraph.uni-bayreuth.de/distrib/images/fagiolo.jpg";
  var urlImg2 = "http://jsxgraph.uni-bayreuth.de/distrib/images/perched_birds.jpg";
  var im = brd.create('image',
          [
            function(){if (p.X()<0) { return urlImg1; } else { return urlImg2; } },   // Make the image url dynamic
            [function(){return p.X();},function(){return p.Y();}], [2*1.61,2]         // Make the image position dynamic
          ],
          { opacity: function(){ return 2.0/Math.exp(Math.abs(p.Y()));} }             // Make the opacity dynamic
          );