front_processing/src/Fluid_manipulation/vbuffer.pde
changeset 8 e4e7db2435f8
child 9 0f44b7360c8d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/front_processing/src/Fluid_manipulation/vbuffer.pde	Thu Mar 22 16:00:17 2012 +0100
@@ -0,0 +1,37 @@
+/*
+* This file is part of the TraKERS\Front Processing package.
+*
+* (c) IRI <http://www.iri.centrepompidou.fr/>
+*
+* For the full copyright and license information, please view the LICENSE_FRONT
+* file that was distributed with this source code.
+*/
+
+class vbuffer
+{
+    int x;
+    int y;
+    float xvel;
+    float yvel;
+    float pressurex = 0;
+    float pressurey = 0;
+    float pressure = 0;
+
+    vbuffer(int xIn,int yIn)
+    {
+        x = xIn;
+        y = yIn;
+        pressurex = 0;
+        pressurey = 0;
+    }
+
+    void updatebuf(int i, int u)
+    {
+        if(i>0 && i<lwidth && u>0 && u<lheight)
+        {
+            pressurex = (v[i-1][u-1].xvel*0.5 + v[i-1][u].xvel + v[i-1][u+1].xvel*0.5 - v[i+1][u-1].xvel*0.5 - v[i+1][u].xvel - v[i+1][u+1].xvel*0.5);
+            pressurey = (v[i-1][u-1].yvel*0.5 + v[i][u-1].yvel + v[i+1][u-1].yvel*0.5 - v[i-1][u+1].yvel*0.5 - v[i][u+1].yvel - v[i+1][u+1].yvel*0.5);
+            pressure = (pressurex + pressurey)*0.25;
+        }
+    }
+}