Basic knob driving
authorBen Morrow <childoftv@gmail.com>
Mon, 19 Aug 2013 02:23:23 +0000 (19:23 -0700)
committerBen Morrow <childoftv@gmail.com>
Mon, 19 Aug 2013 02:23:23 +0000 (19:23 -0700)
BenMorrow.pde
MarkSlee.pde
SugarCubes.pde

index 8a1dd0270bcbbf28bbc8ff0bb13313e88f08f52f..8b2b4f55ef47f4bb30d2fe103235c8de2a39d823 100644 (file)
@@ -112,4 +112,41 @@ class GranimTestPattern2 extends GranimPattern
        }
 
 
+};
+
+class DriveableCrossSections extends CrossSections
+{
+       BasicParameter xd = new BasicParameter("XD", 1.0);
+       BasicParameter yd = new BasicParameter("YD", 1.0);
+       BasicParameter zd = new BasicParameter("ZD", 1.0);
+
+       DriveableCrossSections(GLucose glucose) {
+               super(glucose); 
+       }
+
+       public void addParams()
+       {
+               addParameter(xd);
+           addParameter(yd);
+           addParameter(zd);
+           addParameter(xr);
+           addParameter(yr);
+           addParameter(zr);    
+           addParameter(xw);
+           addParameter(xl);
+           addParameter(yl);
+           addParameter(zl);
+               addParameter(yw);    
+           addParameter(zw);
+       }
+
+
+
+       public void updateXYZVals()
+       {
+               xv = xd.getValuef();
+           yv = yd.getValuef();
+           zv = zd.getValuef(); 
+       }
+
 }
\ No newline at end of file
index 7b1b86bae1af50c5ec8409f89a9506e4bd6493ff..f955f97bd32474d7997ae50da122b729c73fa607 100644 (file)
@@ -365,6 +365,11 @@ class CrossSections extends SCPattern {
     addModulator(x).trigger();
     addModulator(y).trigger();
     addModulator(z).trigger();
+    addParams();
+  }
+  
+  public void addParams()
+  {
     addParameter(xr);
     addParameter(yr);
     addParameter(zr);    
@@ -375,8 +380,8 @@ class CrossSections extends SCPattern {
     addParameter(yw);    
     addParameter(zw);
   }
-  
-  void onParameterChanged(LXParameter p) {
+
+  public void onParameterChanged(LXParameter p) {
     if (p == xr) {
       x.setDuration(10000 - 8800*p.getValuef());
     } else if (p == yr) {
@@ -386,10 +391,19 @@ class CrossSections extends SCPattern {
     }
   }
 
+  float xv;
+  float yv;
+  float zv;  
+
+  public void updateXYZVals()
+  {
+    xv = x.getValuef();
+    yv = y.getValuef();
+    zv = z.getValuef(); 
+  }
+
   public void run(int deltaMs) {
-    float xv = x.getValuef();
-    float yv = y.getValuef();
-    float zv = z.getValuef();    
+    updateXYZVals();   
     float xlv = 100*xl.getValuef();
     float ylv = 100*yl.getValuef();
     float zlv = 100*zl.getValuef();
index 4222846297b84a95ad95d348dbaaf7ae1dde74c2..7a03248dfab9d113beca7404a9505afaad4e9b0f 100644 (file)
@@ -25,6 +25,7 @@
 
 LXPattern[] patterns(GLucose glucose) {
   return new LXPattern[] {
+    new DriveableCrossSections(glucose),
     new GranimTestPattern2(glucose),
     new GranimTestPattern(glucose),
     new Sandbox(glucose),