Infinity: Difference between revisions
From JSXGraph Wiki
A WASSERMANN (talk | contribs) No edit summary |
A WASSERMANN (talk | contribs) No edit summary |
||
(35 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 quadrangle(pt, n) { | 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 27: | 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) | if(n>0) | ||
quadrangle(arr, --n); | quadrangle(arr, --n); | ||
} | } | ||
quadrangle(points,30); | quadrangle(points,30); | ||
brd.unsuspendUpdate(); | |||
</ | </jsxgraph> | ||
<source lang="javascript"> | <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 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), | ||
function(t) { | |||
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(); | |||
</source> | </source> | ||
[[Category:Examples]] | [[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();