Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Susano Pinto <andresusanopinto@gmail.com>2008-09-26 22:53:26 +0400
committerAndre Susano Pinto <andresusanopinto@gmail.com>2008-09-26 22:53:26 +0400
commitdb90946d82d32bead6252f8bdc86b9daa5f45f07 (patch)
treed5b3f252d04334554d27aa8094f7669d230fce67 /intern/elbeem/intern/elbeem_control.h
parentb542721f329304f2dc582436b3a5de92dc045956 (diff)
svn merge -r 16608:16749 https://svn.blender.org/svnroot/bf-blender/trunk/blendersoc-2008-jaguarandi
Diffstat (limited to 'intern/elbeem/intern/elbeem_control.h')
-rw-r--r--intern/elbeem/intern/elbeem_control.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/intern/elbeem/intern/elbeem_control.h b/intern/elbeem/intern/elbeem_control.h
new file mode 100644
index 00000000000..70a58feda89
--- /dev/null
+++ b/intern/elbeem/intern/elbeem_control.h
@@ -0,0 +1,62 @@
+/******************************************************************************
+ *
+ * El'Beem - Free Surface Fluid Simulation with the Lattice Boltzmann Method
+ * All code distributed as part of El'Beem is covered by the version 2 of the
+ * GNU General Public License. See the file COPYING for details.
+ * Copyright 2003-2006 Nils Thuerey
+ *
+ * Control API header
+ */
+#ifndef ELBEEMCONTROL_API_H
+#define ELBEEMCONTROL_API_H
+
+// a single control particle set
+typedef struct elbeemControl {
+ /* influence forces */
+ float influenceAttraction;
+ float *channelInfluenceAttraction;
+ float channelSizeInfluenceAttraction;
+
+ float influenceVelocity;
+ float *channelInfluenceVelocity;
+ float channelSizeInfluenceVelocity;
+
+ float influenceMaxdist;
+ float *channelInfluenceMaxdist;
+ float channelSizeInfluenceMaxdist;
+
+ /* influence force radii */
+ float radiusAttraction;
+ float *channelRadiusAttraction;
+ float channelSizeRadiusAttraction;
+
+ float radiusVelocity;
+ float *channelRadiusVelocity;
+ float channelSizeRadiusVelocity;
+
+ float radiusMindist;
+ float *channelRadiusMindist;
+ float channelSizeRadiusMindist;
+ float radiusMaxdist;
+ float *channelRadiusMaxdist;
+ float channelSizeRadiusMaxdist;
+
+ /* control particle positions/scale */
+ float offset[3];
+ float *channelOffset;
+ float channelSizeOffset;
+
+ float scale[3];
+ float *channelScale;
+ float channelSizeScale;
+
+} elbeemControl;
+
+
+// add mesh as fluidsim object
+int elbeemControlAddSet(struct elbeemControl*);
+
+// sample & track mesh control particles, TODO add return type...
+int elbeemControlComputeMesh(struct elbeemMesh*);
+
+#endif // ELBEEMCONTROL_API_H