front_processing/src/Smoke_manipulation/vbuffer.pde
author bastiena
Wed, 30 May 2012 10:21:36 +0200
changeset 35 4267d6d27a7d
parent 27 6c08d4d7219e
permissions -rw-r--r--
Front IDILL : Config file added dor the Front Random play at the beginning (when no user is detected) Pointers added Curves added (search and filter modes) Mosaic completion added (depletion to come later) State of the Front : just before the communication module creation
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10
925b7ee746e3 Front Processing :
bastiena
parents: 9
diff changeset
     1
/*
8
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     2
* This file is part of the TraKERS\Front Processing package.
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     3
*
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     4
* (c) IRI <http://www.iri.centrepompidou.fr/>
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     5
*
27
6c08d4d7219e Middleware :
bastiena
parents: 10
diff changeset
     6
* For the full copyright and license information, please view the LICENSE
8
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     7
* file that was distributed with this source code.
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     8
*/
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
     9
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    10
class vbuffer
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    11
{
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    12
  int x;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    13
  int y;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    14
  float xvel;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    15
  float yvel;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    16
  float pressurex = 0;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    17
  float pressurey = 0;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    18
  float pressure = 0;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    19
  
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    20
  vbuffer(int xIn,int yIn) {
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    21
    x = xIn;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    22
    y = yIn;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    23
    pressurex = 0;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    24
    pressurey = 0;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    25
  }
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    26
  
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    27
  void updatebuf(int i, int u) {
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    28
    if(i>0 && i<lwidth && u>0 && u<lheight) {
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    29
      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);
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    30
      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);
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    31
      pressure = (pressurex + pressurey)*0.25;
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    32
    }
e4e7db2435f8 Processing:
bastiena
parents:
diff changeset
    33
  }
9
0f44b7360c8d Installer updated
bastiena
parents: 8
diff changeset
    34
}