Infinity: Difference between revisions
From JSXGraph Wiki
A WASSERMANN (talk | contribs) No edit summary  | 
				A WASSERMANN (talk | contribs) No edit summary  | 
				||
| (47 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
== Just enjoy this construction... ==  | == Just enjoy this construction... ==  | ||
<  | <jsxgraph box="jxgbox" width="800" height="700">  | ||
  var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-6, 6, 10, -8]});  | |||
 brd.suspendUpdate();  | |||
  var S = brd.create('slider', [[-5,-6],[5,-6],[0,0.95,1]], {name:'S'});  | |||
 var hue = brd.create('slider', [[-5,-7],[5,-7],[0,8,36]], {name:'color'});  | |||
  var   | |||
  var S =   | |||
  var points = new Array();  |   var points = new Array();  | ||
  points[0] =   |   points[0] = brd.create('point',[5, 5], {name:' '});     | ||
  points[1] =   |   points[1] = brd.create('point',[-5, 5], {name:' '});    | ||
  points[2] =   |   points[2] = brd.create('point',[-5, -5], {name:' '});    | ||
  points[3] =   |   points[3] = brd.create('point',[5, -5], {name:' '});    | ||
  function   |   function quadrangle(pt, n) {  | ||
  var col;  | |||
   var arr = new Array();  |    var arr = new Array();  | ||
   for(var i = 0; i < 4; i++) {  |    for(var i = 0; i < 4; i++) {  | ||
    arr[i] =   |     arr[i] = brd.create('point',    | ||
          [function(t) {  |           [function(t) {  | ||
             return function () {var x = pt[t].X();    |              return function () {var x = pt[t].X();    | ||
                                 var x1 = pt[(t+1)%4].X();    |                                  var x1 = pt[(t+1)%4].X();    | ||
                                 var s = S.  |                                  var s = S.Value();  | ||
                                 return x+(x1-x)*s;  |                                  return x+(x1-x)*s;  | ||
                          }}(i),    |                           }}(i),    | ||
| Line 29: | Line 25: | ||
             return function () {var y = pt[t].Y();    |              return function () {var y = pt[t].Y();    | ||
                                 var y1 = pt[(t+1)%4].Y();    |                                  var y1 = pt[(t+1)%4].Y();    | ||
                                 var s = S.  |                                  var s = S.Value();  | ||
                                 return y+(y1-y)*s;  |                                  return y+(y1-y)*s;  | ||
                          }}(i)  |                           }}(i)  | ||
           ],    |            ],    | ||
           {  |            {size:1, name:"",withLabel:false,visible:false});  | ||
   }  |    }  | ||
   col =  function(){return JXG.hsv2rgb(hue.Value()*n,0.7,0.9);};  | |||
  brd.create('polygon',pt, {fillColor:col});  | |||
   if(n>0)  | |||
/  |     quadrangle(arr, --n);  | ||
 }  | |||
</  |  quadrangle(points,30);  | ||
 brd.unsuspendUpdate();  | |||
</jsxgraph>   | |||
<source lang="javascript">  | |||
var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-6, 6, 10, -8]});  | |||
brd.suspendUpdate();  | |||
var S = brd.create('slider', [[-5,-6],[5,-6],[0,0.95,1]], {name:'S'});  | |||
var hue = brd.create('slider', [[-5,-7],[5,-7],[0,8,36]], {name:'color'});  | |||
var points = new Array();  | |||
points[0] = brd.create('point',[5, 5], {name:' '});     | |||
points[1] = brd.create('point',[-5, 5], {name:' '});    | |||
points[2] = brd.create('point',[-5, -5], {name:' '});   | |||
points[3] = brd.create('point',[5, -5], {name:' '});    | |||
function quadrangle(pt, n) {  | |||
    var col;  | |||
    var arr = new Array();  | |||
    for(var i = 0; i < 4; i++) {  | |||
        arr[i] = brd.create('point',   | |||
            [function(t) {  | |||
                return function () {var x = pt[t].X();   | |||
                                var x1 = pt[(t+1)%4].X();   | |||
                                var s = S.Value();  | |||
                                return x+(x1-x)*s;  | |||
                         }}(i),   | |||
             function(t) {  | |||
                return function () {var y = pt[t].Y();   | |||
                                var y1 = pt[(t+1)%4].Y();   | |||
                                var s = S.Value();  | |||
                                return y+(y1-y)*s;  | |||
                         }}(i)  | |||
            ],   | |||
            {size:1, name:"",withLabel:false,visible:false});  | |||
    }  | |||
    col =  function(){return JXG.hsv2rgb(hue.Value()*n,0.7,0.9);};  | |||
    brd.create('polygon',pt, {fillColor:col});  | |||
    if(n>0)  | |||
        quadrangle(arr, --n);  | |||
   }  | |||
quadrangle(points,30);  | |||
brd.unsuspendUpdate();  | |||
</source>  | |||
[[Category:Examples]]  | |||
Latest revision as of 10:48, 17 January 2012
Just enjoy this construction...
var brd = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-6, 6, 10, -8]});
brd.suspendUpdate();
var S = brd.create('slider', [[-5,-6],[5,-6],[0,0.95,1]], {name:'S'});
var hue = brd.create('slider', [[-5,-7],[5,-7],[0,8,36]], {name:'color'});
var points = new Array();
points[0] = brd.create('point',[5, 5], {name:' '});   
points[1] = brd.create('point',[-5, 5], {name:' '});  
points[2] = brd.create('point',[-5, -5], {name:' '}); 
points[3] = brd.create('point',[5, -5], {name:' '});  
 
function quadrangle(pt, n) {
    var col;
    var arr = new Array();
    for(var i = 0; i < 4; i++) {
        arr[i] = brd.create('point', 
            [function(t) {
                return function () {var x = pt[t].X(); 
                                var x1 = pt[(t+1)%4].X(); 
                                var s = S.Value();
                                return x+(x1-x)*s;
                         }}(i), 
             function(t) {
                return function () {var y = pt[t].Y(); 
                                var y1 = pt[(t+1)%4].Y(); 
                                var s = S.Value();
                                return y+(y1-y)*s;
                         }}(i)
            ], 
            {size:1, name:"",withLabel:false,visible:false});
    }
    col =  function(){return JXG.hsv2rgb(hue.Value()*n,0.7,0.9);};
    brd.create('polygon',pt, {fillColor:col});
    if(n>0)
        quadrangle(arr, --n);
   }
quadrangle(points,30);
brd.unsuspendUpdate();