Difference between revisions of "Team:NYU Shanghai/Code"

Line 560: Line 560:
 
<br><span></span><span></span><br>}
 
<br><span></span><span></span><br>}
  
<span></span><span></span><br><br>popMatrix();
+
 
 +
<br><br><span></span><span></span>popMatrix();
 
<span></span><br>}
 
<span></span><br>}
  
Line 568: Line 569:
 
<span></span><span></span><br><br>rectMode(CORNER);
 
<span></span><span></span><br><br>rectMode(CORNER);
 
<span></span><span></span><br>for (int m=0; m<grid_num; m++) {
 
<span></span><span></span><br>for (int m=0; m<grid_num; m++) {
<span></span><span></span><span></span><br>if (sequence[m*grid_num+n]) {
+
<span> </span><span></span><span></span><br>if (sequence[m*grid_num+n]) {
 
<span></span><span></span><span></span><span></span><br>for (int p=-1; p<2; p++) {
 
<span></span><span></span><span></span><span></span><br>for (int p=-1; p<2; p++) {
 
<span></span><span></span><span></span><span></span><span></span><br>for (int q=-1; q<2; q++) {
 
<span></span><span></span><span></span><span></span><span></span><br>for (int q=-1; q<2; q++) {
Line 960: Line 961:
 
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br><br>fill(255, 255, 255, 20);
 
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br><br>fill(255, 255, 255, 20);
 
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br>rect((n+p)*(interval+grid_size), (m+q)*(interval+grid_size),  
 
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br>rect((n+p)*(interval+grid_size), (m+q)*(interval+grid_size),  
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br><br>grid_size, grid_size);
+
<br><br><span></span><span></span><span></span><span></span><span></span><span></span><span></span>grid_size, grid_size);
<span></span><span></span><span></span><span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span><span></span><span></span><span></span>}
<span></span><span></span><span></span><span></span><span></span><span></span><br>if (p==0&&q==0){
+
<br><span></span><span></span><span></span><span></span><span></span><span></span>if (p==0&&q==0){
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br>fill(255, 255, 255, 30);
+
<br><span></span><span></span><span></span><span></span><span></span><span></span><span></span>fill(255, 255, 255, 30);
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br>rect(n*(interval+grid_size), m*(interval+grid_size),  
+
<br><span></span><span></span><span></span><span></span><span></span><span></span><span></span>rect(n*(interval+grid_size), m*(interval+grid_size),  
<span></span><span></span><span></span><span></span><span></span><span></span><span></span><br>grid_size, grid_size);
+
<br><span></span><span></span><span></span><span></span><span></span><span></span><span></span>grid_size, grid_size);
<span></span><span></span><span></span><span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span><span></span><span></span><span></span>}
<span></span><span></span><span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span><span></span><span></span>}
<span></span><span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span><span></span>}
<span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span>}
<span></span><span></span><br>}
+
<br><span></span><span></span>}
<span></span><span></span><br>popMatrix();
+
<br><span></span><span></span>popMatrix();
<span></span><br>}
+
<br><span></span>}
  
 
<br><span></span>void play_sounds(int n) {
 
<br><span></span>void play_sounds(int n) {
<span></span><span></span><br>float noteVal;
+
<br><span></span><span></span>float noteVal;
<span></span><span></span><br>float[] noteVals=new float[0];
+
<br><span></span><span></span>float[] noteVals=new float[0];
<span></span><span></span><br>for (int i=0; i<grid_num; i++) {
+
<br><span></span><span></span>for (int i=0; i<grid_num; i++) {
<span></span><span></span><span></span><br>if (sequence[i*grid_num+n]) {
+
<br> <span></span><span></span><span></span>if (sequence[i*grid_num+n]) {
<span></span><span></span><span></span><span></span><br>noteVal = float(notes[i]);
+
<br><span></span><span></span><span></span><span></span>noteVal = float(notes[i]);
<span></span><span></span><span></span><span></span><br>noteVals=append(noteVals, noteVal);
+
<br><span></span><span></span><span></span><span></span>noteVals=append(noteVals, noteVal);
<span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span>}
<span></span><span></span><br>}
+
<br><span></span><span></span>}
<span></span> <br>sc.instrument(instrument());
+
<br><span></span> sc.instrument(instrument());
<span></span> <br>sc.playChord(noteVals, volume, 0.25);
+
<br><span></span> sc.playChord(noteVals, volume, 0.25);
<span></span><br>}
+
<br><span></span>}
  
<span></span><br><br>float[] grid_color() {
+
<br><span></span><br>float[] grid_color() {
<span></span><span></span><br>float[] color_return=new float[3];
+
<br><span></span><span></span>float[] color_return=new float[3];
<span></span><span></span><br>arrayCopy(avg_color, color_return);
+
<br><span></span><span></span>arrayCopy(avg_color, color_return);
<span></span><span></span><br>return color_return;
+
<br><span></span><span></span>return color_return;
<span></span><br>}
+
<br><span></span>}
  
<span></span><br><br>boolean[] sequence() {
+
<br><br><span></span>boolean[] sequence() {
<span></span><span></span><br>boolean[] to_return=new boolean[sequence.length];
+
<br><span></span><span></span>boolean[] to_return=new boolean[sequence.length];
<span></span><span></span><br>arrayCopy(sequence, to_return);
+
<br><span></span><span></span>arrayCopy(sequence, to_return);
<span></span><span></span><br>return to_return;
+
<br><span></span><span></span>return to_return;
<span></span><br>}
+
<br><span></span>}
  
<span></span><br><br><br>int instrument(){
+
<br><br><br><span></span>int instrument(){
<span></span><span></span><br>int h=int(hue(color(avg_color[0],avg_color[1],
+
<br><span></span><span></span>int h=int(hue(color(avg_color[0],avg_color[1],
<span></span><span></span><br>avg_color[2]))%8);
+
<br><span></span><span></span>avg_color[2]))%8);
<span></span><span></span><br>if (h==0){return 2;}
+
<br><span></span><span></span>if (h==0){return 2;}
<span></span><span></span><br>else if (h==1){return 3;}
+
<br><span></span><span></span>else if (h==1){return 3;}
<span></span><span></span><br>else if (h==2){return 38;}
+
<br><span></span><span></span>else if (h==2){return 38;}
<span></span><span></span><br>else if (h==3){return 46;}
+
<br><span></span><span></span>else if (h==3){return 46;}
<span></span><span></span><br>else if (h==4){return 47;}
+
<br><span></span><span></span>else if (h==4){return 47;}
<span></span><span></span><br>else if (h==5){return 55;}
+
<br><span></span><span></span>else if (h==5){return 55;}
<span></span><span></span><br>else if (h==6){return 116;}
+
<br><span></span><span></span>else if (h==6){return 116;}
<span></span><span></span><br>else {return 120;}
+
<br><span></span>}
<span></span><br>}
+
 
<span></span>
 
<span></span>
<span></span><br><br>void set_volume(int _volume) {
+
<br><br><span></span>void set_volume(int _volume) {
<span></span><span></span><br>volume=constrain(_volume, 0, 127);
+
<br><span></span><span></span>volume=constrain(_volume, 0, 127);
<span></span><br>}
+
<br><span></span>}
 
<br>}
 
<br>}
  
 
<br><br>Source: blob detection  
 
<br><br>Source: blob detection  
 
http://www.v3ga.net/processing/BlobDetection/
 
http://www.v3ga.net/processing/BlobDetection/
 
 
<br><br>soundcipher
 
<br><br>soundcipher
 
<br>http://explodingart.com/soundcipher/
 
<br>http://explodingart.com/soundcipher/

Revision as of 03:50, 18 September 2015

Code