front_processing/src/Smoke_manipulation/vbuffer.pde
changeset 8 e4e7db2435f8
child 9 0f44b7360c8d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/front_processing/src/Smoke_manipulation/vbuffer.pde	Thu Mar 22 16:00:17 2012 +0100
@@ -0,0 +1,34 @@
+/*
+* 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;
+    }
+  }
+}