class Network { //PROPERTIES Node[] arrNodes; int count; int num_I, num_O, num_P, numNodes; float ratio_I, ratio_O, ratio_P, maxRatio; float avgTransparency; Boolean blnLoop, blnActive; color clr; //CONSTRUCTOR Network(Node[] _arrNodes){ arrNodes = _arrNodes; numNodes = arrNodes.length; blnLoop = false; blnActive = true; clr = getFillClr(); this.update(); } //METHODS color getFillClr(){ float hueValue = 0; color clrLerp = arrNodes[0].clr; for(int i=1; i= 50) ){ nodeClr = color(getColour("red")); } clrLerp = lerpColor(clrLerp, nodeClr, (1.0/(i+1))); hueValue += hue(arrNodes[i].clr); } hueValue = hueValue/arrNodes.length; color fillClr = color(hueValue, 50, 100, 100); clrLerp = color(hue(clrLerp), 50, 100, 100); return clrLerp; } void update(){ num_I = 0; num_O = 0; num_P = 0; for(int i=0; i maxRatio ) maxRatio = ratio_O; if( ratio_P > maxRatio ) maxRatio = ratio_P; //update colour clr = getFillClr(); //update transparency of network avgTransparency = 0; for(int i=0; i