Difference between revisions of "Animation III"

From JSXGraph Wiki
Jump to navigationJump to search
 
(8 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-0.2,1.2,1.2,-0.5], keepaspectratio:true});
 
brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-0.2,1.2,1.2,-0.5], keepaspectratio:true});
 
p = [];
 
p = [];
len = 10;
+
len = 25;
 
for (i=0;i<len;i++) {
 
for (i=0;i<len;i++) {
     p[i] = brd.createElement('point',[Math.random(),Math.random()],
+
     p[i] = brd.create('point',[Math.random(),Math.random()],
               {face:'o', size:8, strokeColor:'red', fillColor:'red', fillOpacity:0.4, strokeOpacity:0.4, withLabel:false});
+
               {face:'o', size:10, strokeColor:'red', fillColor:'red', fillOpacity:0.4, strokeOpacity:0.4, withLabel:false});
 
}
 
}
 
setInterval(function(){
 
setInterval(function(){
 
   var i, j;
 
   var i, j;
 
   for (i=0;i<p.length;i++) {
 
   for (i=0;i<p.length;i++) {
       p[i].moveTo([Math.random(),Math.random()],1800);
+
       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);
 +
</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.create('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++) {
 
   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++) {
 
       for (j=i+1;j<p.length;j++) {
           if (p[i].Dist(p[j])<0.05) {
+
           if (p[i].Dist(p[j])<0.075) {
 
               brd.removeObject(p[j]);
 
               brd.removeObject(p[j]);
 
               p.splice(j,1);
 
               p.splice(j,1);
           }
+
              brd.removeObject(p[i]);
 +
              p.splice(i,1);
 +
              i--;
 +
              break;
 +
           }  
 
       }
 
       }
 +
      i++;
 
   }
 
   }
 
},2000);
 
},2000);
</jsxgraph>
+
</source>
 +
 
 +
[[Category:Examples]]

Latest revision as of 13:28, 12 November 2020

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.create('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);