Blender V2.61 - r43446
|
#include <btSoftBody.h>
Classes | |
struct | AJoint |
struct | Anchor |
struct | Body |
struct | CJoint |
struct | Cluster |
struct | Config |
struct | eAeroModel |
eAeroModel More... | |
struct | eFeature |
eFeature More... | |
struct | Element |
struct | ePSolver |
ePSolver : positions solvers More... | |
struct | eSolverPresets |
eSolverPresets More... | |
struct | eVSolver |
eVSolver : velocities solvers More... | |
struct | Face |
struct | fCollision |
fCollision More... | |
struct | Feature |
struct | fMaterial |
fMaterial More... | |
struct | ImplicitFn |
struct | Impulse |
struct | Joint |
struct | Link |
struct | LJoint |
struct | Material |
struct | Node |
struct | Note |
struct | Pose |
struct | RayFromToCaster |
RayFromToCaster takes a ray from, ray to (instead of direction!) More... | |
struct | RContact |
struct | SContact |
struct | sCti |
struct | sMedium |
struct | SolverState |
struct | sRayCast |
struct | Tetra |
Public Types | |
typedef btAlignedObjectArray < eVSolver::_ > | tVSolverArray |
typedef btAlignedObjectArray < ePSolver::_ > | tPSolverArray |
typedef btAlignedObjectArray < btScalar > | tScalarArray |
typedef btAlignedObjectArray < btVector3 > | tVector3Array |
typedef void(* | psolver_t )(btSoftBody *, btScalar, btScalar) |
typedef void(* | vsolver_t )(btSoftBody *, btScalar) |
typedef btAlignedObjectArray < Cluster * > | tClusterArray |
typedef btAlignedObjectArray < Note > | tNoteArray |
typedef btAlignedObjectArray < Node > | tNodeArray |
typedef btAlignedObjectArray < btDbvtNode * > | tLeafArray |
typedef btAlignedObjectArray < Link > | tLinkArray |
typedef btAlignedObjectArray < Face > | tFaceArray |
typedef btAlignedObjectArray < Tetra > | tTetraArray |
typedef btAlignedObjectArray < Anchor > | tAnchorArray |
typedef btAlignedObjectArray < RContact > | tRContactArray |
typedef btAlignedObjectArray < SContact > | tSContactArray |
typedef btAlignedObjectArray < Material * > | tMaterialArray |
typedef btAlignedObjectArray < Joint * > | tJointArray |
typedef btAlignedObjectArray < btSoftBody * > | tSoftBodyArray |
Public Member Functions | |
btSoftBody (btSoftBodyWorldInfo *worldInfo, int node_count, const btVector3 *x, const btScalar *m) | |
btSoftBody implementation by Nathanael Presson | |
btSoftBody (btSoftBodyWorldInfo *worldInfo) | |
void | initDefaults () |
virtual | ~btSoftBody () |
btSoftBodyWorldInfo * | getWorldInfo () |
virtual void | setCollisionShape (btCollisionShape *collisionShape) |
bool | checkLink (int node0, int node1) const |
bool | checkLink (const Node *node0, const Node *node1) const |
bool | checkFace (int node0, int node1, int node2) const |
Material * | appendMaterial () |
void | appendNote (const char *text, const btVector3 &o, const btVector4 &c=btVector4(1, 0, 0, 0), Node *n0=0, Node *n1=0, Node *n2=0, Node *n3=0) |
void | appendNote (const char *text, const btVector3 &o, Node *feature) |
void | appendNote (const char *text, const btVector3 &o, Link *feature) |
void | appendNote (const char *text, const btVector3 &o, Face *feature) |
void | appendNode (const btVector3 &x, btScalar m) |
void | appendLink (int model=-1, Material *mat=0) |
void | appendLink (int node0, int node1, Material *mat=0, bool bcheckexist=false) |
void | appendLink (Node *node0, Node *node1, Material *mat=0, bool bcheckexist=false) |
void | appendFace (int model=-1, Material *mat=0) |
void | appendFace (int node0, int node1, int node2, Material *mat=0) |
void | appendTetra (int model, Material *mat) |
void | appendTetra (int node0, int node1, int node2, int node3, Material *mat=0) |
void | appendAnchor (int node, btRigidBody *body, bool disableCollisionBetweenLinkedBodies=false) |
void | appendAnchor (int node, btRigidBody *body, const btVector3 &localPivot, bool disableCollisionBetweenLinkedBodies=false) |
void | appendLinearJoint (const LJoint::Specs &specs, Cluster *body0, Body body1) |
void | appendLinearJoint (const LJoint::Specs &specs, Body body=Body()) |
void | appendLinearJoint (const LJoint::Specs &specs, btSoftBody *body) |
void | appendAngularJoint (const AJoint::Specs &specs, Cluster *body0, Body body1) |
void | appendAngularJoint (const AJoint::Specs &specs, Body body=Body()) |
void | appendAngularJoint (const AJoint::Specs &specs, btSoftBody *body) |
void | addForce (const btVector3 &force) |
void | addForce (const btVector3 &force, int node) |
void | addVelocity (const btVector3 &velocity) |
void | setVelocity (const btVector3 &velocity) |
void | addVelocity (const btVector3 &velocity, int node) |
void | setMass (int node, btScalar mass) |
btScalar | getMass (int node) const |
btScalar | getTotalMass () const |
void | setTotalMass (btScalar mass, bool fromfaces=false) |
void | setTotalDensity (btScalar density) |
void | setVolumeMass (btScalar mass) |
void | setVolumeDensity (btScalar density) |
void | transform (const btTransform &trs) |
void | translate (const btVector3 &trs) |
void | rotate (const btQuaternion &rot) |
void | scale (const btVector3 &scl) |
void | setPose (bool bvolume, bool bframe) |
btScalar | getVolume () const |
int | clusterCount () const |
btVector3 | clusterCom (int cluster) const |
int | generateBendingConstraints (int distance, Material *mat=0) |
void | randomizeConstraints () |
void | releaseCluster (int index) |
void | releaseClusters () |
int | generateClusters (int k, int maxiterations=8192) |
void | refine (ImplicitFn *ifn, btScalar accurary, bool cut) |
bool | cutLink (int node0, int node1, btScalar position) |
bool | cutLink (const Node *node0, const Node *node1, btScalar position) |
bool | rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, sRayCast &results) |
Ray casting using rayFrom and rayTo in worldspace, (not direction!) | |
void | setSolver (eSolverPresets::_ preset) |
void | predictMotion (btScalar dt) |
void | solveConstraints () |
void | staticSolve (int iterations) |
void | integrateMotion () |
void | defaultCollisionHandler (btCollisionObject *pco) |
void | defaultCollisionHandler (btSoftBody *psb) |
void | setWindVelocity (const btVector3 &velocity) |
const btVector3 & | getWindVelocity () |
void | setSoftBodySolver (btSoftBodySolver *softBodySolver) |
btSoftBodySolver * | getSoftBodySolver () |
btSoftBodySolver * | getSoftBodySolver () const |
virtual void | getAabb (btVector3 &aabbMin, btVector3 &aabbMax) const |
void | pointersToIndices () |
void | indicesToPointers (const int *map=0) |
int | rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, btScalar &mint, eFeature::_ &feature, int &index, bool bcountonly) const |
void | initializeFaceTree () |
btVector3 | evaluateCom () const |
bool | checkContact (btCollisionObject *colObj, const btVector3 &x, btScalar margin, btSoftBody::sCti &cti) const |
void | updateNormals () |
void | updateBounds () |
void | updatePose () |
void | updateConstants () |
void | initializeClusters () |
void | updateClusters () |
void | cleanupClusters () |
void | prepareClusters (int iterations) |
void | solveClusters (btScalar sor) |
void | applyClusters (bool drift) |
void | dampClusters () |
void | applyForces () |
virtual int | calculateSerializeBufferSize () const |
virtual const char * | serialize (void *dataBuffer, class btSerializer *serializer) const |
fills the dataBuffer and returns the struct name (and 0 on failure) | |
Static Public Member Functions | |
static btVector3 | clusterCom (const Cluster *cluster) |
static btVector3 | clusterVelocity (const Cluster *cluster, const btVector3 &rpos) |
static void | clusterVImpulse (Cluster *cluster, const btVector3 &rpos, const btVector3 &impulse) |
static void | clusterDImpulse (Cluster *cluster, const btVector3 &rpos, const btVector3 &impulse) |
static void | clusterImpulse (Cluster *cluster, const btVector3 &rpos, const Impulse &impulse) |
static void | clusterVAImpulse (Cluster *cluster, const btVector3 &impulse) |
static void | clusterDAImpulse (Cluster *cluster, const btVector3 &impulse) |
static void | clusterAImpulse (Cluster *cluster, const Impulse &impulse) |
static void | clusterDCImpulse (Cluster *cluster, const btVector3 &impulse) |
static void | solveCommonConstraints (btSoftBody **bodies, int count, int iterations) |
static void | solveClusters (const btAlignedObjectArray< btSoftBody * > &bodies) |
static const btSoftBody * | upcast (const btCollisionObject *colObj) |
static btSoftBody * | upcast (btCollisionObject *colObj) |
static void | PSolve_Anchors (btSoftBody *psb, btScalar kst, btScalar ti) |
static void | PSolve_RContacts (btSoftBody *psb, btScalar kst, btScalar ti) |
static void | PSolve_SContacts (btSoftBody *psb, btScalar, btScalar ti) |
static void | PSolve_Links (btSoftBody *psb, btScalar kst, btScalar ti) |
static void | VSolve_Links (btSoftBody *psb, btScalar kst) |
static psolver_t | getSolver (ePSolver::_ solver) |
static vsolver_t | getSolver (eVSolver::_ solver) |
Public Attributes | |
btAlignedObjectArray< class btCollisionObject * > | m_collisionDisabledObjects |
btSoftBodySolver * | m_softBodySolver |
Config | m_cfg |
SolverState | m_sst |
Pose | m_pose |
void * | m_tag |
btSoftBodyWorldInfo * | m_worldInfo |
tNoteArray | m_notes |
tNodeArray | m_nodes |
tLinkArray | m_links |
tFaceArray | m_faces |
tTetraArray | m_tetras |
tAnchorArray | m_anchors |
tRContactArray | m_rcontacts |
tSContactArray | m_scontacts |
tJointArray | m_joints |
tMaterialArray | m_materials |
btScalar | m_timeacc |
btVector3 | m_bounds [2] |
bool | m_bUpdateRtCst |
btDbvt | m_ndbvt |
btDbvt | m_fdbvt |
btDbvt | m_cdbvt |
tClusterArray | m_clusters |
btAlignedObjectArray< bool > | m_clusterConnectivity |
btTransform | m_initialWorldTransform |
btVector3 | m_windVelocity |
btAlignedObjectArray< int > | m_userIndexMapping |
The btSoftBody is an class to simulate cloth and volumetric soft bodies. There is two-way interaction between btSoftBody and btRigidBody/btCollisionObject.
Definition at line 69 of file btSoftBody.h.
typedef void(* btSoftBody::psolver_t)(btSoftBody *, btScalar, btScalar) |
Definition at line 622 of file btSoftBody.h.
Definition at line 631 of file btSoftBody.h.
Definition at line 624 of file btSoftBody.h.
Definition at line 629 of file btSoftBody.h.
typedef btAlignedObjectArray<Joint*> btSoftBody::tJointArray |
Definition at line 635 of file btSoftBody.h.
Definition at line 627 of file btSoftBody.h.
Definition at line 628 of file btSoftBody.h.
Definition at line 634 of file btSoftBody.h.
Definition at line 626 of file btSoftBody.h.
Definition at line 625 of file btSoftBody.h.
Definition at line 124 of file btSoftBody.h.
Definition at line 632 of file btSoftBody.h.
Definition at line 176 of file btSoftBody.h.
Definition at line 633 of file btSoftBody.h.
Definition at line 636 of file btSoftBody.h.
Definition at line 630 of file btSoftBody.h.
typedef btAlignedObjectArray<btVector3> btSoftBody::tVector3Array |
Definition at line 177 of file btSoftBody.h.
Definition at line 123 of file btSoftBody.h.
typedef void(* btSoftBody::vsolver_t)(btSoftBody *, btScalar) |
Definition at line 623 of file btSoftBody.h.
btSoftBody::btSoftBody | ( | btSoftBodyWorldInfo * | worldInfo, |
int | node_count, | ||
const btVector3 * | x, | ||
const btScalar * | m | ||
) |
btSoftBody implementation by Nathanael Presson
Definition at line 23 of file btSoftBody.cpp.
References appendMaterial(), btSoftBody::fMaterial::Default, btDbvtAabbMm::FromCR(), i, initDefaults(), btDbvt::insert(), btSoftBody::Material::m_flags, btSoftBody::Node::m_im, btSoftBody::Material::m_kAST, btSoftBody::Material::m_kLST, btSoftBody::Material::m_kVST, btSoftBody::Node::m_leaf, btSoftBody::Feature::m_material, m_ndbvt, m_nodes, btSoftBody::Node::m_q, btSoftBody::Node::m_x, btAlignedObjectArray< T >::resize(), updateBounds(), and ZeroInitialize().
btSoftBody::btSoftBody | ( | btSoftBodyWorldInfo * | worldInfo | ) |
Definition at line 54 of file btSoftBody.cpp.
References initDefaults().
btSoftBody::~btSoftBody | ( | ) | [virtual] |
Definition at line 116 of file btSoftBody.cpp.
References btAlignedFree, i, m_joints, m_materials, releaseClusters(), and btAlignedObjectArray< T >::size().
void btSoftBody::addForce | ( | const btVector3 & | force | ) |
Definition at line 439 of file btSoftBody.cpp.
References i, m_nodes, and btAlignedObjectArray< T >::size().
Referenced by CcdPhysicsController::ApplyForce().
void btSoftBody::addForce | ( | const btVector3 & | force, |
int | node | ||
) |
Definition at line 445 of file btSoftBody.cpp.
References btSoftBody::Node::m_f, btSoftBody::Node::m_im, and m_nodes.
void btSoftBody::addVelocity | ( | const btVector3 & | velocity, |
int | node | ||
) |
Definition at line 475 of file btSoftBody.cpp.
References btSoftBody::Node::m_im, m_nodes, and btSoftBody::Node::m_v.
void btSoftBody::addVelocity | ( | const btVector3 & | velocity | ) |
Definition at line 455 of file btSoftBody.cpp.
References i, m_nodes, and btAlignedObjectArray< T >::size().
Referenced by predictMotion().
void btSoftBody::appendAnchor | ( | int | node, |
btRigidBody * | body, | ||
const btVector3 & | localPivot, | ||
bool | disableCollisionBetweenLinkedBodies = false |
||
) |
Definition at line 367 of file btSoftBody.cpp.
References btAlignedObjectArray< T >::findLinearSearch(), m_anchors, btSoftBody::Node::m_battach, btSoftBody::Anchor::m_body, m_collisionDisabledObjects, btSoftBody::Anchor::m_local, btSoftBody::Anchor::m_node, m_nodes, btAlignedObjectArray< T >::push_back(), and btAlignedObjectArray< T >::size().
void btSoftBody::appendAnchor | ( | int | node, |
btRigidBody * | body, | ||
bool | disableCollisionBetweenLinkedBodies = false |
||
) |
Definition at line 360 of file btSoftBody.cpp.
References m_nodes.
Referenced by CcdPhysicsEnvironment::createConstraint().
void btSoftBody::appendAngularJoint | ( | const AJoint::Specs & | specs, |
Body | body = Body() |
||
) |
Definition at line 427 of file btSoftBody.cpp.
References appendAngularJoint(), and m_clusters.
void btSoftBody::appendAngularJoint | ( | const AJoint::Specs & | specs, |
btSoftBody * | body | ||
) |
Definition at line 433 of file btSoftBody.cpp.
References appendAngularJoint(), and m_clusters.
void btSoftBody::appendAngularJoint | ( | const AJoint::Specs & | specs, |
Cluster * | body0, | ||
Body | body1 | ||
) |
Definition at line 412 of file btSoftBody.cpp.
References btSoftBody::AJoint::Specs::axis, btAlignedAlloc, btSoftBody::Joint::Specs::cfm, btSoftBody::Joint::Specs::erp, btTransform::getBasis(), btSoftBody::AJoint::Specs::icontrol, btTransform::inverse(), btSoftBody::Joint::m_bodies, btSoftBody::Joint::m_cfm, btSoftBody::Joint::m_erp, btSoftBody::AJoint::m_icontrol, m_joints, btSoftBody::Joint::m_refs, btSoftBody::Joint::m_split, btAlignedObjectArray< T >::push_back(), btSoftBody::Joint::Specs::split, and btSoftBody::Body::xform().
Referenced by appendAngularJoint().
void btSoftBody::appendFace | ( | int | model = -1 , |
Material * | mat = 0 |
||
) |
Definition at line 296 of file btSoftBody.cpp.
References m_faces, btSoftBody::Feature::m_material, m_materials, btAlignedObjectArray< T >::push_back(), and ZeroInitialize().
Referenced by appendFace(), btSoftBodyHelpers::CreateFromConvexHull(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromTriMesh(), btSoftBodyHelpers::CreatePatch(), btSoftBodyHelpers::CreatePatchUV(), CcdPhysicsController::CreateSoftbody(), cutLink(), and refine().
void btSoftBody::appendFace | ( | int | node0, |
int | node1, | ||
int | node2, | ||
Material * | mat = 0 |
||
) |
Definition at line 307 of file btSoftBody.cpp.
References appendFace(), AreaOf(), btAssert, m_bUpdateRtCst, m_faces, btSoftBody::Face::m_n, m_nodes, btSoftBody::Face::m_ra, btSoftBody::Node::m_x, and btAlignedObjectArray< T >::size().
void btSoftBody::appendLinearJoint | ( | const LJoint::Specs & | specs, |
Cluster * | body0, | ||
Body | body1 | ||
) |
Definition at line 386 of file btSoftBody.cpp.
References btAlignedAlloc, btSoftBody::Joint::Specs::cfm, btSoftBody::Joint::Specs::erp, btTransform::inverse(), btSoftBody::Joint::m_bodies, btSoftBody::Joint::m_cfm, btSoftBody::Joint::m_erp, m_joints, btSoftBody::Joint::m_refs, btSoftBody::Joint::m_split, btSoftBody::LJoint::Specs::position, btAlignedObjectArray< T >::push_back(), btSoftBody::Joint::Specs::split, and btSoftBody::Body::xform().
Referenced by appendLinearJoint().
void btSoftBody::appendLinearJoint | ( | const LJoint::Specs & | specs, |
Body | body = Body() |
||
) |
Definition at line 400 of file btSoftBody.cpp.
References appendLinearJoint(), and m_clusters.
void btSoftBody::appendLinearJoint | ( | const LJoint::Specs & | specs, |
btSoftBody * | body | ||
) |
Definition at line 406 of file btSoftBody.cpp.
References appendLinearJoint(), and m_clusters.
void btSoftBody::appendLink | ( | int | model = -1 , |
Material * | mat = 0 |
||
) |
Definition at line 259 of file btSoftBody.cpp.
References m_links, btSoftBody::Feature::m_material, m_materials, btAlignedObjectArray< T >::push_back(), and ZeroInitialize().
Referenced by appendLink(), btSoftBodyHelpers::CreateFromConvexHull(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromTriMesh(), btSoftBodyHelpers::CreatePatch(), btSoftBodyHelpers::CreatePatchUV(), btSoftBodyHelpers::CreateRope(), CcdPhysicsController::CreateSoftbody(), cutLink(), generateBendingConstraints(), and refine().
void btSoftBody::appendLink | ( | int | node0, |
int | node1, | ||
Material * | mat = 0 , |
||
bool | bcheckexist = false |
||
) |
Definition at line 270 of file btSoftBody.cpp.
References appendLink(), and m_nodes.
void btSoftBody::appendLink | ( | Node * | node0, |
Node * | node1, | ||
Material * | mat = 0 , |
||
bool | bcheckexist = false |
||
) |
Definition at line 279 of file btSoftBody.cpp.
References appendLink(), checkLink(), length(), m_bUpdateRtCst, m_links, btSoftBody::Link::m_n, btSoftBody::Link::m_rl, btSoftBody::Node::m_x, and btAlignedObjectArray< T >::size().
btSoftBody::Material * btSoftBody::appendMaterial | ( | ) |
Definition at line 173 of file btSoftBody.cpp.
References btAlignedAlloc, m_materials, btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::size(), and ZeroInitialize().
Referenced by btSoftBody().
void btSoftBody::appendNode | ( | const btVector3 & | x, |
btScalar | m | ||
) |
Definition at line 239 of file btSoftBody.cpp.
References btAlignedObjectArray< T >::capacity(), btDbvtAabbMm::FromCR(), indicesToPointers(), btDbvt::insert(), btSoftBody::Node::m_im, btSoftBody::Node::m_leaf, btSoftBody::Feature::m_material, m_materials, m_ndbvt, m_nodes, btSoftBody::Node::m_q, btSoftBody::Node::m_x, pointersToIndices(), btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::reserve(), btAlignedObjectArray< T >::size(), and ZeroInitialize().
void btSoftBody::appendNote | ( | const char * | text, |
const btVector3 & | o, | ||
const btVector4 & | c = btVector4(1,0,0,0) , |
||
Node * | n0 = 0 , |
||
Node * | n1 = 0 , |
||
Node * | n2 = 0 , |
||
Node * | n3 = 0 |
||
) |
Definition at line 185 of file btSoftBody.cpp.
References btSoftBody::Note::m_coords, btSoftBody::Note::m_nodes, m_notes, btSoftBody::Note::m_offset, btSoftBody::Note::m_rank, btSoftBody::Note::m_text, btAlignedObjectArray< T >::push_back(), and ZeroInitialize().
Referenced by appendNote().
void btSoftBody::appendNote | ( | const char * | text, |
const btVector3 & | o, | ||
Node * | feature | ||
) |
Definition at line 210 of file btSoftBody.cpp.
References appendNote().
void btSoftBody::appendNote | ( | const char * | text, |
const btVector3 & | o, | ||
Link * | feature | ||
) |
Definition at line 218 of file btSoftBody.cpp.
References appendNote(), btSoftBody::Link::m_n, and simple_enum_gen::w.
void btSoftBody::appendNote | ( | const char * | text, |
const btVector3 & | o, | ||
Face * | feature | ||
) |
Definition at line 228 of file btSoftBody.cpp.
References appendNote(), btSoftBody::Face::m_n, and simple_enum_gen::w.
void btSoftBody::appendTetra | ( | int | model, |
Material * | mat | ||
) |
Definition at line 331 of file btSoftBody.cpp.
References btSoftBody::Feature::m_material, m_materials, m_tetras, btAlignedObjectArray< T >::push_back(), and ZeroInitialize().
Referenced by appendTetra(), and btSoftBodyHelpers::CreateFromTetGenData().
void btSoftBody::appendTetra | ( | int | node0, |
int | node1, | ||
int | node2, | ||
int | node3, | ||
Material * | mat = 0 |
||
) |
Definition at line 342 of file btSoftBody.cpp.
References appendTetra(), m_bUpdateRtCst, btSoftBody::Tetra::m_n, m_nodes, btSoftBody::Tetra::m_rv, m_tetras, btSoftBody::Node::m_x, btAlignedObjectArray< T >::size(), and VolumeOf().
void btSoftBody::applyClusters | ( | bool | drift | ) |
Definition at line 2375 of file btSoftBody.cpp.
References BT_PROFILE, btCross(), i, m_clusters, btSoftBody::Cluster::m_com, btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_masses, btSoftBody::Cluster::m_ndimpulses, m_nodes, btSoftBody::Cluster::m_nodes, btSoftBody::Cluster::m_nvimpulses, m_sst, btSoftBody::Cluster::m_vimpulses, btAlignedObjectArray< T >::resize(), btSoftBody::SolverState::sdt, btAlignedObjectArray< T >::size(), and simple_enum_gen::w.
Referenced by solveConstraints().
void btSoftBody::applyForces | ( | ) |
Definition at line 2621 of file btSoftBody.cpp.
References btSoftBody::Config::aeromodel, btSoftBodyWorldInfo::air_density, ApplyClampedForce(), BT_PROFILE, btDot(), btFabs(), EvaluateMedium(), btSoftBody::eAeroModel::F_TwoSided, getVolume(), i, btSoftBody::Config::kDG, btSoftBody::Config::kLF, btSoftBody::Config::kPR, btSoftBody::Config::kVC, btSoftBody::Node::m_area, m_cfg, btSoftBody::sMedium::m_density, btSoftBody::Node::m_f, m_faces, btSoftBody::Node::m_im, btSoftBody::Face::m_n, btSoftBody::Node::m_n, m_nodes, btSoftBody::Face::m_normal, m_pose, btSoftBody::Face::m_ra, m_sst, btSoftBody::Node::m_v, btSoftBody::sMedium::m_velocity, btSoftBody::Pose::m_volume, m_windVelocity, m_worldInfo, btSoftBody::Node::m_x, NormalizeAny(), btSoftBody::SolverState::sdt, SIMD_EPSILON, btAlignedObjectArray< T >::size(), btSoftBody::eAeroModel::V_Point, and btSoftBody::eAeroModel::V_TwoSided.
Referenced by predictMotion().
int btSoftBody::calculateSerializeBufferSize | ( | ) | const [virtual] |
Definition at line 3008 of file btSoftBody.cpp.
References btSoftBodyData.
bool btSoftBody::checkContact | ( | btCollisionObject * | colObj, |
const btVector3 & | x, | ||
btScalar | margin, | ||
btSoftBody::sCti & | cti | ||
) | const |
Definition at line 1979 of file btSoftBody.cpp.
References btDot(), btSparseSdf< CELLSIZE >::Evaluate(), btTransform::getBasis(), btTransform::invXform(), btSoftBody::sCti::m_colObj, btSoftBody::sCti::m_normal, btSoftBody::sCti::m_offset, btSoftBodyWorldInfo::m_sparsesdf, m_worldInfo, and upcast().
bool btSoftBody::checkFace | ( | int | node0, |
int | node1, | ||
int | node2 | ||
) | const |
Definition at line 152 of file btSoftBody.cpp.
References i, m_faces, btSoftBody::Face::m_n, m_nodes, and btAlignedObjectArray< T >::size().
Definition at line 136 of file btSoftBody.cpp.
References i, m_links, btSoftBody::Link::m_n, and btAlignedObjectArray< T >::size().
bool btSoftBody::checkLink | ( | int | node0, |
int | node1 | ||
) | const |
void btSoftBody::cleanupClusters | ( | ) |
Definition at line 2342 of file btSoftBody.cpp.
References btAlignedFree, i, m_joints, m_sst, btAlignedObjectArray< T >::remove(), btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
Definition at line 798 of file btSoftBody.cpp.
References clusterDAImpulse(), clusterVAImpulse(), btSoftBody::Impulse::m_asDrift, btSoftBody::Impulse::m_asVelocity, btSoftBody::Impulse::m_drift, and btSoftBody::Impulse::m_velocity.
btVector3 btSoftBody::clusterCom | ( | const Cluster * | cluster | ) | [static] |
Definition at line 732 of file btSoftBody.cpp.
References i, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_masses, btSoftBody::Cluster::m_nodes, and btAlignedObjectArray< T >::size().
Referenced by clusterCom(), initializeClusters(), and updateClusters().
btVector3 btSoftBody::clusterCom | ( | int | cluster | ) | const |
Definition at line 743 of file btSoftBody.cpp.
References clusterCom(), and m_clusters.
int btSoftBody::clusterCount | ( | ) | const |
Definition at line 726 of file btSoftBody.cpp.
References m_clusters, and btAlignedObjectArray< T >::size().
void btSoftBody::clusterDAImpulse | ( | Cluster * | cluster, |
const btVector3 & | impulse | ||
) | [static] |
Definition at line 790 of file btSoftBody.cpp.
References btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_invwi, and btSoftBody::Cluster::m_ndimpulses.
Referenced by btSoftBody::Body::applyDAImpulse(), and clusterAImpulse().
void btSoftBody::clusterDCImpulse | ( | Cluster * | cluster, |
const btVector3 & | impulse | ||
) | [static] |
Definition at line 805 of file btSoftBody.cpp.
References btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_imass, and btSoftBody::Cluster::m_ndimpulses.
Referenced by btSoftBody::Body::applyDCImpulse().
void btSoftBody::clusterDImpulse | ( | Cluster * | cluster, |
const btVector3 & | rpos, | ||
const btVector3 & | impulse | ||
) | [static] |
Definition at line 765 of file btSoftBody.cpp.
References btCross(), btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_invwi, and btSoftBody::Cluster::m_ndimpulses.
Referenced by btSoftBody::Body::applyDImpulse(), and clusterImpulse().
void btSoftBody::clusterImpulse | ( | Cluster * | cluster, |
const btVector3 & | rpos, | ||
const Impulse & | impulse | ||
) | [static] |
Definition at line 775 of file btSoftBody.cpp.
References clusterDImpulse(), clusterVImpulse(), btSoftBody::Impulse::m_asDrift, btSoftBody::Impulse::m_asVelocity, btSoftBody::Impulse::m_drift, and btSoftBody::Impulse::m_velocity.
void btSoftBody::clusterVAImpulse | ( | Cluster * | cluster, |
const btVector3 & | impulse | ||
) | [static] |
Definition at line 782 of file btSoftBody.cpp.
References btSoftBody::Cluster::m_av, btSoftBody::Cluster::m_invwi, btSoftBody::Cluster::m_nvimpulses, and btSoftBody::Cluster::m_vimpulses.
Referenced by btSoftBody::Body::applyVAImpulse(), and clusterAImpulse().
btVector3 btSoftBody::clusterVelocity | ( | const Cluster * | cluster, |
const btVector3 & | rpos | ||
) | [static] |
Definition at line 749 of file btSoftBody.cpp.
References btCross(), btSoftBody::Cluster::m_av, and btSoftBody::Cluster::m_lv.
void btSoftBody::clusterVImpulse | ( | Cluster * | cluster, |
const btVector3 & | rpos, | ||
const btVector3 & | impulse | ||
) | [static] |
Definition at line 755 of file btSoftBody.cpp.
References btCross(), btSoftBody::Cluster::m_av, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_invwi, btSoftBody::Cluster::m_lv, btSoftBody::Cluster::m_nvimpulses, and btSoftBody::Cluster::m_vimpulses.
Referenced by btSoftBody::Body::applyVImpulse(), and clusterImpulse().
Definition at line 1417 of file btSoftBody.cpp.
bool btSoftBody::cutLink | ( | int | node0, |
int | node1, | ||
btScalar | position | ||
) |
Definition at line 1423 of file btSoftBody.cpp.
References appendFace(), appendLink(), appendNode(), simple_enum_gen::d, i, Lerp(), m_faces, m_links, btSoftBody::Face::m_n, btSoftBody::Link::m_n, m_ndbvt, m_nodes, btSoftBody::Node::m_v, MatchEdge(), btAlignedObjectArray< T >::pop_back(), btDbvt::remove(), and btAlignedObjectArray< T >::size().
Referenced by cutLink().
void btSoftBody::dampClusters | ( | ) |
Definition at line 2426 of file btSoftBody.cpp.
References btCross(), i, btSoftBody::Cluster::m_av, m_clusters, btSoftBody::Cluster::m_com, btSoftBody::Node::m_im, btSoftBody::Cluster::m_lv, btSoftBody::Cluster::m_ndamping, btSoftBody::Cluster::m_nodes, btSoftBody::Node::m_v, and btAlignedObjectArray< T >::size().
Referenced by solveConstraints().
void btSoftBody::defaultCollisionHandler | ( | btCollisionObject * | pco | ) |
Definition at line 2904 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btSoftBody::fCollision::CL_RS, btDbvt::collideTV(), btSoftBody::Config::collisions, btSoftColliders::CollideSDF_RS::dynmargin, btDbvtAabbMm::FromMM(), btTransform::getOrigin(), length(), m_cfg, btSoftColliders::CollideSDF_RS::m_colObj1, m_ndbvt, btSoftColliders::CollideSDF_RS::m_rigidBody, btDbvt::m_root, btSoftColliders::CollideCL_RS::Process(), btSoftColliders::CollideSDF_RS::psb, btSoftBody::fCollision::RVSmask, btSoftBody::fCollision::SDF_RS, btSoftColliders::CollideSDF_RS::stamargin, and upcast().
Referenced by btSoftRigidDynamicsWorld::internalSingleStepSimulation(), and btDefaultSoftBodySolver::processCollision().
void btSoftBody::defaultCollisionHandler | ( | btSoftBody * | psb | ) |
Definition at line 2945 of file btSoftBody.cpp.
References btSoftBody::fCollision::CL_SELF, btSoftBody::fCollision::CL_SS, btDbvt::collideTT(), btSoftBody::Config::collisions, m_cfg, m_fdbvt, m_ndbvt, btDbvt::m_root, btSoftColliders::CollideVF_SS::mrg, btSoftColliders::CollideCL_SS::Process(), btSoftColliders::CollideVF_SS::psb, btSoftBody::fCollision::SVSmask, and btSoftBody::fCollision::VF_SS.
btVector3 btSoftBody::evaluateCom | ( | ) | const |
Definition at line 1965 of file btSoftBody.cpp.
References i, btSoftBody::Pose::m_bframe, m_nodes, m_pose, btSoftBody::Pose::m_wgh, and btAlignedObjectArray< T >::size().
Referenced by setPose(), and updatePose().
int btSoftBody::generateBendingConstraints | ( | int | distance, |
Material * | mat = 0 |
||
) |
generic Floyd's algorithm
Definition at line 819 of file btSoftBody.cpp.
References appendLink(), btAssert, btAlignedObjectArray< T >::findLinearSearch(), i, IDX, m_links, m_nodes, btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::resize(), btAlignedObjectArray< T >::size(), and sum().
int btSoftBody::generateClusters | ( | int | k, |
int | maxiterations = 8192 |
||
) |
generateClusters with k=0 will create a convex cluster for each tetrahedron or triangle otherwise an approximation will be used (better performance)
Definition at line 973 of file btSoftBody.cpp.
References btAlignedAlloc, btMin(), btSwap(), ClusterMetric(), simple_enum_gen::d, btAlignedObjectArray< T >::findLinearSearch(), i, initializeClusters(), m_clusterConnectivity, m_clusters, btSoftBody::Cluster::m_collide, m_faces, m_nodes, btSoftBody::Cluster::m_nodes, m_tetras, btAlignedObjectArray< T >::push_back(), releaseCluster(), releaseClusters(), btAlignedObjectArray< T >::reserve(), btAlignedObjectArray< T >::resize(), SIMD_EPSILON, btAlignedObjectArray< T >::size(), updateClusters(), and simple_enum_gen::w.
virtual void btSoftBody::getAabb | ( | btVector3 & | aabbMin, |
btVector3 & | aabbMax | ||
) | const [inline, virtual] |
Definition at line 927 of file btSoftBody.h.
References m_bounds.
Referenced by btSoftBodyTriangleCallback::setTimeStepAndCounters(), and CcdPhysicsController::SynchronizeMotionStates().
btScalar btSoftBody::getMass | ( | int | node | ) | const |
Definition at line 492 of file btSoftBody.cpp.
References m_nodes.
Referenced by getTotalMass(), and refine().
btSoftBodySolver* btSoftBody::getSoftBodySolver | ( | ) | [inline] |
Definition at line 892 of file btSoftBody.h.
References m_softBodySolver.
Referenced by btSoftRigidCollisionAlgorithm::processCollision(), and btSoftSoftCollisionAlgorithm::processCollision().
btSoftBodySolver* btSoftBody::getSoftBodySolver | ( | ) | const [inline] |
Definition at line 900 of file btSoftBody.h.
References m_softBodySolver.
btSoftBody::psolver_t btSoftBody::getSolver | ( | ePSolver::_ | solver | ) | [static] |
Definition at line 2871 of file btSoftBody.cpp.
References btSoftBody::ePSolver::Anchors, btSoftBody::ePSolver::Linear, PSolve_Anchors(), PSolve_Links(), PSolve_RContacts(), PSolve_SContacts(), btSoftBody::ePSolver::RContacts, and btSoftBody::ePSolver::SContacts.
Referenced by solveConstraints(), and staticSolve().
btSoftBody::vsolver_t btSoftBody::getSolver | ( | eVSolver::_ | solver | ) | [static] |
Definition at line 2891 of file btSoftBody.cpp.
References btSoftBody::eVSolver::Linear, and VSolve_Links().
btScalar btSoftBody::getTotalMass | ( | ) | const |
Definition at line 498 of file btSoftBody.cpp.
References getMass(), i, m_nodes, and btAlignedObjectArray< T >::size().
Referenced by setPose(), and setTotalMass().
btScalar btSoftBody::getVolume | ( | ) | const |
Definition at line 707 of file btSoftBody.cpp.
References btCross(), btDot(), i, m_faces, btSoftBody::Face::m_n, m_nodes, btSoftBody::Node::m_x, and btAlignedObjectArray< T >::size().
Referenced by applyForces(), setPose(), and setTotalDensity().
const btVector3 & btSoftBody::getWindVelocity | ( | ) |
Return the wind velocity for interaction with the air.
Definition at line 3001 of file btSoftBody.cpp.
References m_windVelocity.
btSoftBodyWorldInfo* btSoftBody::getWorldInfo | ( | ) | [inline] |
Definition at line 688 of file btSoftBody.h.
References m_worldInfo.
Referenced by btSoftBodyTriangleCallback::clearCache().
void btSoftBody::indicesToPointers | ( | const int * | map = 0 | ) |
Definition at line 1863 of file btSoftBody.cpp.
References i, IDX2PTR, m_anchors, m_faces, m_links, m_nodes, m_notes, and btAlignedObjectArray< T >::size().
Referenced by appendNode().
void btSoftBody::initDefaults | ( | ) |
for now, create a collision shape internally
Definition at line 61 of file btSoftBody.cpp.
References btSoftBody::Config::aeromodel, btSoftBody::Config::citerations, btSoftBody::Config::collisions, btSoftBody::fCollision::Default, btSoftBody::Config::diterations, btSoftBody::Config::kAHR, btSoftBody::Config::kCHR, btSoftBody::Config::kDF, btSoftBody::Config::kDG, btSoftBody::Config::kDP, btSoftBody::Config::kKHR, btSoftBody::Config::kLF, btSoftBody::Config::kMT, btSoftBody::Config::kPR, btSoftBody::Config::kSHR, btSoftBody::Config::kSK_SPLT_CL, btSoftBody::Config::kSKHR_CL, btSoftBody::Config::kSR_SPLT_CL, btSoftBody::Config::kSRHR_CL, btSoftBody::Config::kSS_SPLT_CL, btSoftBody::Config::kSSHR_CL, btSoftBody::Config::kVC, btSoftBody::Config::kVCF, btSoftBody::Pose::m_bframe, m_bounds, m_bUpdateRtCst, btSoftBody::Pose::m_bvolume, m_cfg, btSoftBody::Pose::m_com, m_initialWorldTransform, m_pose, btSoftBody::Pose::m_rot, btSoftBody::Pose::m_scl, m_tag, m_timeacc, btSoftBody::Pose::m_volume, m_windVelocity, btSoftBody::Config::maxvolume, btSoftBody::Config::piterations, btSoftBody::eSolverPresets::Positions, btTransform::setIdentity(), btMatrix3x3::setIdentity(), setSolver(), btSoftBody::Config::timescale, btSoftBody::eAeroModel::V_Point, and btSoftBody::Config::viterations.
Referenced by btSoftBody().
void btSoftBody::initializeClusters | ( | ) |
Definition at line 2158 of file btSoftBody.cpp.
References BT_LARGE_FLOAT, clusterCom(), i, btMatrix3x3::inverse(), btSoftBody::Cluster::m_av, m_clusters, btSoftBody::Cluster::m_com, btSoftBody::Cluster::m_containsAnchor, btSoftBody::Cluster::m_framerefs, btSoftBody::Cluster::m_framexform, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_leaf, btSoftBody::Cluster::m_locii, btSoftBody::Cluster::m_lv, btSoftBody::Cluster::m_masses, btSoftBody::Cluster::m_nodes, btAlignedObjectArray< T >::resize(), btTransform::setIdentity(), btTransform::setOrigin(), and btAlignedObjectArray< T >::size().
Referenced by generateClusters().
void btSoftBody::initializeFaceTree | ( | ) |
Definition at line 1954 of file btSoftBody.cpp.
References btDbvt::clear(), i, btDbvt::insert(), m_faces, m_fdbvt, btSoftBody::Face::m_leaf, btAlignedObjectArray< T >::size(), and VolumeOf().
Referenced by predictMotion(), and rayTest().
void btSoftBody::integrateMotion | ( | ) |
Definition at line 1753 of file btSoftBody.cpp.
References updateNormals().
Referenced by btDefaultSoftBodySolver::updateSoftBodies().
void btSoftBody::pointersToIndices | ( | ) |
Definition at line 1820 of file btSoftBody.cpp.
References i, m_anchors, m_faces, m_links, m_nodes, m_notes, PTR2IDX, and btAlignedObjectArray< T >::size().
Referenced by appendNode().
void btSoftBody::predictMotion | ( | btScalar | dt | ) |
Definition at line 1520 of file btSoftBody.cpp.
References addVelocity(), applyForces(), ATTRIBUTE_ALIGNED16, btDbvt::clear(), btSoftBody::Config::collisions, btDbvt::empty(), btDbvtAabbMm::FromCR(), i, initializeFaceTree(), btSoftBody::SolverState::isdt, btSoftBody::Config::kMT, Lerp(), btSoftBody::Pose::m_bframe, m_bUpdateRtCst, m_cdbvt, m_cfg, btSoftBody::Pose::m_com, btSoftBody::Node::m_f, m_faces, m_fdbvt, btSoftBodyWorldInfo::m_gravity, btSoftBody::Node::m_im, btSoftBody::Node::m_leaf, btSoftBody::Face::m_leaf, btSoftBody::Face::m_n, m_ndbvt, m_nodes, btSoftBody::Pose::m_pos, m_pose, btSoftBody::Node::m_q, m_rcontacts, btSoftBody::Pose::m_rot, m_scontacts, m_sst, btSoftBody::Node::m_v, m_worldInfo, btSoftBody::Node::m_x, btDbvt::optimizeIncremental(), btSoftBody::SolverState::radmrg, btAlignedObjectArray< T >::resize(), btSoftBody::SolverState::sdt, btAlignedObjectArray< T >::size(), btSoftBody::Config::timescale, btDbvt::update(), updateBounds(), updateClusters(), updateConstants(), updatePose(), btSoftBody::SolverState::updmrg, btSoftBody::SolverState::velmrg, btSoftBody::fCollision::VF_SS, and VolumeOf().
Referenced by btDefaultSoftBodySolver::predictMotion().
void btSoftBody::prepareClusters | ( | int | iterations | ) |
Definition at line 2356 of file btSoftBody.cpp.
References i, m_joints, m_sst, btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
void btSoftBody::PSolve_Anchors | ( | btSoftBody * | psb, |
btScalar | kst, | ||
btScalar | ti | ||
) | [static] |
Definition at line 2755 of file btSoftBody.cpp.
References btRigidBody::applyImpulse(), btRigidBody::getVelocityInLocalPoint(), i, btSoftBody::Config::kAHR, m_anchors, btSoftBody::Anchor::m_body, btSoftBody::Anchor::m_c0, btSoftBody::Anchor::m_c1, btSoftBody::Anchor::m_c2, m_cfg, btSoftBody::Anchor::m_local, btSoftBody::Anchor::m_node, btSoftBody::Node::m_q, m_sst, btSoftBody::Node::m_x, btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
Referenced by getSolver().
void btSoftBody::PSolve_Links | ( | btSoftBody * | psb, |
btScalar | kst, | ||
btScalar | ti | ||
) | [static] |
Definition at line 2836 of file btSoftBody.cpp.
References i, len(), btSoftBody::Link::m_c0, btSoftBody::Link::m_c1, btSoftBody::Node::m_im, m_links, btSoftBody::Link::m_n, btSoftBody::Node::m_x, SIMD_EPSILON, and btAlignedObjectArray< T >::size().
Referenced by getSolver().
void btSoftBody::PSolve_RContacts | ( | btSoftBody * | psb, |
btScalar | kst, | ||
btScalar | ti | ||
) | [static] |
Definition at line 2775 of file btSoftBody.cpp.
References btRigidBody::applyImpulse(), btDot(), btMin(), btRigidBody::getVelocityInLocalPoint(), i, btSoftBody::RContact::m_c0, btSoftBody::RContact::m_c1, btSoftBody::RContact::m_c2, btSoftBody::RContact::m_c3, btSoftBody::RContact::m_c4, btSoftBody::sCti::m_colObj, btSoftBody::RContact::m_cti, btSoftBody::RContact::m_node, btSoftBody::sCti::m_normal, btSoftBody::sCti::m_offset, btSoftBody::Node::m_q, m_rcontacts, m_sst, btSoftBody::Node::m_x, btSoftBody::SolverState::sdt, SIMD_EPSILON, btAlignedObjectArray< T >::size(), and upcast().
Referenced by getSolver().
void btSoftBody::PSolve_SContacts | ( | btSoftBody * | psb, |
btScalar | , | ||
btScalar | ti | ||
) | [static] |
Definition at line 2803 of file btSoftBody.cpp.
References BaryEval(), btDot(), dot(), i, btSoftBody::SContact::m_cfm, btSoftBody::SContact::m_face, btSoftBody::SContact::m_friction, btSoftBody::SContact::m_margin, btSoftBody::Face::m_n, btSoftBody::SContact::m_node, btSoftBody::SContact::m_normal, btSoftBody::Node::m_q, m_scontacts, btSoftBody::SContact::m_weights, btSoftBody::Node::m_x, p, ProjectOnPlane(), and btAlignedObjectArray< T >::size().
Referenced by getSolver().
void btSoftBody::randomizeConstraints | ( | ) |
Definition at line 939 of file btSoftBody.cpp.
References btSwap(), i, m_faces, m_links, NEXTRAND, and btAlignedObjectArray< T >::size().
Referenced by btSoftBodyHelpers::CreateFromConvexHull(), and btSoftBodyHelpers::CreateFromTriMesh().
bool btSoftBody::rayTest | ( | const btVector3 & | rayFrom, |
const btVector3 & | rayTo, | ||
sRayCast & | results | ||
) |
Ray casting using rayFrom and rayTo in worldspace, (not direction!)
Definition at line 1478 of file btSoftBody.cpp.
References btSoftBody::sRayCast::body, btDbvt::empty(), btSoftBody::sRayCast::feature, btSoftBody::sRayCast::fraction, btSoftBody::sRayCast::index, initializeFaceTree(), m_faces, m_fdbvt, btSoftBody::eFeature::None, and btAlignedObjectArray< T >::size().
Referenced by rayTest(), and btSoftRigidDynamicsWorld::rayTestSingle().
int btSoftBody::rayTest | ( | const btVector3 & | rayFrom, |
const btVector3 & | rayTo, | ||
btScalar & | mint, | ||
eFeature::_ & | feature, | ||
int & | index, | ||
bool | bcountonly | ||
) | const |
Definition at line 1907 of file btSoftBody.cpp.
References btDbvt::empty(), btSoftBody::eFeature::Face, i, btSoftBody::RayFromToCaster::m_face, m_faces, m_fdbvt, btSoftBody::RayFromToCaster::m_mint, btSoftBody::Face::m_n, btDbvt::m_root, btSoftBody::Node::m_x, btSoftBody::RayFromToCaster::rayFromToTriangle(), rayTest(), and btAlignedObjectArray< T >::size().
void btSoftBody::refine | ( | ImplicitFn * | ifn, |
btScalar | accurary, | ||
bool | cut | ||
) |
Definition at line 1166 of file btSoftBody.cpp.
References appendFace(), appendLink(), appendNode(), btFabs(), btSwap(), btSoftBody::ImplicitFn::Eval(), getMass(), i, ImplicitSolve(), Lerp(), btSoftBody::Link::m_bbending, m_bUpdateRtCst, m_faces, btSoftBody::Node::m_im, m_links, btSoftBody::Face::m_n, btSoftBody::Link::m_n, m_ndbvt, m_nodes, btSoftBody::Node::m_v, btSoftBody::Node::m_x, btAlignedObjectArray< T >::pop_back(), btAlignedObjectArray< T >::push_back(), btDbvt::remove(), btAlignedObjectArray< T >::resize(), SameSign(), and btAlignedObjectArray< T >::size().
void btSoftBody::releaseCluster | ( | int | index | ) |
Definition at line 957 of file btSoftBody.cpp.
References btAlignedFree, m_cdbvt, m_clusters, btSoftBody::Cluster::m_leaf, btDbvt::remove(), and btAlignedObjectArray< T >::remove().
Referenced by generateClusters(), and releaseClusters().
void btSoftBody::releaseClusters | ( | ) |
Definition at line 967 of file btSoftBody.cpp.
References m_clusters, releaseCluster(), and btAlignedObjectArray< T >::size().
Referenced by generateClusters(), and ~btSoftBody().
void btSoftBody::rotate | ( | const btQuaternion & | rot | ) |
Definition at line 628 of file btSoftBody.cpp.
References btTransform::setIdentity(), btTransform::setRotation(), and transform().
void btSoftBody::scale | ( | const btVector3 & | scl | ) |
Definition at line 637 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btDbvtAabbMm::FromCR(), i, btSoftBody::Node::m_leaf, m_ndbvt, m_nodes, btSoftBody::Node::m_q, btSoftBody::Node::m_x, btAlignedObjectArray< T >::size(), btDbvt::update(), updateBounds(), updateConstants(), and updateNormals().
const char * btSoftBody::serialize | ( | void * | dataBuffer, |
class btSerializer * | serializer | ||
) | const [virtual] |
fills the dataBuffer and returns the struct name (and 0 on failure)
Definition at line 3015 of file btSoftBody.cpp.
References btSoftBody::Config::aeromodel, btSerializer::allocate(), BT_ARRAY_CODE, BT_JOINT_COLLISION_OBJECT, BT_JOINT_RIGID_BODY, BT_JOINT_SOFT_BODY_CLUSTER, BT_SBMATERIAL_CODE, BT_SBNODE_CODE, btAssert, btRigidBodyData, btSoftBodyData, btSoftBodyDataName, btVector3Data, btSoftBody::Config::citerations, btSoftBody::Config::collisions, btSoftBody::Config::diterations, btSerializer::finalizeChunk(), btHashMap< Key, Value >::find(), btSerializer::findPointer(), btSerializer::getUniquePointer(), i, btHashMap< Key, Value >::insert(), btSoftBody::Config::kAHR, btSoftBody::Config::kCHR, btSoftBody::Config::kDF, btSoftBody::Config::kDG, btSoftBody::Config::kDP, btSoftBody::Config::kKHR, btSoftBody::Config::kLF, btSoftBody::Config::kMT, btSoftBody::Config::kPR, btSoftBody::Config::kSHR, btSoftBody::Config::kSK_SPLT_CL, btSoftBody::Config::kSKHR_CL, btSoftBody::Config::kSR_SPLT_CL, btSoftBody::Config::kSRHR_CL, btSoftBody::Config::kSS_SPLT_CL, btSoftBody::Config::kSSHR_CL, btSoftBody::Config::kVC, btSoftBody::Config::kVCF, SoftBodyNodeData::m_accumulatedForce, SoftBodyClusterData::m_adamping, m_anchors, SoftBodyMaterialData::m_angularStiffness, SoftBodyPoseData::m_aqq, SoftBodyNodeData::m_area, SoftBodyNodeData::m_attach, SoftBodyClusterData::m_av, SoftBodyLinkData::m_bbending, SoftBodyPoseData::m_bframe, btSoftBodyJointData::m_bodyA, btSoftBodyJointData::m_bodyAtype, btSoftBodyJointData::m_bodyB, btSoftBodyJointData::m_bodyBtype, SoftBodyPoseData::m_bvolume, SoftRigidAnchorData::m_c0, SoftBodyTetraData::m_c0, SoftRigidAnchorData::m_c1, SoftBodyTetraData::m_c1, SoftRigidAnchorData::m_c2, SoftBodyTetraData::m_c2, m_cfg, btSoftBodyJointData::m_cfm, SoftBodyClusterData::m_clusterIndex, m_clusters, SoftBodyClusterData::m_collide, SoftBodyClusterData::m_com, SoftBodyPoseData::m_com, SoftBodyClusterData::m_containsAnchor, btSoftBodyJointData::m_delete, SoftBodyClusterData::m_dimpulses, btSoftBodyJointData::m_erp, m_faces, SoftBodyMaterialData::m_flags, btVector3FloatData::m_floats, SoftBodyClusterData::m_framerefs, SoftBodyClusterData::m_framexform, SoftBodyClusterData::m_idmass, SoftBodyClusterData::m_imass, SoftBodyNodeData::m_inverseMass, SoftBodyClusterData::m_invwi, m_joints, btSoftBodyJointData::m_jointType, SoftBodyClusterData::m_ldamping, SoftBodyMaterialData::m_linearStiffness, m_links, SoftRigidAnchorData::m_localFrame, SoftBodyClusterData::m_locii, SoftBodyClusterData::m_lv, SoftBodyClusterData::m_masses, SoftBodyClusterData::m_matching, SoftBodyLinkData::m_material, SoftBodyFaceData::m_material, SoftBodyTetraData::m_material, SoftBodyNodeData::m_material, m_materials, SoftBodyClusterData::m_maxSelfCollisionImpulse, SoftBodyClusterData::m_ndamping, SoftBodyClusterData::m_ndimpulses, SoftRigidAnchorData::m_nodeIndex, SoftBodyFaceData::m_nodeIndices, SoftBodyTetraData::m_nodeIndices, SoftBodyLinkData::m_nodeIndices, SoftBodyClusterData::m_nodeIndices, m_nodes, SoftBodyNodeData::m_normal, SoftBodyFaceData::m_normal, SoftBodyClusterData::m_numFrameRefs, SoftBodyClusterData::m_numMasses, SoftBodyClusterData::m_numNodes, SoftBodyPoseData::m_numPositions, SoftBodyPoseData::m_numWeigts, SoftBodyClusterData::m_nvimpulses, btChunk::m_oldPtr, m_pose, SoftBodyNodeData::m_position, SoftBodyPoseData::m_positions, SoftBodyNodeData::m_previousPosition, btSoftBodyJointData::m_refs, btSoftBodyJointData::m_relPosition, SoftBodyFaceData::m_restArea, SoftBodyLinkData::m_restLength, SoftBodyPoseData::m_restVolume, SoftBodyTetraData::m_restVolume, SoftRigidAnchorData::m_rigidBody, SoftBodyPoseData::m_rot, SoftBodyPoseData::m_scale, SoftBodyClusterData::m_selfCollisionImpulseFactor, btSoftBodyJointData::m_split, m_tetras, SoftBodyNodeData::m_velocity, SoftBodyClusterData::m_vimpulses, SoftBodyMaterialData::m_volumeStiffness, SoftBodyPoseData::m_weights, btSoftBody::Config::maxvolume, btSoftBody::Config::piterations, btAlignedObjectArray< T >::size(), btSoftBody::Config::timescale, and btSoftBody::Config::viterations.
virtual void btSoftBody::setCollisionShape | ( | btCollisionShape * | collisionShape | ) | [inline, virtual] |
Definition at line 694 of file btSoftBody.h.
void btSoftBody::setMass | ( | int | node, |
btScalar | mass | ||
) |
Definition at line 485 of file btSoftBody.cpp.
References m_bUpdateRtCst, and m_nodes.
Referenced by CcdPhysicsEnvironment::createConstraint(), btSoftBodyHelpers::CreatePatch(), btSoftBodyHelpers::CreatePatchUV(), and btSoftBodyHelpers::CreateRope().
void btSoftBody::setPose | ( | bool | bvolume, |
bool | bframe | ||
) |
Definition at line 657 of file btSoftBody.cpp.
References evaluateCom(), getTotalMass(), getVolume(), i, btMatrix3x3::inverse(), btSoftBody::Pose::m_aqq, btSoftBody::Pose::m_bframe, btSoftBody::Pose::m_bvolume, btSoftBody::Pose::m_com, btSoftBody::Node::m_im, m_nodes, btSoftBody::Pose::m_pos, m_pose, btSoftBody::Pose::m_rot, btSoftBody::Pose::m_scl, btSoftBody::Pose::m_volume, btSoftBody::Pose::m_wgh, btAlignedObjectArray< T >::resize(), btMatrix3x3::setIdentity(), btAlignedObjectArray< T >::size(), and updateConstants().
void btSoftBody::setSoftBodySolver | ( | btSoftBodySolver * | softBodySolver | ) | [inline] |
Definition at line 884 of file btSoftBody.h.
References m_softBodySolver.
Referenced by btSoftRigidDynamicsWorld::addSoftBody().
void btSoftBody::setSolver | ( | eSolverPresets::_ | preset | ) |
Definition at line 1494 of file btSoftBody.cpp.
References btSoftBody::ePSolver::Anchors, btAlignedObjectArray< T >::clear(), btSoftBody::ePSolver::Linear, btSoftBody::eVSolver::Linear, m_cfg, btSoftBody::Config::m_dsequence, btSoftBody::Config::m_psequence, btSoftBody::Config::m_vsequence, btSoftBody::eSolverPresets::Positions, btAlignedObjectArray< T >::push_back(), btSoftBody::ePSolver::RContacts, btSoftBody::ePSolver::SContacts, and btSoftBody::eSolverPresets::Velocities.
Referenced by initDefaults().
void btSoftBody::setTotalDensity | ( | btScalar | density | ) |
Definition at line 546 of file btSoftBody.cpp.
References getVolume(), and setTotalMass().
void btSoftBody::setTotalMass | ( | btScalar | mass, |
bool | fromfaces = false |
||
) |
Definition at line 509 of file btSoftBody.cpp.
References AreaOf(), getTotalMass(), i, m_bUpdateRtCst, m_faces, btSoftBody::Node::m_im, btSoftBody::Face::m_n, m_nodes, btSoftBody::Node::m_x, and btAlignedObjectArray< T >::size().
Referenced by setTotalDensity(), and setVolumeMass().
void btSoftBody::setVelocity | ( | const btVector3 & | velocity | ) |
Definition at line 461 of file btSoftBody.cpp.
References i, btSoftBody::Node::m_im, m_nodes, btSoftBody::Node::m_v, and btAlignedObjectArray< T >::size().
Referenced by CcdPhysicsController::SetLinearVelocity().
void btSoftBody::setVolumeDensity | ( | btScalar | density | ) |
Definition at line 582 of file btSoftBody.cpp.
References btFabs(), i, btSoftBody::Tetra::m_rv, m_tetras, setVolumeMass(), and btAlignedObjectArray< T >::size().
void btSoftBody::setVolumeMass | ( | btScalar | mass | ) |
Definition at line 552 of file btSoftBody.cpp.
References btFabs(), i, btSoftBody::Node::m_im, btSoftBody::Tetra::m_n, m_nodes, btSoftBody::Tetra::m_rv, m_tetras, btAlignedObjectArray< T >::resize(), setTotalMass(), and btAlignedObjectArray< T >::size().
Referenced by setVolumeDensity().
void btSoftBody::setWindVelocity | ( | const btVector3 & | velocity | ) |
Set a wind velocity for interaction with the air.
Definition at line 2995 of file btSoftBody.cpp.
References m_windVelocity.
void btSoftBody::solveClusters | ( | const btAlignedObjectArray< btSoftBody * > & | bodies | ) | [static] |
Definition at line 1724 of file btSoftBody.cpp.
References btMax(), btSoftBody::Config::citerations, i, m_cfg, and btAlignedObjectArray< T >::size().
Referenced by btSoftRigidDynamicsWorld::solveSoftBodiesConstraints().
void btSoftBody::solveClusters | ( | btScalar | sor | ) |
Definition at line 2366 of file btSoftBody.cpp.
References i, m_joints, m_sst, btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
void btSoftBody::solveCommonConstraints | ( | btSoftBody ** | bodies, |
int | count, | ||
int | iterations | ||
) | [static] |
placeholder
Definition at line 1718 of file btSoftBody.cpp.
void btSoftBody::solveConstraints | ( | ) |
Definition at line 1612 of file btSoftBody.cpp.
References applyClusters(), dampClusters(), btSoftBody::Config::diterations, btRigidBody::getInvInertiaTensorWorld(), btRigidBody::getInvMass(), getSolver(), i, ImpulseMatrix(), btSoftBody::SolverState::isdt, btSoftBody::Config::kDP, btSoftBody::Config::kVCF, m_anchors, btSoftBody::Anchor::m_body, btSoftBody::Link::m_c0, btSoftBody::Anchor::m_c0, btSoftBody::Anchor::m_c1, btSoftBody::Link::m_c2, btSoftBody::Anchor::m_c2, btSoftBody::Link::m_c3, m_cfg, btSoftBody::Config::m_dsequence, btSoftBody::Node::m_f, btSoftBody::Node::m_im, m_links, btSoftBody::Anchor::m_local, btSoftBody::Link::m_n, btSoftBody::Anchor::m_node, m_nodes, btSoftBody::Config::m_psequence, btSoftBody::Node::m_q, m_sst, btSoftBody::Node::m_v, btSoftBody::Config::m_vsequence, btSoftBody::Node::m_x, btSoftBody::Config::piterations, btSoftBody::SolverState::sdt, btAlignedObjectArray< T >::size(), and btSoftBody::Config::viterations.
Referenced by btDefaultSoftBodySolver::solveConstraints().
void btSoftBody::staticSolve | ( | int | iterations | ) |
Definition at line 1706 of file btSoftBody.cpp.
References getSolver(), m_cfg, btSoftBody::Config::m_psequence, and btAlignedObjectArray< T >::size().
void btSoftBody::transform | ( | const btTransform & | trs | ) |
Definition at line 597 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btDbvtAabbMm::FromCR(), btTransform::getBasis(), i, m_initialWorldTransform, btSoftBody::Node::m_leaf, btSoftBody::Node::m_n, m_ndbvt, m_nodes, btSoftBody::Node::m_q, btSoftBody::Node::m_x, btAlignedObjectArray< T >::size(), btDbvt::update(), updateBounds(), updateConstants(), and updateNormals().
Referenced by rotate(), CcdPhysicsController::setWorldOrientation(), and translate().
void btSoftBody::translate | ( | const btVector3 & | trs | ) |
Definition at line 619 of file btSoftBody.cpp.
References btTransform::setIdentity(), btTransform::setOrigin(), and transform().
static btSoftBody* btSoftBody::upcast | ( | btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 916 of file btSoftBody.h.
static const btSoftBody* btSoftBody::upcast | ( | const btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 910 of file btSoftBody.h.
Referenced by btSoftBody::Body::Body(), checkContact(), defaultCollisionHandler(), CcdPhysicsController::GetSoftBody(), PSolve_RContacts(), btSoftRigidDynamicsWorld::rayTestSingle(), and btSoftRigidDynamicsWorld::removeCollisionObject().
void btSoftBody::updateBounds | ( | ) |
Definition at line 2034 of file btSoftBody.cpp.
References m_bounds, btSoftBodyWorldInfo::m_broadphase, btSoftBodyWorldInfo::m_dispatcher, m_ndbvt, btDbvt::m_root, m_worldInfo, btDbvtAabbMm::Maxs(), btDbvtAabbMm::Mins(), btBroadphaseInterface::setAabb(), and btDbvtNode::volume.
Referenced by btSoftBody(), predictMotion(), scale(), and transform().
void btSoftBody::updateClusters | ( | ) |
Definition at line 2224 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, bounds(), BT_PROFILE, btCross(), btFabs(), clusterCom(), eps, btDbvtAabbMm::FromMM(), btTransform::getBasis(), i, btDbvt::insert(), btMatrix3x3::inverse(), Lerp(), btSoftBody::Cluster::m_adamping, btSoftBody::Cluster::m_av, m_cdbvt, m_clusters, btSoftBody::Cluster::m_collide, btSoftBody::Cluster::m_com, btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_framerefs, btSoftBody::Cluster::m_framexform, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_invwi, btSoftBody::Cluster::m_ldamping, btSoftBody::Cluster::m_leaf, btSoftBody::Cluster::m_locii, btSoftBody::Cluster::m_lv, btSoftBody::Cluster::m_masses, btSoftBody::Cluster::m_matching, btSoftBody::Cluster::m_ndimpulses, btSoftBody::Cluster::m_nodes, btSoftBody::Cluster::m_nvimpulses, m_sst, btSoftBody::Cluster::m_vimpulses, btSoftBody::Node::m_x, PolarDecompose(), btSoftBody::SolverState::radmrg, btSoftBody::SolverState::sdt, btTransform::setBasis(), btTransform::setOrigin(), SIMD_EPSILON, btAlignedObjectArray< T >::size(), btMatrix3x3::transpose(), and btDbvt::update().
Referenced by generateClusters(), and predictMotion().
void btSoftBody::updateConstants | ( | ) |
Definition at line 2112 of file btSoftBody.cpp.
References AreaOf(), btFabs(), i, length(), btSoftBody::Node::m_area, btSoftBody::Link::m_c0, btSoftBody::Link::m_c1, m_faces, btSoftBody::Node::m_im, btSoftBody::Material::m_kLST, m_links, btSoftBody::Feature::m_material, btSoftBody::Face::m_n, btSoftBody::Link::m_n, m_nodes, btSoftBody::Face::m_ra, btSoftBody::Link::m_rl, btSoftBody::Node::m_x, btAlignedObjectArray< T >::resize(), and btAlignedObjectArray< T >::size().
Referenced by predictMotion(), scale(), setPose(), and transform().
void btSoftBody::updateNormals | ( | ) |
Definition at line 2005 of file btSoftBody.cpp.
References btCross(), i, len(), m_faces, btSoftBody::Face::m_n, btSoftBody::Node::m_n, m_nodes, btSoftBody::Face::m_normal, btSoftBody::Node::m_x, SIMD_EPSILON, and btAlignedObjectArray< T >::size().
Referenced by integrateMotion(), scale(), and transform().
void btSoftBody::updatePose | ( | ) |
Definition at line 2076 of file btSoftBody.cpp.
References btMatrix3x3::determinant(), eps, evaluateCom(), i, btSoftBody::Pose::m_aqq, btSoftBody::Pose::m_bframe, m_cfg, btSoftBody::Pose::m_com, m_nodes, btSoftBody::Pose::m_pos, m_pose, btSoftBody::Pose::m_rot, btSoftBody::Pose::m_scl, btSoftBody::Pose::m_wgh, btSoftBody::Config::maxvolume, Mul(), PolarDecompose(), SIMD_EPSILON, btAlignedObjectArray< T >::size(), and btMatrix3x3::transpose().
Referenced by predictMotion().
void btSoftBody::VSolve_Links | ( | btSoftBody * | psb, |
btScalar | kst | ||
) | [static] |
Definition at line 2858 of file btSoftBody.cpp.
References btDot(), i, btSoftBody::Link::m_c2, btSoftBody::Link::m_c3, btSoftBody::Node::m_im, m_links, btSoftBody::Link::m_n, btSoftBody::Node::m_v, and btAlignedObjectArray< T >::size().
Referenced by getSolver().
Definition at line 652 of file btSoftBody.h.
Referenced by appendAnchor(), btSoftBodyHelpers::Draw(), indicesToPointers(), pointersToIndices(), PSolve_Anchors(), serialize(), and solveConstraints().
btVector3 btSoftBody::m_bounds[2] |
Definition at line 658 of file btSoftBody.h.
Referenced by getAabb(), btSoftBodyCollisionShape::getAabb(), initDefaults(), and updateBounds().
Definition at line 659 of file btSoftBody.h.
Referenced by appendFace(), appendLink(), appendTetra(), initDefaults(), predictMotion(), refine(), setMass(), and setTotalMass().
Definition at line 662 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::DrawClusterTree(), predictMotion(), btSoftColliders::CollideCL_SS::Process(), btSoftColliders::CollideCL_RS::Process(), releaseCluster(), and updateClusters().
Definition at line 642 of file btSoftBody.h.
Referenced by applyForces(), defaultCollisionHandler(), initDefaults(), predictMotion(), btSoftColliders::CollideCL_SS::Process(), PSolve_Anchors(), serialize(), setSolver(), solveClusters(), solveConstraints(), staticSolve(), and updatePose().
Definition at line 665 of file btSoftBody.h.
Referenced by generateClusters().
Definition at line 663 of file btSoftBody.h.
Referenced by appendAngularJoint(), appendLinearJoint(), applyClusters(), clusterCom(), clusterCount(), dampClusters(), btSoftBodyHelpers::Draw(), generateClusters(), initializeClusters(), releaseCluster(), releaseClusters(), serialize(), and updateClusters().
btAlignedObjectArray<class btCollisionObject*> btSoftBody::m_collisionDisabledObjects |
Definition at line 72 of file btSoftBody.h.
Referenced by appendAnchor(), and btSoftRigidCollisionAlgorithm::processCollision().
Definition at line 650 of file btSoftBody.h.
Referenced by appendFace(), applyForces(), checkFace(), btSoftBodyHelpers::CreateFromTetGenData(), cutLink(), btSoftBodyHelpers::Draw(), generateClusters(), getVolume(), indicesToPointers(), initializeFaceTree(), pointersToIndices(), predictMotion(), randomizeConstraints(), rayTest(), CcdPhysicsEnvironment::rayTest(), btSoftRigidDynamicsWorld::rayTestSingle(), refine(), serialize(), setTotalMass(), updateConstants(), and updateNormals().
Definition at line 661 of file btSoftBody.h.
Referenced by defaultCollisionHandler(), btSoftBodyHelpers::DrawFaceTree(), initializeFaceTree(), predictMotion(), and rayTest().
Definition at line 667 of file btSoftBody.h.
Referenced by CcdPhysicsEnvironment::createConstraint(), initDefaults(), and transform().
Definition at line 655 of file btSoftBody.h.
Referenced by appendAngularJoint(), appendLinearJoint(), cleanupClusters(), btSoftBodyHelpers::Draw(), prepareClusters(), serialize(), solveClusters(), and ~btSoftBody().
Definition at line 649 of file btSoftBody.h.
Referenced by appendLink(), checkLink(), btSoftBodyHelpers::CreateFromTetGenData(), cutLink(), btSoftBodyHelpers::Draw(), generateBendingConstraints(), indicesToPointers(), pointersToIndices(), PSolve_Links(), randomizeConstraints(), refine(), serialize(), solveConstraints(), updateConstants(), and VSolve_Links().
Definition at line 656 of file btSoftBody.h.
Referenced by appendFace(), appendLink(), appendMaterial(), appendNode(), appendTetra(), serialize(), and ~btSoftBody().
Definition at line 660 of file btSoftBody.h.
Referenced by appendNode(), btSoftBody(), cutLink(), defaultCollisionHandler(), btSoftBodyHelpers::DrawNodeTree(), predictMotion(), refine(), scale(), transform(), and updateBounds().
Definition at line 648 of file btSoftBody.h.
Referenced by addForce(), addVelocity(), appendAnchor(), appendFace(), appendLink(), appendNode(), appendTetra(), applyClusters(), CcdPhysicsController::ApplyForce(), applyForces(), btSoftBody(), checkFace(), checkLink(), btDefaultSoftBodySolver::copySoftBodyToVertexBuffer(), btSoftBodyHelpers::CreateFromTetGenData(), cutLink(), btSoftBodyHelpers::Draw(), btSoftBodyHelpers::DrawInfos(), evaluateCom(), findClosestNode(), generateBendingConstraints(), generateClusters(), getMass(), getTotalMass(), getVolume(), indicesToPointers(), pointersToIndices(), predictMotion(), refine(), scale(), serialize(), setMass(), setPose(), setTotalMass(), setVelocity(), setVolumeMass(), solveConstraints(), transform(), updateConstants(), updateNormals(), and updatePose().
Definition at line 647 of file btSoftBody.h.
Referenced by appendNote(), btSoftBodyHelpers::Draw(), indicesToPointers(), and pointersToIndices().
Definition at line 644 of file btSoftBody.h.
Referenced by applyForces(), btSoftBodyHelpers::DrawFrame(), evaluateCom(), initDefaults(), predictMotion(), serialize(), setPose(), CcdPhysicsController::SynchronizeMotionStates(), and updatePose().
Definition at line 653 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::Draw(), predictMotion(), and PSolve_RContacts().
Definition at line 654 of file btSoftBody.h.
Referenced by predictMotion(), and PSolve_SContacts().
Definition at line 75 of file btSoftBody.h.
Referenced by getSoftBodySolver(), and setSoftBodySolver().
Definition at line 643 of file btSoftBody.h.
Referenced by applyClusters(), applyForces(), cleanupClusters(), predictMotion(), prepareClusters(), btSoftColliders::CollideCL_SS::Process(), btSoftColliders::CollideCL_RS::Process(), PSolve_Anchors(), PSolve_RContacts(), solveClusters(), solveConstraints(), and updateClusters().
void* btSoftBody::m_tag |
Definition at line 645 of file btSoftBody.h.
Referenced by initDefaults().
Definition at line 651 of file btSoftBody.h.
Referenced by appendTetra(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::Draw(), generateClusters(), serialize(), setVolumeDensity(), and setVolumeMass().
Definition at line 657 of file btSoftBody.h.
Referenced by initDefaults().
Definition at line 686 of file btSoftBody.h.
btVector3 btSoftBody::m_windVelocity |
Definition at line 669 of file btSoftBody.h.
Referenced by applyForces(), getWindVelocity(), initDefaults(), and setWindVelocity().
Definition at line 646 of file btSoftBody.h.
Referenced by applyForces(), checkContact(), getWorldInfo(), predictMotion(), and updateBounds().