Difference between revisions of "Animation III"

From JSXGraph Wiki
Jump to navigationJump to search
Line 15: Line 15:
 
   while (i<p.length) {
 
   while (i<p.length) {
 
       for (j=i+1;j<p.length;j++) {
 
       for (j=i+1;j<p.length;j++) {
           if (p[i].Dist(p[j])<0.08) {
+
           if (p[i].Dist(p[j])<0.075) {
 
               brd.removeObject(p[j]);
 
               brd.removeObject(p[j]);
 
               p.splice(j,1);
 
               p.splice(j,1);
Line 28: Line 28:
 
},2000);
 
},2000);
 
</jsxgraph>
 
</jsxgraph>
 +
 +
===The underlying JavaScript code===
 +
<source lang="javascript">
 +
brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-0.2,1.2,1.2,-0.5], keepaspectratio:true});
 +
p = [];
 +
len = 25;
 +
for (i=0;i<len;i++) {
 +
    p[i] = brd.createElement('point',[Math.random(),Math.random()],
 +
              {face:'o', size:10, strokeColor:'red', fillColor:'red', fillOpacity:0.4, strokeOpacity:0.4, withLabel:false});
 +
}
 +
setInterval(function(){
 +
  var i, j;
 +
  for (i=0;i<p.length;i++) {
 +
      p[i].moveTo([Math.random(),Math.random()],1000);
 +
  }
 +
  i = 0;
 +
  while (i<p.length) {
 +
      for (j=i+1;j<p.length;j++) {
 +
          if (p[i].Dist(p[j])<0.075) {
 +
              brd.removeObject(p[j]);
 +
              p.splice(j,1);
 +
              brd.removeObject(p[i]);
 +
              p.splice(i,1);
 +
              i--;
 +
              break;
 +
          }
 +
      }
 +
      i++;
 +
  }
 +
},2000);
 +
</source>
 +
 +
[[Category:Examples]]

Revision as of 17:51, 30 September 2009

The underlying JavaScript code

brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-0.2,1.2,1.2,-0.5], keepaspectratio:true});
p = [];
len = 25;
for (i=0;i<len;i++) {
    p[i] = brd.createElement('point',[Math.random(),Math.random()],
               {face:'o', size:10, strokeColor:'red', fillColor:'red', fillOpacity:0.4, strokeOpacity:0.4, withLabel:false});
}
setInterval(function(){
   var i, j;
   for (i=0;i<p.length;i++) {
       p[i].moveTo([Math.random(),Math.random()],1000);
   }
   i = 0;
   while (i<p.length) {
       for (j=i+1;j<p.length;j++) {
           if (p[i].Dist(p[j])<0.075) {
               brd.removeObject(p[j]);
               p.splice(j,1);
               brd.removeObject(p[i]);
               p.splice(i,1);
               i--;
               break;
           } 
       }
       i++;
   }
},2000);