1 class TowerParams extends SCPattern
3 BasicParameter hueoff = new BasicParameter("Hueoff", 0.0);
4 BasicParameter hueSpan = new BasicParameter("HueRange", 0.0);
5 BasicParameter t1 = new BasicParameter("T1", 0.0);
6 BasicParameter t2 = new BasicParameter("T2", 0.0);
7 BasicParameter t3 = new BasicParameter("T3", 0.0);
8 BasicParameter t4 = new BasicParameter("T4", 0.0);
9 BasicParameter t5 = new BasicParameter("T5", 0.0);
10 BasicParameter t6 = new BasicParameter("T6", 0.0);
11 BasicParameter t7 = new BasicParameter("T7", 0.0);
12 BasicParameter t8 = new BasicParameter("T8", 0.0);
13 BasicParameter t9 = new BasicParameter("T9", 0.0);
14 BasicParameter t10 = new BasicParameter("T10", 0.0);
15 BasicParameter t11 = new BasicParameter("T11", 0.0);
16 BasicParameter t12 = new BasicParameter("T12", 0.0);
17 BasicParameter t13 = new BasicParameter("T13", 0.0);
18 BasicParameter t14 = new BasicParameter("T14", 0.0);
19 BasicParameter t15 = new BasicParameter("T15", 0.0);
20 BasicParameter t16 = new BasicParameter("T16", 0.0);
22 ArrayList<BasicParameter> towerParams;
25 TowerParams(GLucose glucose) {
28 towerParams = new ArrayList<BasicParameter>();
30 addParameter(hueSpan);
47 for(BasicParameter p : towerParams)
51 towerSize = model.towers.size();
52 colorSpan = 255 / towerSize;
55 void run(double deltaMs)
59 for(int i=0; i<towerSize ;i++)
61 t= model.towers.get(i);
62 for(Point p : t.points)
64 if(p.y<towerParams.get(i).getValuef()*200)
66 colors[p.index]=lx.hsb(255 * hueoff.getValuef()+colorSpan * hueSpan.getValuef() * i, 255, 255);
73 public void clearALL()
75 for(Point p : model.points)
82 class Sandbox extends SCPattern
87 int pointrange= model.points.size();
88 int striprange= model.strips.size();
89 int facerange= model.faces.size();
90 int cuberange = model.cubes.size();
91 int towerrange = model.towers.size();
94 Sandbox(GLucose glucose) {
96 println("points "+pointrange);
97 println("strips "+striprange);
98 println("faces "+facerange);
99 println("cubes "+cuberange);
100 println("towers "+towerrange);
103 public void run(double deltaMs) {
109 c = (c + 1) % towerrange;
110 long col = lx.hsb(Math.round(Math.random()*255),255,255) ;
117 public void doDraw(int c,long col)
119 Tower t= model.towers.get((int) c);
120 for(Point p : t.points)
122 colors[p.index] = (int) col;
127 class GranimTestPattern extends GranimPattern
129 GranimTestPattern(GLucose glucose)
132 addGraphic("myReds",new RedsGraphic(100));
133 int[] dots = {0,128,0,128,0,128,0,128,0,128,0,128};
134 addGraphic("myOtherColors",new ColorDotsGraphic(dots));
136 getGraphicByName("myOtherColors").position=100;
139 public void run(double deltaMs)
146 Graphic reds = getGraphicByName("myReds");
147 Graphic others = getGraphicByName("myOtherColors");
148 reds.position = reds.position + 1 % 19000;
149 others.position = others.position + 10 % 19000;
152 public void clearALL()
154 for(int i = 0; i < colors.length; i++)
163 class GranimTestPattern2 extends GranimPattern
165 GranimTestPattern2(GLucose glucose)
168 /*for(int i = 0;i < 100; i++)
170 Graphic g = addGraphic("myReds_"+i,new RedsGraphic(Math.round(Math.random() * 100)));
173 Graphic g = addGraphic("myRandoms",new RandomsGranim(50));
179 public void run(double deltaMs)
183 Graphic randomsGraphic = getGraphicByName("myRandoms");
184 randomsGraphic.position = Math.round(sin(count)*1000)+5000;
187 public void clearALL()
189 for(Point p : model.points)
198 class DriveableCrossSections extends CrossSections
205 DriveableCrossSections(GLucose glucose) {
209 public void addParams()
211 mode = new BasicParameter("Mode", 0.0);
212 xd = new BasicParameter("XD", 0.0);
213 yd = new BasicParameter("YD", 0.0);
214 zd = new BasicParameter("ZD", 0.0);
223 public void onParameterChanged(LXParameter p) {
235 void copyValuesToKnobs()
237 xd.setValue(x.getValue()/200);
238 yd.setValue(y.getValue()/115);
239 zd.setValue(z.getValue()/100);
242 void copyKnobsToValues()
244 x.setValue(xd.getValue()*200);
245 y.setValue(yd.getValue()*115);
246 z.setValue(zd.getValue()*100);
249 boolean interactive()
251 return Math.round(mode.getValuef())>0.5;
254 public void updateXYZVals()
258 xv = xd.getValuef()*200;
259 yv = yd.getValuef()*115;
260 zv = zd.getValuef()*100;
262 super.updateXYZVals();