@@ -33,30 +33,56 @@ public class ControlFrame extends PApplet {
3333 cp5 = new ControlP5 (this );
3434
3535 int y= 0 ;
36- y+= 20 ;
36+ y+= 10 ;
3737
3838 cp5. addToggle(" PLAY" )
3939 .plugTo(parent, " play" )
40- .setPosition(20 , y). setSize(w / 2 - 25 , 20 );
40+ .setPosition(20 , y). setSize( (w - 60 ) / 2 , 20 );
4141
4242 cp5. addBang(" reload" )
43- .setLabel(" REload" ). setPosition(w / 2 , y). setSize(w / 2 - 25 , 20 );
43+ .setLabel(" REload" ). setPosition((w - 60 ) / 2 + 40 , y). setSize(( w - 60 ) / 2 , 20 );
4444
4545
46- y+= 50 ;
46+ y+= 40 ;
47+
48+ cp5. addBang(" backImage" )
49+ .setLabel(" back" )
50+ .setPosition(20 , y)
51+ .setSize(w/ 4 , 20 );
52+
53+ cp5. addBang(" nextImage" )
54+ .setLabel(" next image" )
55+ .setPosition(40 + w/ 4 , y)
56+ .setSize(3 * w/ 4 - 60 , 20 );
57+
58+ y+= 40 ;
4759
4860 cp5. addToggle(" PauseFlip" )
4961 .plugTo(parent, " pauseFlip" )
5062 .setLabel(" No Flip" )
5163 .setPosition(20 , y). setSize(40 , 20 );
52- cp5. addBang(" nextImage" )
53- .setLabel(" next image" )
54- .setPosition(w/ 2 , y)
55- .setSize(w/ 2 - 25 , 20 );
56-
5764
65+ cp5. addToggle(" randomMode" )
66+ .plugTo(parent, " randomMode" )
67+ .setLabel(" rnd mode" )
68+ .setPosition(80 , y). setSize(40 , 20 );
5869
59- y+= 50 ;
70+ cp5. addToggle(" randomMatrix" )
71+ .plugTo(parent, " randomMatrix" )
72+ .setLabel(" rnd matrix" )
73+ .setPosition(140 , y). setSize(40 , 20 );
74+
75+ y+= 45 ;
76+ cp5. addSlider(" Sort Speed" )
77+ .plugTo(parent, " sortSpeed" )
78+ .setPosition(20 ,y)
79+ .setSize(w/ 2 ,15 )
80+ .setRange(1 ,5 )
81+ .setValue(1 )
82+ .setNumberOfTickMarks(5 )
83+ ;
84+
85+ y+= 35 ;
6086
6187 cp5. addToggle(" Wrap" )
6288 .plugTo(parent, " wrap" )
@@ -65,27 +91,33 @@ public class ControlFrame extends PApplet {
6591 cp5. addToggle(" Sort Flip" )
6692 .plugTo(parent, " logic" )
6793 .setPosition(20 , y). setSize(w/ 3 , 20 )
68- .setMode(ControlP5 . SWITCH );
94+ .setMode(ControlP5 . SWITCH );
6995
96+
7097
71-
72- y+= 60 ;
98+ y+= 50 ;
7399 text (" Mode" , 20 , y);
74100 y+= 10 ;
75101 cp5. addRadioButton(" changeMode" )
102+ // .plugTo(parent, "mode")
76103 .setPosition(20 , y). setSize(30 , 20 )
77104 .setColorLabel(color (255 ))
78105 .setItemsPerRow(3 )
79- .setSpacingColumn(30 )
106+ .setSpacingColumn(20 )
80107
81108 .addItem(" A" , 0 ). addItem(" B" , 1 ). addItem(" C" , 2 )
82109 .addItem(" D" , 3 ). addItem(" E" , 4 ). addItem(" F" , 5 )
83110 .activate(2 )
84111 ;
85- y+= 60 ;
112+ y+= 70 ;
86113
87114 text (" Sort Matrix" , 20 , y);
88- y+= 10 ;
115+
116+ y-= 15 ;
117+ cp5. addBang(" clearMatrix" )
118+ .setCaptionLabel(" CLR" )
119+ .setPosition(w- 60 , y). setSize(10 , 10 );
120+ y+= 25 ;
89121 cp5. addCheckBox(" sortMatrix" )
90122 .setLabel(" mode" )
91123 .setPosition(20 , y). setSize(40 , 20 )
@@ -97,7 +129,7 @@ public class ControlFrame extends PApplet {
97129 .addItem(" 4" , 0 ). addItem(" 5" , 0 ). addItem(" 6" , 0 )
98130 .addItem(" 7" , 0 ). addItem(" 8" , 0 ). addItem(" 9" , 0 )
99131 ;
100- y+= 90 ;
132+ y+= 80 ;
101133
102134 cp5. addRange(" range" )
103135 .setBroadcast(false )
@@ -108,9 +140,8 @@ public class ControlFrame extends PApplet {
108140 .setRangeValues(20 , 150 )
109141 .setBroadcast(true )
110142 ;
111-
112-
113- y+= 50 ;
143+
144+ y+= 30 ;
114145 cp5. addSlider(" FRate" )
115146 .plugTo(parent, " frameRate" )
116147 .setRange(0.5 , 40 )
@@ -127,10 +158,39 @@ public class ControlFrame extends PApplet {
127158 .setPosition(20 , y)
128159 .setSize(w/ 2 , 20 )
129160 ;
130-
131-
132-
133- y+= 60 ;
161+
162+ y+= 50 ;
163+ Group g1 = cp5. addGroup(" g1" )
164+ .setLabel(" overlay" )
165+ .setPosition(20 , y)
166+ .setSize(w- 40 , 30 )
167+ .setBackgroundColor(color (100 ))
168+ ;
169+ cp5. addSlider(" hue" )
170+ .plugTo(parent, " overlayHue" )
171+ .setRange(0 , 255 )
172+ .setValue(0 )
173+ .setPosition(0 , 10 )
174+ .setSize(60 , 10 )
175+ .setGroup(g1)
176+ ;
177+ cp5. addSlider(" alpha" )
178+ .plugTo(parent, " overlayAlpha" )
179+ .setRange(0 , 255 )
180+ .setValue(255 )
181+ .setPosition(80 , 10 )
182+ .setSize(50 , 10 )
183+ .setGroup(g1)
184+ ;
185+
186+
187+ y+= 50 ;
188+ cp5. addBang(" shot" )
189+ .setLabel(" shot" )
190+ .setPosition(20 , y)
191+ .setSize(w- 40 , 20 );
192+
193+ y+= 50 ;
134194 Group g3 = cp5. addGroup(" g3" )
135195 .setLabel(" Albums" )
136196 .setPosition(20 , y)
@@ -139,6 +199,7 @@ public class ControlFrame extends PApplet {
139199 ;
140200
141201
202+
142203 cp5. addScrollableList(" albumlist" )
143204 .setPosition(10 , 10 )
144205 .setSize(130 , 80 )
@@ -150,8 +211,8 @@ public class ControlFrame extends PApplet {
150211 }
151212
152213
153- public void albumlist (int n ) {
154214
215+ public void albumlist (int n ) {
155216 nSet = int (n);
156217 selectSet(nSet);
157218 }
@@ -162,14 +223,24 @@ public class ControlFrame extends PApplet {
162223 lower = ceil (theEvent. getController(). getArrayValue(1 ));
163224 }
164225 }
165-
226+
227+ public void clearMatrix () {
228+ setRules();
229+ }
230+
166231 public void reload () {
167232 loadSource();
168233 }
234+
169235 public void nextImage () {
170236 nImg = (nImg+ 1 )% totalImg;
171- loadSource();
237+ loadSource();
172238 }
239+
240+ public void backImage () {
241+ nImg = (nImg- 1 )% totalImg;
242+ }
243+
173244 public void sortMatrix (float [] a ) {
174245 rules[0 ][0 ] = boolean (floor (a[0 ]));
175246 rules[0 ][1 ] = boolean (floor (a[1 ]));
@@ -184,147 +255,18 @@ public class ControlFrame extends PApplet {
184255 public void changeMode (int a ) {
185256 mode = a;
186257 }
187- public void draw () {
188-
189- // NOTHING //
258+
259+ public void shot (){
260+ printFrame= true ;
261+ println (" shot" );
190262 }
191263
192264
193- public void keyPressed () {
194- // println(keyCode);
195- // keycode ref. at http://keycodes.atjayjo.com/
196-
197- // you can use the keyboard instead of the visual controls
198- // but the changes made won't reflect on the knobs and sliders
199- // in the control window
200-
201- switch (keyCode ) {
202- case 48 :
203- setRules();
204- break ;
205- case 49 :
206- rules[0 ][0 ] = ! rules[0 ][0 ];
207- break ;
208- case 50 :
209- rules[0 ][1 ] = ! rules[0 ][1 ];
210- break ;
211- case 51 :
212- rules[0 ][2 ] = ! rules[0 ][2 ];
213- break ;
214- case 52 :
215- rules[1 ][0 ] = ! rules[1 ][0 ];
216- break ;
217- case 53 :
218- rules[1 ][1 ] = ! rules[1 ][1 ];
219- break ;
220- case 54 :
221- rules[1 ][2 ] = ! rules[1 ][2 ];
222- break ;
223- case 55 :
224- rules[2 ][0 ] = ! rules[2 ][0 ];
225- break ;
226- case 56 :
227- rules[2 ][1 ] = ! rules[2 ][1 ];
228- break ;
229- case 57 :
230- rules[2 ][2 ] = ! rules[2 ][2 ];
231- break ;
232-
233- case 82 :
234- loadSrcs();
235- loadSource(); // r
236- break ;
237- case 38 : // up arrow
238- higher++ ;
239- println (" low " + higher);
240- break ;
241- case 40 : // down arrow
242- higher-- ;
243- println (" low " + higher);
244- break ;
245- case 37 : // up arrow
246- lower-- ;
247- println (" high " + lower);
248- break ;
249- case 39 : // down arrow
250- lower++ ;
251- println (" high " + lower);
252- break ;
253- case 32 : // space toggles animation
254- play= ! play;
255- break ;
256- case 87 : // w toggles edge wrap mode
257- wrap= ! wrap;
258- break ;
259- case 65 : // a toggles edge wrap mode
260- mode= 0 ;
261- break ;
262- case 66 : // b toggles edge wrap mode
263- mode= 1 ;
264- break ;
265- case 67 : // c toggles edge wrap mode
266- mode= 2 ;
267- break ;
268- case 68 : // d toggles edge wrap mode
269- mode= 3 ;
270- break ;
271- case 69 : // e toggles edge wrap mode
272- mode= 4 ;
273- break ;
274- case 70 : // f toggles edge wrap mode
275- mode= 5 ;
276- break ;
277-
278- case 91 : // { slows down pixelsort
279- if (frameRate > 1 ) {
280- frameRate (frameRate - 2 );
281- println (" fR = " + frameRate );
282- }
283- break ;
284- case 93 : // } speeds up pixelsort
285- if (frameRate < 60 ) {
286- frameRate (frameRate + 2 );
287- println (" fR = " + frameRate );
288- }
289- break ;
290- case 59 : // ; slows down next image
291- if (flipSpeed < 160 ) {
292- flipSpeed += 12 ;
293- println (" Flip Speed = " + flipSpeed);
294- }
295- break ;
296- case 222 : // ' speeds up next image
297- if (flipSpeed > 12 ) {
298- flipSpeed -= 12 ;
299- println (" Flip Speed = " + flipSpeed);
300- }
301- break ;
302- case 78 : // n loads next image
303- nImg = (nImg+ 1 )% totalImg;
304- loadSource();
305- break ;
306- case 76 : // l pauses flip
307- pauseFlip = ! pauseFlip;
308- break ;
309- case 77 : // m loads next image set
310- nSet = (nSet+ 1 )% photoSets. length;
311- selectSet(nSet);
312- break ;
313- case 80 :
314- printFrame= ! printFrame;
315- printFNum= 0 ;
316- break ;
317- case 44 : // ,
318- logic = 0 ;
319- break ;
320- case 46 : // .
321- logic = 1 ;
322- break ;
323- }
265+ public void draw () {
266+ // NOTHING //
324267 }
325268
326269
327-
328270 private ControlFrame () {
329271 }
330272
0 commit comments