Polygon through ordered set of gliders: Difference between revisions
From JSXGraph Wiki
A WASSERMANN (talk | contribs)  New page: <jsxgraph height="500" width="600" board="board"  box="jxgbox">     board = JXG.JSXGraph.initBoard('jxgbox', {axis:true, originX: 250, originY: 250, unitX: 50, unitY: 50});     board.suspe...  | 
				A WASSERMANN (talk | contribs) No edit summary  | 
				||
| Line 8: | Line 8: | ||
     graph = board.createElement('curve', board.neville(p),{strokeWidth:5,strokeOpacity:0.5});  |      graph = board.createElement('curve', board.neville(p),{strokeWidth:5,strokeOpacity:0.5});  | ||
     gliders = [];  |      gliders = [];  | ||
     gliders[0] = board.createElement('glider', [-1,0,graph],{style:6});  |      gliders[0] = board.createElement('glider', [-1,0,graph],{style:6});  | ||
| Line 30: | Line 31: | ||
===The underlying JavaScript code===  | ===The underlying JavaScript code===  | ||
<source lang="javascript">  | <source lang="javascript">  | ||
    board = JXG.JSXGraph.initBoard('jxgbox', {axis:true, originX: 250, originY: 250, unitX: 50, unitY: 50});  | |||
    board.suspendUpdate();  | |||
    var p = [];  | |||
    p[0] = board.createElement('point', [-1,2], {style:4,name:''});  | |||
    p[1] = board.createElement('point', [0,-2], {style:4,name:''});  | |||
    p[2] = board.createElement('point', [2,1], {style:4,name:''});  | |||
    graph = board.createElement('curve', board.neville(p),{strokeWidth:5,strokeOpacity:0.5});  | |||
    gliders = [];  | |||
    gliders[0] = board.createElement('glider', [-1,0,graph],{style:6});  | |||
    gliders[1] = board.createElement('glider', [-0.5,-2,graph],{style:6});  | |||
    gliders[2] = board.createElement('glider', [1,-3,graph],{style:6});  | |||
    gliders[3] = board.createElement('glider', [1.5,-1,graph],{style:6});  | |||
    board.createElement('polygon',gliders,{strokeColor:'red'});  | |||
    board.updateConditions = function() {  | |||
        var i;  | |||
        for (i=1;i<gliders.length;i++) {  | |||
            if (gliders[i].position<gliders[i-1].position) {  | |||
                gliders[i].coords = new JXG.Coords(JXG.COORDS_BY_USER, gliders[i-1].coords.usrCoords, board);   | |||
                gliders[i].update();  | |||
            }  | |||
        };  | |||
    }  | |||
    board.unsuspendUpdate();  | |||
</source>  | </source>  | ||
[[Category:Examples]]  | [[Category:Examples]]  | ||
Revision as of 15:24, 18 June 2009
The underlying JavaScript code
    board = JXG.JSXGraph.initBoard('jxgbox', {axis:true, originX: 250, originY: 250, unitX: 50, unitY: 50});
    board.suspendUpdate();
    var p = [];
    p[0] = board.createElement('point', [-1,2], {style:4,name:''});
    p[1] = board.createElement('point', [0,-2], {style:4,name:''});
    p[2] = board.createElement('point', [2,1], {style:4,name:''});
    
    graph = board.createElement('curve', board.neville(p),{strokeWidth:5,strokeOpacity:0.5});
    gliders = [];
    gliders[0] = board.createElement('glider', [-1,0,graph],{style:6});
    gliders[1] = board.createElement('glider', [-0.5,-2,graph],{style:6});
    gliders[2] = board.createElement('glider', [1,-3,graph],{style:6});
    gliders[3] = board.createElement('glider', [1.5,-1,graph],{style:6});
    
    board.createElement('polygon',gliders,{strokeColor:'red'});
    
    board.updateConditions = function() {
        var i;
        for (i=1;i<gliders.length;i++) {
            if (gliders[i].position<gliders[i-1].position) {
                gliders[i].coords = new JXG.Coords(JXG.COORDS_BY_USER, gliders[i-1].coords.usrCoords, board); 
                gliders[i].update();
            }
        };
    }
    board.unsuspendUpdate();