import java.applet.*; import java.awt.*; import java.awt.image.*; import java.awt.event.*; import java.io.*; import java.net.*; import java.text.*; import java.util.*; import java.util.zip.*; public class microCells extends BApplet { // microCells // by ::grumo // Single cells move randomly through the space. // Lines connects them. Some mouse interaction allowed. // March 19, 2002 int num=24; // number of cells MonoCell[] m = new MonoCell[num]; MonoCell queen = new MonoCell(); void setup() { size(500,250); ellipseMode(CENTER_DIAMETER); background(20,20,20); // cells constructor for(int i=0; imouseX) {posx-=step;} else if (posymouseY) {posy+=step;} } else { // if not, cells avoid the mouse pointer if (posx>=mouseX) {posx+=step/1.5f;} else if (posx<=mouseX) {posx-=step/1.5f;} else if (posy>=mouseY) {posy+=step/1.5f;} else if (posy<=mouseY) {posy-=step/1.5f;} } // constrain movements to the edge of screen if (posx<10) {posx=10;} if (posy<10) {posy=10;} if (posx>width-10) {posx=width-10;} if (posy>height-10) {posy=height-10;} //draw ellipse ellipse(posx, posy, dcell, dcell); // if diameter>25 pixels then put a nucleus if (diameter>20) { stroke (borderhue-50); ellipse(posx, posy, dcell-7,dcell-7); } // wait some -random- amount of milliseconds delay((int)(speed)); } boolean FeelsThatWay() // returns true randomly using erractiness as parameter { if ((int)(random(erraticness))==5) { return true; } else return false; } } }