experimental buyancy fluid demo More...
#include <btHfFluid.h>
Classes | |
class | btHfFluidColumnCallback |
Public Member Functions | |
void | addDisplaced (int i, int j, btScalar r) |
void | addFluidHeight (int x, int y, btScalar height) |
int | arrayIndex (int i, int j) const |
int | arrayIndex (btScalar i, btScalar j) const |
int | arrayIndex (unsigned int i, unsigned int j) const |
btHfFluid (btScalar gridCellWidth, int numNodesWidth, int numNodesLength) | |
btHfFluid (btScalar gridCellWidth, int minX, int maxX, int minY, int maxY, int depth, int height) | |
void | foreachFluidColumn (btHfFluidColumnCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) |
void | foreachGroundTriangle (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) |
void | foreachSurfaceTriangle (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) |
virtual void | getAabb (btVector3 &aabbMin, btVector3 &aabbMax) const |
void | getAabbForColumn (int x, int y, btVector3 &aabbMin, btVector3 &aabbMax) |
const btScalar * | getEtaArray () const |
btScalar * | getEtaArray () |
const bool * | getFlagsArray () const |
bool * | getFlagsArray () |
void | getGlobalVelocity (btScalar &globalVelocityU, btScalar &globalVelocityV) const |
btScalar | getGravity () const |
btScalar | getGridCellWidth () const |
const btScalar * | getGroundArray () const |
btScalar * | getGroundArray () |
const btScalar * | getHeightArray () const |
btScalar * | getHeightArray () |
btScalar | getHorizontalVelocityScale () const |
int | getNumNodesLength () const |
int | getNumNodesWidth () const |
const btScalar * | getVelocityUArray () const |
btScalar * | getVelocityUArray () |
const btScalar * | getVelocityVArray () const |
btScalar * | getVelocityVArray () |
btScalar | getVolumeDisplacementScale () const |
btScalar | lengthPos (int j) const |
void | predictMotion (btScalar dt) |
void | prep () |
void | setFluidHeight (int x, int y, btScalar height) |
void | setFluidHeight (int index, btScalar height) |
void | setGlobaVelocity (btScalar globalVelocityU, btScalar globalVelocityV) |
void | setGravity (btScalar gravity) |
void | setHorizontalVelocityScale (btScalar horizontalVelocityScale) |
void | setVolumeDisplacementScale (btScalar volumeDisplacementScale) |
btScalar | widthPos (int i) const |
~btHfFluid () | |
Static Public Member Functions | |
static const btHfFluid * | upcast (const btCollisionObject *colObj) |
static btHfFluid * | upcast (btCollisionObject *colObj) |
Protected Member Functions | |
btScalar | advect (const btScalar *array, btScalar i, btScalar j, btScalar di, btScalar dj, btScalar dt) |
void | advectEta (btScalar dt) |
void | advectVelocityU (btScalar dt) |
void | advectVelocityV (btScalar dt) |
void | allocateArrays () |
btScalar | bilinearInterpolate (const btScalar *array, btScalar i, btScalar j) |
btScalar | computeEtaMax (int i, int j) |
void | computeFlagsAndFillRatio () |
btScalar | computeHmax (int i, int j) |
btScalar | computeHmin (int i, int j) |
void | debugTests () |
void | setAbsorbBoundaryBottom (btScalar dt) |
void | setAbsorbBoundaryLeft (btScalar dt) |
void | setAbsorbBoundaryRight (btScalar dt) |
void | setAbsorbBoundaryTop (btScalar dt) |
void | setGridDimensions (btScalar gridCellWidth, int numNodesWidth, int numNodesLength) |
void | setReflectBoundaryBottom () |
void | setReflectBoundaryLeft () |
void | setReflectBoundaryRight () |
void | setReflectBoundaryTop () |
void | transferDisplaced (btScalar dt) |
void | updateHeight (btScalar dt) |
void | updateVelocity (btScalar dt) |
Protected Attributes | |
btVector3 | m_aabbMax |
btVector3 | m_aabbMin |
btScalar | m_epsEta |
btScalar | m_epsHeight |
btScalar * | m_eta |
btScalar * | m_fillRatio |
bool * | m_flags |
btScalar | m_globalVelocityU |
btScalar | m_globalVelocityV |
btScalar | m_gravity |
btScalar | m_gridCellWidth |
btScalar | m_gridCellWidthInv |
btScalar | m_gridLength |
btScalar | m_gridWidth |
btScalar * | m_ground |
btScalar * | m_height [2] |
int | m_heightIndex |
btScalar | m_horizontalVelocityScale |
int | m_numNodesLength |
int | m_numNodesWidth |
btScalar * | m_r [2] |
int | m_rIndex |
btScalar * | m_temp |
btScalar * | m_u [2] |
btScalar * | m_v [2] |
int | m_velocityIndex |
btScalar | m_volumeDisplacementScale |
experimental buyancy fluid demo
Definition at line 35 of file btHfFluid.h.
btHfFluid::btHfFluid | ( | btScalar | gridCellWidth, |
int | numNodesWidth, | ||
int | numNodesLength | ||
) |
Definition at line 31 of file btHfFluid.cpp.
btHfFluid::btHfFluid | ( | btScalar | gridCellWidth, |
int | minX, | ||
int | maxX, | ||
int | minY, | ||
int | maxY, | ||
int | depth, | ||
int | height | ||
) |
Definition at line 69 of file btHfFluid.cpp.
Definition at line 107 of file btHfFluid.cpp.
void btHfFluid::addDisplaced | ( | int | i, |
int | j, | ||
btScalar | r | ||
) |
Definition at line 588 of file btHfFluid.cpp.
void btHfFluid::addFluidHeight | ( | int | x, |
int | y, | ||
btScalar | height | ||
) |
Definition at line 247 of file btHfFluid.cpp.
btScalar btHfFluid::advect | ( | const btScalar * | array, |
btScalar | i, | ||
btScalar | j, | ||
btScalar | di, | ||
btScalar | dj, | ||
btScalar | dt | ||
) | [protected] |
Definition at line 456 of file btHfFluid.cpp.
void btHfFluid::advectEta | ( | btScalar | dt | ) | [protected] |
Definition at line 472 of file btHfFluid.cpp.
void btHfFluid::advectVelocityU | ( | btScalar | dt | ) | [protected] |
Definition at line 523 of file btHfFluid.cpp.
void btHfFluid::advectVelocityV | ( | btScalar | dt | ) | [protected] |
Definition at line 556 of file btHfFluid.cpp.
void btHfFluid::allocateArrays | ( | ) | [protected] |
Definition at line 802 of file btHfFluid.cpp.
int btHfFluid::arrayIndex | ( | int | i, |
int | j | ||
) | const |
Definition at line 163 of file btHfFluid.cpp.
int btHfFluid::arrayIndex | ( | btScalar | i, |
btScalar | j | ||
) | const |
Definition at line 173 of file btHfFluid.cpp.
int btHfFluid::arrayIndex | ( | unsigned int | i, |
unsigned int | j | ||
) | const |
btScalar btHfFluid::bilinearInterpolate | ( | const btScalar * | array, |
btScalar | i, | ||
btScalar | j | ||
) | [protected] |
Definition at line 435 of file btHfFluid.cpp.
btScalar btHfFluid::computeEtaMax | ( | int | i, |
int | j | ||
) | [protected] |
Definition at line 785 of file btHfFluid.cpp.
void btHfFluid::computeFlagsAndFillRatio | ( | ) | [protected] |
Definition at line 721 of file btHfFluid.cpp.
btScalar btHfFluid::computeHmax | ( | int | i, |
int | j | ||
) | [protected] |
Definition at line 768 of file btHfFluid.cpp.
btScalar btHfFluid::computeHmin | ( | int | i, |
int | j | ||
) | [protected] |
Definition at line 751 of file btHfFluid.cpp.
void btHfFluid::debugTests | ( | ) | [protected] |
Definition at line 881 of file btHfFluid.cpp.
void btHfFluid::foreachFluidColumn | ( | btHfFluidColumnCallback * | callback, |
const btVector3 & | aabbMin, | ||
const btVector3 & | aabbMax | ||
) |
Definition at line 337 of file btHfFluid.cpp.
void btHfFluid::foreachGroundTriangle | ( | btTriangleCallback * | callback, |
const btVector3 & | aabbMin, | ||
const btVector3 & | aabbMax | ||
) |
Definition at line 273 of file btHfFluid.cpp.
void btHfFluid::foreachSurfaceTriangle | ( | btTriangleCallback * | callback, |
const btVector3 & | aabbMin, | ||
const btVector3 & | aabbMax | ||
) |
Definition at line 377 of file btHfFluid.cpp.
virtual void btHfFluid::getAabb | ( | btVector3 & | aabbMin, |
btVector3 & | aabbMax | ||
) | const [inline, virtual] |
Definition at line 67 of file btHfFluid.h.
void btHfFluid::getAabbForColumn | ( | int | x, |
int | y, | ||
btVector3 & | aabbMin, | ||
btVector3 & | aabbMax | ||
) |
Definition at line 255 of file btHfFluid.cpp.
const btScalar * btHfFluid::getEtaArray | ( | ) | const |
Definition at line 190 of file btHfFluid.cpp.
btScalar * btHfFluid::getEtaArray | ( | ) |
Definition at line 216 of file btHfFluid.cpp.
const bool * btHfFluid::getFlagsArray | ( | ) | const |
Definition at line 203 of file btHfFluid.cpp.
bool * btHfFluid::getFlagsArray | ( | ) |
Definition at line 229 of file btHfFluid.cpp.
void btHfFluid::getGlobalVelocity | ( | btScalar & | globalVelocityU, |
btScalar & | globalVelocityV | ||
) | const |
Definition at line 901 of file btHfFluid.cpp.
btScalar btHfFluid::getGravity | ( | ) | const |
Definition at line 913 of file btHfFluid.cpp.
btScalar btHfFluid::getGridCellWidth | ( | ) | const [inline] |
Definition at line 82 of file btHfFluid.h.
const btScalar * btHfFluid::getGroundArray | ( | ) | const |
Definition at line 186 of file btHfFluid.cpp.
btScalar * btHfFluid::getGroundArray | ( | ) |
Definition at line 212 of file btHfFluid.cpp.
const btScalar * btHfFluid::getHeightArray | ( | ) | const |
Definition at line 181 of file btHfFluid.cpp.
btScalar * btHfFluid::getHeightArray | ( | ) |
Definition at line 208 of file btHfFluid.cpp.
btScalar btHfFluid::getHorizontalVelocityScale | ( | ) | const |
Definition at line 941 of file btHfFluid.cpp.
int btHfFluid::getNumNodesLength | ( | ) | const [inline] |
Definition at line 77 of file btHfFluid.h.
int btHfFluid::getNumNodesWidth | ( | ) | const [inline] |
Definition at line 73 of file btHfFluid.h.
const btScalar * btHfFluid::getVelocityUArray | ( | ) | const |
Definition at line 194 of file btHfFluid.cpp.
btScalar * btHfFluid::getVelocityUArray | ( | ) |
Definition at line 220 of file btHfFluid.cpp.
const btScalar * btHfFluid::getVelocityVArray | ( | ) | const |
Definition at line 198 of file btHfFluid.cpp.
btScalar * btHfFluid::getVelocityVArray | ( | ) |
Definition at line 224 of file btHfFluid.cpp.
btScalar btHfFluid::getVolumeDisplacementScale | ( | ) | const |
Definition at line 927 of file btHfFluid.cpp.
btScalar btHfFluid::lengthPos | ( | int | j | ) | const |
Definition at line 158 of file btHfFluid.cpp.
void btHfFluid::predictMotion | ( | btScalar | dt | ) |
Definition at line 124 of file btHfFluid.cpp.
void btHfFluid::prep | ( | ) |
Definition at line 143 of file btHfFluid.cpp.
void btHfFluid::setAbsorbBoundaryBottom | ( | btScalar | dt | ) | [protected] |
Definition at line 717 of file btHfFluid.cpp.
void btHfFluid::setAbsorbBoundaryLeft | ( | btScalar | dt | ) | [protected] |
Definition at line 695 of file btHfFluid.cpp.
void btHfFluid::setAbsorbBoundaryRight | ( | btScalar | dt | ) | [protected] |
Definition at line 709 of file btHfFluid.cpp.
void btHfFluid::setAbsorbBoundaryTop | ( | btScalar | dt | ) | [protected] |
Definition at line 713 of file btHfFluid.cpp.
void btHfFluid::setFluidHeight | ( | int | x, |
int | y, | ||
btScalar | height | ||
) |
Definition at line 234 of file btHfFluid.cpp.
void btHfFluid::setFluidHeight | ( | int | index, |
btScalar | height | ||
) |
Definition at line 240 of file btHfFluid.cpp.
void btHfFluid::setGlobaVelocity | ( | btScalar | globalVelocityU, |
btScalar | globalVelocityV | ||
) |
Definition at line 895 of file btHfFluid.cpp.
void btHfFluid::setGravity | ( | btScalar | gravity | ) |
Definition at line 909 of file btHfFluid.cpp.
void btHfFluid::setGridDimensions | ( | btScalar | gridCellWidth, |
int | numNodesWidth, | ||
int | numNodesLength | ||
) | [protected] |
Definition at line 423 of file btHfFluid.cpp.
void btHfFluid::setHorizontalVelocityScale | ( | btScalar | horizontalVelocityScale | ) |
Definition at line 936 of file btHfFluid.cpp.
void btHfFluid::setReflectBoundaryBottom | ( | ) | [protected] |
Definition at line 671 of file btHfFluid.cpp.
void btHfFluid::setReflectBoundaryLeft | ( | ) | [protected] |
Definition at line 647 of file btHfFluid.cpp.
void btHfFluid::setReflectBoundaryRight | ( | ) | [protected] |
Definition at line 659 of file btHfFluid.cpp.
void btHfFluid::setReflectBoundaryTop | ( | ) | [protected] |
Definition at line 683 of file btHfFluid.cpp.
void btHfFluid::setVolumeDisplacementScale | ( | btScalar | volumeDisplacementScale | ) |
Definition at line 922 of file btHfFluid.cpp.
void btHfFluid::transferDisplaced | ( | btScalar | dt | ) | [protected] |
Definition at line 593 of file btHfFluid.cpp.
static const btHfFluid* btHfFluid::upcast | ( | const btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 50 of file btHfFluid.h.
static btHfFluid* btHfFluid::upcast | ( | btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 56 of file btHfFluid.h.
void btHfFluid::updateHeight | ( | btScalar | dt | ) | [protected] |
Definition at line 502 of file btHfFluid.cpp.
void btHfFluid::updateVelocity | ( | btScalar | dt | ) | [protected] |
Definition at line 616 of file btHfFluid.cpp.
btScalar btHfFluid::widthPos | ( | int | i | ) | const |
Definition at line 153 of file btHfFluid.cpp.
btVector3 btHfFluid::m_aabbMax [protected] |
Definition at line 146 of file btHfFluid.h.
btVector3 btHfFluid::m_aabbMin [protected] |
Definition at line 145 of file btHfFluid.h.
btScalar btHfFluid::m_epsEta [protected] |
Definition at line 203 of file btHfFluid.h.
btScalar btHfFluid::m_epsHeight [protected] |
Definition at line 202 of file btHfFluid.h.
btScalar* btHfFluid::m_eta [protected] |
Definition at line 186 of file btHfFluid.h.
btScalar* btHfFluid::m_fillRatio [protected] |
Definition at line 193 of file btHfFluid.h.
bool* btHfFluid::m_flags [protected] |
Definition at line 192 of file btHfFluid.h.
btScalar btHfFluid::m_globalVelocityU [protected] |
Definition at line 196 of file btHfFluid.h.
btScalar btHfFluid::m_globalVelocityV [protected] |
Definition at line 197 of file btHfFluid.h.
btScalar btHfFluid::m_gravity [protected] |
Definition at line 198 of file btHfFluid.h.
btScalar btHfFluid::m_gridCellWidth [protected] |
Definition at line 139 of file btHfFluid.h.
btScalar btHfFluid::m_gridCellWidthInv [protected] |
Definition at line 143 of file btHfFluid.h.
btScalar btHfFluid::m_gridLength [protected] |
Definition at line 141 of file btHfFluid.h.
btScalar btHfFluid::m_gridWidth [protected] |
Definition at line 140 of file btHfFluid.h.
btScalar* btHfFluid::m_ground [protected] |
Definition at line 185 of file btHfFluid.h.
btScalar* btHfFluid::m_height[2] [protected] |
Definition at line 184 of file btHfFluid.h.
int btHfFluid::m_heightIndex [protected] |
Definition at line 183 of file btHfFluid.h.
btScalar btHfFluid::m_horizontalVelocityScale [protected] |
Definition at line 200 of file btHfFluid.h.
int btHfFluid::m_numNodesLength [protected] |
Definition at line 137 of file btHfFluid.h.
int btHfFluid::m_numNodesWidth [protected] |
Definition at line 136 of file btHfFluid.h.
btScalar* btHfFluid::m_r[2] [protected] |
Definition at line 190 of file btHfFluid.h.
int btHfFluid::m_rIndex [protected] |
Definition at line 189 of file btHfFluid.h.
btScalar* btHfFluid::m_temp [protected] |
Definition at line 182 of file btHfFluid.h.
btScalar* btHfFluid::m_u[2] [protected] |
Definition at line 187 of file btHfFluid.h.
btScalar* btHfFluid::m_v[2] [protected] |
Definition at line 188 of file btHfFluid.h.
int btHfFluid::m_velocityIndex [protected] |
Definition at line 191 of file btHfFluid.h.
btScalar btHfFluid::m_volumeDisplacementScale [protected] |
Definition at line 199 of file btHfFluid.h.