Points with constraints (dup): Difference between revisions
(New page: A point can depend on another geometric object. This dependence can be given by using JavaScript syntax or by using GEONExT syntax. === GEONExT syntax === Here is an example using GEONExT...) |
No edit summary |
||
Line 42: | Line 42: | ||
var free = b2.createElement('point',[0,0], {name:'A', style:5}); | var free = b2.createElement('point',[0,0], {name:'A', style:5}); | ||
</source> | </source> | ||
Then we construct the | Then we construct the dependent point "dep". | ||
<source lang="javascript"> | <source lang="javascript"> | ||
var dep = b2.createElement('point',[function(){ return free.X();}, 1], {name:'B', style:8}); | var dep = b2.createElement('point',[function(){ return free.X();}, 1], {name:'B', style:8}); |
Revision as of 20:57, 17 September 2008
A point can depend on another geometric object. This dependence can be given by using JavaScript syntax or by using GEONExT syntax.
GEONExT syntax
Here is an example using GEONExT syntax. The point A is draggable. The point B depends on point A: Its y-coordinate is set to 1 and its x-coordinate is set to the x-coordinate of A.
var b = JXG.JSXGraph.initBoard('jxgbox1', {originX: 40, originY: 100, unitX: 40, unitY: 40});
var free = b.createElement('point',[0,0], {name:'A', style:5});
var dep = b.createElement('point',["X(A)",1], {name:'B', style:8});
JavaScript syntax
Now we do exactly the same with JavaScript syntax.
var b2 = JXG.JSXGraph.initBoard('jxgbox2', {originX: 40, originY: 100, unitX: 40, unitY: 40});
var free = b2.createElement('point',[0,0], {name:'A', style:5});
var dep = b2.createElement('point',[function(){ return free.X();}, 1], {name:'B', style:8});
The JavaScript syntax is much more robust against changes of the construction, but of course it looks more complicated. Lets look at it again in detail: First we construct a free, draggable point called "free".
var free = b2.createElement('point',[0,0], {name:'A', style:5});
Then we construct the dependent point "dep".
var dep = b2.createElement('point',[function(){ return free.X();}, 1], {name:'B', style:8});
The first coordinate of "dep" is given as an anonymous function:
function(){ return free.X();}
This function returns the x-coordinate of the point "free".