![]() |
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.