Blender V2.61 - r43446
|
#include "elbeem.h"
#include "ntl_blenderdumper.h"
#include "ntl_world.h"
#include "ntl_geometrymodel.h"
Go to the source code of this file.
Defines | |
#define | SIMPLIFY_FLOAT_EPSILON (1e-6f) |
#define | SIMPLIFY_DOUBLE_EPSILON (1e-12f) |
#define | SFLOATEQ(x, y) (ABS((x)-(y)) < SIMPLIFY_FLOAT_EPSILON) |
#define | SDOUBLEEQ(x, y) (ABS((x)-(y)) < SIMPLIFY_DOUBLE_EPSILON) |
#define | SVECFLOATEQ(x, y) |
Functions | |
void | elbeemCheckDebugEnv (void) |
void | elbeemResetSettings (elbeemSimulationSettings *set) |
int | elbeemInit () |
int | elbeemFree () |
int | elbeemAddDomain (elbeemSimulationSettings *settings) |
void | elbeemGetErrorString (char *buffer) |
void | elbeemResetMesh (elbeemMesh *mesh) |
int | elbeemAddMesh (elbeemMesh *mesh) |
int | elbeemSimulate (void) |
int | elbeemContinueSimulation (void) |
int | elbeemSimplifyChannelFloat (float *channel, int *size) |
int | elbeemSimplifyChannelVec3 (float *channel, int *size) |
Variables | |
double | guiRoiSX = 0.0 |
double | guiRoiSY = 0.0 |
double | guiRoiSZ = 0.0 |
double | guiRoiEX = 1.0 |
double | guiRoiEY = 1.0 |
double | guiRoiEZ = 1.0 |
int | guiRoiMaxLev = 6 |
int | guiRoiMinLev = 0 |
ntlWorld * | gpWorld = NULL |
global raytracer pointer (=world) | |
int | globalMeshCounter = 1 |
vector< int > | gKeepVal |
Definition in file elbeem.cpp.
#define SDOUBLEEQ | ( | x, | |
y | |||
) | (ABS((x)-(y)) < SIMPLIFY_DOUBLE_EPSILON) |
Definition at line 319 of file elbeem.cpp.
#define SFLOATEQ | ( | x, | |
y | |||
) | (ABS((x)-(y)) < SIMPLIFY_FLOAT_EPSILON) |
Definition at line 318 of file elbeem.cpp.
Referenced by elbeemSimplifyChannelFloat().
#define SIMPLIFY_DOUBLE_EPSILON (1e-12f) |
Definition at line 317 of file elbeem.cpp.
#define SIMPLIFY_FLOAT_EPSILON (1e-6f) |
Definition at line 316 of file elbeem.cpp.
#define SVECFLOATEQ | ( | x, | |
y | |||
) |
( \ (ABS((x)[0]-(y)[0]) < SIMPLIFY_FLOAT_EPSILON) && \ (ABS((x)[1]-(y)[1]) < SIMPLIFY_FLOAT_EPSILON) && \ (ABS((x)[2]-(y)[2]) < SIMPLIFY_FLOAT_EPSILON) )
Definition at line 320 of file elbeem.cpp.
Referenced by elbeemSimplifyChannelVec3().
int elbeemAddDomain | ( | elbeemSimulationSettings * | settings | ) |
Definition at line 111 of file elbeem.cpp.
References ntlWorld::addDomain(), elbeemInit(), errFatal, getElbeemState(), SIMWORLD_INITERROR, SIMWORLD_INITIALIZING, and SIMWORLD_INVALID.
int elbeemAddMesh | ( | elbeemMesh * | mesh | ) |
Definition at line 191 of file elbeem.cpp.
References ntlScene::addGeoClass(), elbeemMesh::channelActive, elbeemMesh::channelAttractforceRadius, elbeemMesh::channelAttractforceStrength, elbeemMesh::channelInitialVel, elbeemMesh::channelRotation, elbeemMesh::channelScale, elbeemMesh::channelSizeActive, elbeemMesh::channelSizeAttractforceRadius, elbeemMesh::channelSizeAttractforceStrength, elbeemMesh::channelSizeInitialVel, elbeemMesh::channelSizeRotation, elbeemMesh::channelSizeScale, elbeemMesh::channelSizeTranslation, elbeemMesh::channelSizeVelocityforceRadius, elbeemMesh::channelSizeVelocityforceStrength, elbeemMesh::channelSizeVertices, elbeemMesh::channelTranslation, elbeemMesh::channelVelocityforceRadius, elbeemMesh::channelVelocityforceStrength, elbeemMesh::channelVertices, elbeemMesh::cpsQuality, elbeemMesh::cpsTimeEnd, elbeemMesh::cpsTimeStart, debMsgStd, DM_MSG, errFatal, FGI_BNDFREE, FGI_BNDNO, FGI_BNDPART, FGI_CONTROL, FGI_FLUID, FGI_MBNDINFLOW, FGI_MBNDOUTFLOW, FLUIDSIM_OBSTACLE_FREESLIP, FLUIDSIM_OBSTACLE_PARTSLIP, getElbeemState(), ntlGeometryObject::getIsAnimated(), ntlGeometryClass::getName(), ntlWorld::getRenderGlobals(), ntlRenderGlobals::getRenderScene(), ntlRenderGlobals::getSimScene(), globalMeshCounter, ntlGeometryObject::initChannels(), ntlGeometryObjModel::initModel(), elbeemMesh::localInivelCoords, elbeemMesh::name, elbeemMesh::numTriangles, elbeemMesh::numVertices, OB_FLUIDSIM_CONTROL, OB_FLUIDSIM_FLUID, OB_FLUIDSIM_INFLOW, OB_FLUIDSIM_OBSTACLE, OB_FLUIDSIM_OUTFLOW, elbeemMesh::obstacleImpactFactor, elbeemMesh::obstaclePartslip, elbeemMesh::obstacleType, elbeemMesh::parentDomainId, ntlGeometryObject::setCpsQuality(), ntlGeometryObject::setCpsTimeEnd(), ntlGeometryObject::setCpsTimeStart(), ntlGeometryObject::setGeoImpactFactor(), ntlGeometryClass::setGeoInitId(), ntlGeometryObject::setGeoInitIntersect(), ntlGeometryObject::setGeoInitType(), ntlGeometryObject::setGeoPartSlipValue(), ntlGeometryObject::setLocalCoordInivel(), ntlGeometryClass::setName(), ntlGeometryObject::setVolumeInit(), SIMWORLD_INITERROR, SIMWORLD_INITIALIZING, elbeemMesh::triangles, elbeemMesh::type, elbeemMesh::vertices, VOLUMEINIT_BOTH, VOLUMEINIT_VOLUME, and elbeemMesh::volumeInitType.
void elbeemCheckDebugEnv | ( | void | ) |
Definition at line 435 of file utilities.cpp.
References debMsgStd, DM_NOTIFY, gDebugLevel, and globalFirstEnvCheck.
Referenced by elbeemDebugOut(), and elbeemInit().
int elbeemContinueSimulation | ( | void | ) |
Definition at line 289 of file elbeem.cpp.
References debMsgStd, DM_NOTIFY, errMsg, getElbeemState(), getTime(), getTimeString(), gpWorld, NULL, ntlWorld::renderAnimation(), and SIMWORLD_STOP.
int elbeemFree | ( | void | ) |
Definition at line 104 of file elbeem.cpp.
void elbeemGetErrorString | ( | char * | buffer | ) |
Definition at line 122 of file elbeem.cpp.
References getElbeemErrorString().
int elbeemInit | ( | void | ) |
Definition at line 88 of file elbeem.cpp.
References debMsgStd, DM_NOTIFY, elbeemCheckDebugEnv(), gDebugLevel, resetGlobalColorSetting(), setElbeemErrorString(), setElbeemState(), and SIMWORLD_INITIALIZING.
Referenced by elbeemAddDomain().
void elbeemResetMesh | ( | elbeemMesh * | mesh | ) |
Definition at line 129 of file elbeem.cpp.
References elbeemMesh::channelActive, elbeemMesh::channelAttractforceRadius, elbeemMesh::channelAttractforceStrength, elbeemMesh::channelInitialVel, elbeemMesh::channelRotation, elbeemMesh::channelScale, elbeemMesh::channelSizeActive, elbeemMesh::channelSizeAttractforceRadius, elbeemMesh::channelSizeAttractforceStrength, elbeemMesh::channelSizeInitialVel, elbeemMesh::channelSizeRotation, elbeemMesh::channelSizeScale, elbeemMesh::channelSizeTranslation, elbeemMesh::channelSizeVelocityforceRadius, elbeemMesh::channelSizeVelocityforceStrength, elbeemMesh::channelSizeVertices, elbeemMesh::channelTranslation, elbeemMesh::channelVelocityforceRadius, elbeemMesh::channelVelocityforceStrength, elbeemMesh::channelVertices, elbeemMesh::cpsQuality, elbeemMesh::cpsTimeEnd, elbeemMesh::cpsTimeStart, FLUIDSIM_OBSTACLE_NOSLIP, elbeemMesh::localInivelCoords, elbeemMesh::name, NULL, elbeemMesh::numTriangles, elbeemMesh::numVertices, OB_VOLUMEINIT_VOLUME, elbeemMesh::obstacleImpactFactor, elbeemMesh::obstaclePartslip, elbeemMesh::obstacleType, elbeemMesh::parentDomainId, elbeemMesh::triangles, elbeemMesh::type, elbeemMesh::vertices, and elbeemMesh::volumeInitType.
void elbeemResetSettings | ( | elbeemSimulationSettings * | set | ) |
Definition at line 41 of file elbeem.cpp.
References FLUIDSIM_OBSTACLE_NOSLIP, i, and NULL.
int elbeemSimplifyChannelFloat | ( | float * | channel, |
int * | size | ||
) |
Definition at line 327 of file elbeem.cpp.
References errMsg, gKeepVal, i, next, SFLOATEQ, and size().
Referenced by channelSimplifyScalarT().
int elbeemSimplifyChannelVec3 | ( | float * | channel, |
int * | size | ||
) |
Definition at line 375 of file elbeem.cpp.
References errMsg, gKeepVal, i, next, size(), and SVECFLOATEQ.
Referenced by channelSimplifyVecT().
int elbeemSimulate | ( | void | ) |
Definition at line 261 of file elbeem.cpp.
References debMsgStd, DM_NOTIFY, ntlWorld::finishWorldInit(), getElbeemState(), getTime(), getTimeString(), gpWorld, isSimworldOk(), NULL, ntlWorld::renderAnimation(), and SIMWORLD_STOP.
vector<int> gKeepVal |
Definition at line 314 of file elbeem.cpp.
Referenced by elbeemSimplifyChannelFloat(), and elbeemSimplifyChannelVec3().
int globalMeshCounter = 1 |
Definition at line 188 of file elbeem.cpp.
Referenced by elbeemAddMesh().
global raytracer pointer (=world)
Definition at line 33 of file elbeem.cpp.
Referenced by elbeemContinueSimulation(), and elbeemSimulate().
double guiRoiEX = 1.0 |
Definition at line 27 of file elbeem.cpp.
double guiRoiEY = 1.0 |
Definition at line 28 of file elbeem.cpp.
double guiRoiEZ = 1.0 |
Definition at line 29 of file elbeem.cpp.
int guiRoiMaxLev = 6 |
Definition at line 30 of file elbeem.cpp.
Referenced by LbmFsgrSolver::advanceCell(), and LbmFsgrSolver::getFirstCell().
int guiRoiMinLev = 0 |
Definition at line 30 of file elbeem.cpp.
Referenced by LbmFsgrSolver::advanceCell().
double guiRoiSX = 0.0 |
Definition at line 24 of file elbeem.cpp.
double guiRoiSY = 0.0 |
Definition at line 25 of file elbeem.cpp.
double guiRoiSZ = 0.0 |
Definition at line 26 of file elbeem.cpp.