Blender
V3.3
|
#include <btSoftBody.h>
Classes | |
struct | AJoint |
struct | Anchor |
struct | Body |
struct | CJoint |
struct | Cluster |
struct | Config |
struct | DeformableFaceNodeContact |
class | DeformableFaceRigidContact |
class | DeformableNodeRigidAnchor |
class | DeformableNodeRigidContact |
class | DeformableRigidContact |
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 | 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 |
struct | TetraScratch |
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) |
template<typename T > | |
static T | BaryEval (const T &a, const T &b, const T &c, const btVector3 &coord) |
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 74 of file btSoftBody.h.
typedef void(* btSoftBody::psolver_t) (btSoftBody *, btScalar, btScalar) |
Definition at line 773 of file btSoftBody.h.
Definition at line 782 of file btSoftBody.h.
Definition at line 775 of file btSoftBody.h.
Definition at line 780 of file btSoftBody.h.
typedef btAlignedObjectArray<Joint*> btSoftBody::tJointArray |
Definition at line 786 of file btSoftBody.h.
Definition at line 778 of file btSoftBody.h.
Definition at line 779 of file btSoftBody.h.
Definition at line 785 of file btSoftBody.h.
Definition at line 777 of file btSoftBody.h.
Definition at line 776 of file btSoftBody.h.
Definition at line 152 of file btSoftBody.h.
Definition at line 783 of file btSoftBody.h.
Definition at line 220 of file btSoftBody.h.
Definition at line 784 of file btSoftBody.h.
Definition at line 787 of file btSoftBody.h.
Definition at line 781 of file btSoftBody.h.
Definition at line 221 of file btSoftBody.h.
Definition at line 151 of file btSoftBody.h.
typedef void(* btSoftBody::vsolver_t) (btSoftBody *, btScalar) |
Definition at line 774 of file btSoftBody.h.
btSoftBody::btSoftBody | ( | btSoftBodyWorldInfo * | worldInfo, |
int | node_count, | ||
const btVector3 * | x, | ||
const btScalar * | m | ||
) |
Definition at line 130 of file btSoftBody.cpp.
References appendMaterial(), btVector3, btSoftBody::fMaterial::Default, btDbvtAabbMm::FromCR(), getCollisionShape(), initDefaults(), btDbvt::insert(), m_fdbvnt, 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, m_X, btAlignedObjectArray< T >::resize(), setCollisionQuadrature(), updateBounds(), x, and ZeroInitialize().
btSoftBody::btSoftBody | ( | btSoftBodyWorldInfo * | worldInfo | ) |
Definition at line 164 of file btSoftBody.cpp.
References initDefaults().
|
virtual |
Definition at line 236 of file btSoftBody.cpp.
References btAlignedFree, m_collisionShape, m_fdbvnt, m_joints, m_materials, releaseClusters(), and btAlignedObjectArray< T >::size().
Definition at line 793 of file btSoftBody.cpp.
References btSoftBody::Config::aeromodel, btSoftBodyWorldInfo::air_density, ApplyClampedForce(), btDot(), btSqrt(), btVector3, EvaluateMedium(), btSoftBody::eAeroModel::F_OneSided, btSoftBody::eAeroModel::F_TwoSided, btSoftBody::eAeroModel::F_TwoSidedLiftDrag, btSoftBody::Config::kDG, btSoftBody::Config::kLF, m_cfg, btSoftBody::sMedium::m_density, btSoftBody::Node::m_f, m_faces, btSoftBody::Node::m_im, btSoftBody::Face::m_n, btSoftBody::Face::m_normal, btSoftBody::Face::m_ra, m_sst, btSoftBody::Node::m_v, btSoftBody::sMedium::m_velocity, m_worldInfo, btSoftBody::Node::m_x, btSoftBody::SolverState::sdt, SIMD_EPSILON, v, and x.
Referenced by applyForces().
Definition at line 704 of file btSoftBody.cpp.
References btSoftBody::Config::aeromodel, btSoftBodyWorldInfo::air_density, ApplyClampedForce(), btAssert, btDot(), btSqrt(), btVector3, EvaluateMedium(), btSoftBody::eAeroModel::F_TwoSided, btSoftBody::Config::kDG, btSoftBody::Config::kLF, m_cfg, btSoftBody::sMedium::m_density, m_nodes, m_sst, btSoftBody::sMedium::m_velocity, m_worldInfo, btSoftBody::SolverState::sdt, SIMD_EPSILON, btAlignedObjectArray< T >::size(), btSoftBody::eAeroModel::V_OneSided, btSoftBody::eAeroModel::V_Point, btSoftBody::eAeroModel::V_TwoSided, and btSoftBody::eAeroModel::V_TwoSidedLiftDrag.
Referenced by applyForces().
Definition at line 689 of file btSoftBody.cpp.
References m_nodes, and btAlignedObjectArray< T >::size().
Definition at line 695 of file btSoftBody.cpp.
References btSoftBody::Node::m_f, btSoftBody::Node::m_im, m_nodes, and node.
Definition at line 889 of file btSoftBody.cpp.
References m_nodes, and btAlignedObjectArray< T >::size().
Referenced by predictMotion().
Definition at line 909 of file btSoftBody.cpp.
References btSoftBody::Node::m_im, m_nodes, btSoftBody::Node::m_v, and node.
void btSoftBody::advanceDeformation | ( | ) |
Definition at line 3538 of file btSoftBody.cpp.
References m_tetras, m_tetraScratches, m_tetraScratchesTn, btAlignedObjectArray< T >::size(), and updateDeformation().
void btSoftBody::appendAnchor | ( | int | node, |
btRigidBody * | body, | ||
bool | disableCollisionBetweenLinkedBodies = false , |
||
btScalar | influence = 1 |
||
) |
Definition at line 500 of file btSoftBody.cpp.
void btSoftBody::appendAnchor | ( | int | node, |
btRigidBody * | body, | ||
const btVector3 & | localPivot, | ||
bool | disableCollisionBetweenLinkedBodies = false , |
||
btScalar | influence = 1 |
||
) |
Definition at line 507 of file btSoftBody.cpp.
References Freestyle::a, btAlignedObjectArray< T >::findLinearSearch(), m_anchors, m_collisionDisabledObjects, m_nodes, node, btAlignedObjectArray< T >::push_back(), and btAlignedObjectArray< T >::size().
void btSoftBody::appendAngularJoint | ( | const AJoint::Specs & | specs, |
Body | body = Body() |
||
) |
Definition at line 677 of file btSoftBody.cpp.
References appendAngularJoint(), and m_clusters.
void btSoftBody::appendAngularJoint | ( | const AJoint::Specs & | specs, |
btSoftBody * | body | ||
) |
Definition at line 683 of file btSoftBody.cpp.
References appendAngularJoint(), and m_clusters.
void btSoftBody::appendAngularJoint | ( | const AJoint::Specs & | specs, |
Cluster * | body0, | ||
Body | body1 | ||
) |
Definition at line 662 of file btSoftBody.cpp.
References btSoftBody::AJoint::Specs::axis, btAlignedAlloc, btSoftBody::Joint::Specs::cfm, btSoftBody::Joint::Specs::erp, btSoftBody::AJoint::Specs::icontrol, 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::appendDeformableAnchor | ( | int | node, |
btMultiBodyLinkCollider * | link | ||
) |
Definition at line 580 of file btSoftBody.cpp.
References btCollisionShape, btCross(), btMatrix3x3, btTransform, btVector3, Freestyle::c, Diagonal(), btSparseSdf< CELLSIZE >::Evaluate(), findJacobian(), generateUnitOrthogonalVector(), inverse(), btSoftBody::Config::kCHR, btSoftBody::Config::kDF, btSoftBody::Config::kKHR, m_cfg, m_deformableAnchors, btMultiBodyJacobianData::m_deltaVelocitiesUnitImpulse, btSoftBody::Node::m_im, btMultiBodyJacobianData::m_jacobians, btMultiBodyLinkCollider::m_multiBody, m_nodes, btSoftBodyWorldInfo::m_sparsesdf, m_worldInfo, btSoftBody::Node::m_x, node, normal, OuterProduct(), and rot.
void btSoftBody::appendDeformableAnchor | ( | int | node, |
btRigidBody * | body | ||
) |
Definition at line 527 of file btSoftBody.cpp.
References btCollisionShape, btMatrix3x3, btTransform, btVector3, Freestyle::c, btSparseSdf< CELLSIZE >::Evaluate(), btRigidBody::getCollisionShape(), btRigidBody::getInvInertiaTensorWorld(), btRigidBody::getInvMass(), ImpulseMatrix(), btSoftBody::Config::kCHR, btSoftBody::Config::kDF, btSoftBody::Config::kKHR, m_cfg, m_deformableAnchors, btSoftBody::Node::m_im, m_nodes, btSoftBodyWorldInfo::m_sparsesdf, m_worldInfo, btSoftBody::Node::m_x, and node.
Definition at line 428 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(), cutLink(), btSoftBodyHelpers::generateBoundaryFaces(), and refine().
Definition at line 444 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, |
Body | body = Body() |
||
) |
Definition at line 650 of file btSoftBody.cpp.
References appendLinearJoint(), and m_clusters.
void btSoftBody::appendLinearJoint | ( | const LJoint::Specs & | specs, |
btSoftBody * | body | ||
) |
Definition at line 656 of file btSoftBody.cpp.
References appendLinearJoint(), and m_clusters.
void btSoftBody::appendLinearJoint | ( | const LJoint::Specs & | specs, |
Cluster * | body0, | ||
Body | body1 | ||
) |
Definition at line 636 of file btSoftBody.cpp.
References btAlignedAlloc, btSoftBody::Joint::Specs::cfm, btSoftBody::Joint::Specs::erp, 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().
Definition at line 388 of file btSoftBody.cpp.
References l, m_links, m_materials, btAlignedObjectArray< T >::push_back(), and ZeroInitialize().
Referenced by appendLink(), btSoftBodyHelpers::CreateFromConvexHull(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromTriMesh(), btSoftBodyHelpers::CreateFromVtkFile(), btSoftBodyHelpers::CreatePatch(), btSoftBodyHelpers::CreatePatchUV(), btSoftBodyHelpers::CreateRope(), cutLink(), generateBendingConstraints(), and refine().
Definition at line 402 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 411 of file btSoftBody.cpp.
References appendLink(), checkLink(), l, blender::math::length(), m_bUpdateRtCst, m_links, and btAlignedObjectArray< T >::size().
btSoftBody::Material * btSoftBody::appendMaterial | ( | ) |
Definition at line 298 of file btSoftBody.cpp.
References btAlignedAlloc, m_materials, btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::size(), and ZeroInitialize().
Referenced by btSoftBody().
Definition at line 368 of file btSoftBody.cpp.
References btAlignedObjectArray< T >::capacity(), btDbvtAabbMm::FromCR(), getCollisionShape(), 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(), x, 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 310 of file btSoftBody.cpp.
References Freestyle::c, 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().
Definition at line 357 of file btSoftBody.cpp.
References appendNote(), btSoftBody::Face::m_n, and w().
Definition at line 347 of file btSoftBody.cpp.
References appendNote(), and w().
Definition at line 339 of file btSoftBody.cpp.
References appendNote().
Definition at line 468 of file btSoftBody.cpp.
References m_materials, m_tetras, btAlignedObjectArray< T >::push_back(), t, and ZeroInitialize().
Referenced by appendTetra(), btSoftBodyHelpers::CreateFromTetGenData(), and btSoftBodyHelpers::CreateFromVtkFile().
Definition at line 482 of file btSoftBody.cpp.
References appendTetra(), m_bUpdateRtCst, m_nodes, m_tetras, btAlignedObjectArray< T >::size(), t, and VolumeOf().
Definition at line 3358 of file btSoftBody.cpp.
References BT_PROFILE, btCross(), btVector3, Freestyle::c, m_clusters, m_nodes, m_sst, btAlignedObjectArray< T >::resize(), btSoftBody::SolverState::sdt, btAlignedObjectArray< T >::size(), v, w(), and x.
Referenced by solveConstraints().
void btSoftBody::applyForces | ( | ) |
Definition at line 3717 of file btSoftBody.cpp.
References addAeroForceToFace(), addAeroForceToNode(), BT_PROFILE, btFabs(), getVolume(), btSoftBody::Config::kDG, btSoftBody::Config::kLF, btSoftBody::Config::kPR, btSoftBody::Config::kVC, btSoftBody::Node::m_area, m_cfg, btSoftBody::Node::m_f, m_faces, btSoftBody::Node::m_im, btSoftBody::Node::m_n, m_nodes, m_pose, btSoftBody::Pose::m_volume, m_windVelocity, and btAlignedObjectArray< T >::size().
Referenced by predictMotion().
Definition at line 1287 of file btSoftBody.h.
References BaryEval(), btDot(), btMax(), btMin(), btSwap(), btVector3, Freestyle::c, I, indices, l, btSoftBody::Node::m_constrained, m_faceNodeContacts, btSoftBody::Face::m_n, m_repulsionStiffness, btSoftBody::Node::m_v, btSoftBody::Node::m_x, NEXTRAND, node, OVERLAP_REDUCTION_FACTOR, SIMD_EPSILON, vn, and w().
Referenced by btDeformableMultiBodyDynamicsWorld::applyRepulsionForce(), and btDeformableMultiBodyDynamicsWorld::performGeometricCollisions().
|
inlinestatic |
Definition at line 1279 of file btSoftBody.h.
References Freestyle::a, usdtokens::b(), and Freestyle::c.
Referenced by applyRepulsionForce(), checkDeformableFaceContact(), and PSolve_SContacts().
btSoftBody::BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) |
|
virtual |
Definition at line 4296 of file btSoftBody.cpp.
References btSoftBodyData.
bool btSoftBody::checkContact | ( | const btCollisionObjectWrapper * | colObjWrap, |
const btVector3 & | x, | ||
btScalar | margin, | ||
btSoftBody::sCti & | cti | ||
) | const |
Definition at line 2729 of file btSoftBody.cpp.
References btCollisionShape, btDot(), btTransform, btVector3, btSparseSdf< CELLSIZE >::Evaluate(), btCollisionObjectWrapper::getCollisionObject(), btCollisionObjectWrapper::getCollisionShape(), btCollisionObjectWrapper::getWorldTransform(), btSoftBody::sCti::m_colObj, btSoftBody::sCti::m_normal, btSoftBody::sCti::m_offset, btSoftBodyWorldInfo::m_sparsesdf, m_worldInfo, and x.
Referenced by btSoftColliders::CollideSDF_RS::DoNode().
bool btSoftBody::checkDeformableContact | ( | const btCollisionObjectWrapper * | colObjWrap, |
const btVector3 & | x, | ||
btScalar | margin, | ||
btSoftBody::sCti & | cti, | ||
bool | predict = false |
||
) | const |
Definition at line 2758 of file btSoftBody.cpp.
References btCollisionObject, btCollisionShape, btTransform, btVector3, btSparseSdf< CELLSIZE >::Evaluate(), btCollisionObjectWrapper::getCollisionObject(), btCollisionObjectWrapper::getCollisionShape(), btCollisionObjectWrapper::getWorldTransform(), btSoftBody::sCti::m_colObj, btSoftBody::sCti::m_normal, btSoftBody::sCti::m_offset, btCollisionObjectWrapper::m_preTransform, btSoftBodyWorldInfo::m_sparsesdf, m_worldInfo, NULL, and x.
Referenced by btSoftColliders::CollideSDF_RD::DoNode().
bool btSoftBody::checkDeformableFaceContact | ( | const btCollisionObjectWrapper * | colObjWrap, |
Face & | f, | ||
btVector3 & | contact_point, | ||
btVector3 & | bary, | ||
btScalar | margin, | ||
btSoftBody::sCti & | cti, | ||
bool | predict = false |
||
) | const |
Definition at line 2806 of file btSoftBody.cpp.
References BaryEval(), btCollisionObject, btCollisionShape, btConvexShape(), btTransform, btTriangleShape(), btVector3, btGjkEpaSolver2::sResults::distance, btSparseSdf< CELLSIZE >::Evaluate(), getBarycentric(), btCollisionObjectWrapper::getCollisionObject(), btCollisionObjectWrapper::getCollisionShape(), btCollisionObjectWrapper::getWorldTransform(), btSoftBody::sCti::m_colObj, btSoftBody::Face::m_n, btSoftBody::sCti::m_normal, btSoftBody::sCti::m_offset, btSoftBody::Face::m_pcontact, btCollisionObjectWrapper::m_preTransform, btSoftBody::Node::m_q, m_quads, btSoftBodyWorldInfo::m_sparsesdf, m_worldInfo, btSoftBody::Node::m_x, btGjkEpaSolver2::sResults::normal, NULL, btGjkEpaSolver2::SignedDistance(), SIMD_INFINITY, btAlignedObjectArray< T >::size(), and btGjkEpaSolver2::sResults::witnesses.
Referenced by btSoftColliders::CollideSDF_RDF::DoNode().
bool btSoftBody::checkFace | ( | int | node0, |
int | node1, | ||
int | node2 | ||
) | const |
Definition at line 274 of file btSoftBody.cpp.
References Freestyle::c, m_faces, btSoftBody::Face::m_n, m_nodes, and btAlignedObjectArray< T >::size().
Definition at line 258 of file btSoftBody.cpp.
References l, m_links, and btAlignedObjectArray< T >::size().
bool btSoftBody::checkLink | ( | int | node0, |
int | node1 | ||
) | const |
void btSoftBody::cleanupClusters | ( | ) |
Definition at line 3326 of file btSoftBody.cpp.
References btAlignedFree, m_joints, m_sst, btAlignedObjectArray< T >::remove(), btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
Definition at line 1334 of file btSoftBody.cpp.
References clusterDAImpulse(), clusterVAImpulse(), btSoftBody::Impulse::m_asDrift, btSoftBody::Impulse::m_asVelocity, btSoftBody::Impulse::m_drift, and btSoftBody::Impulse::m_velocity.
Definition at line 1265 of file btSoftBody.cpp.
References btVector3, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_masses, and btSoftBody::Cluster::m_nodes.
Referenced by clusterCom(), initializeClusters(), and updateClusters().
btVector3 btSoftBody::clusterCom | ( | int | cluster | ) | const |
Definition at line 1276 of file btSoftBody.cpp.
References clusterCom(), and m_clusters.
int btSoftBody::clusterCount | ( | ) | const |
Definition at line 1259 of file btSoftBody.cpp.
References m_clusters, and btAlignedObjectArray< T >::size().
Definition at line 1326 of file btSoftBody.cpp.
References btVector3, btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_invwi, and btSoftBody::Cluster::m_ndimpulses.
Referenced by btSoftBody::Body::applyDAImpulse(), and clusterAImpulse().
Definition at line 1341 of file btSoftBody.cpp.
References btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_imass, and btSoftBody::Cluster::m_ndimpulses.
Referenced by btSoftBody::Body::applyDCImpulse().
|
static |
Definition at line 1300 of file btSoftBody.cpp.
References btCross(), btVector3, btSoftBody::Cluster::m_dimpulses, btSoftBody::Cluster::m_imass, btSoftBody::Cluster::m_invwi, and btSoftBody::Cluster::m_ndimpulses.
Referenced by btSoftBody::Body::applyDImpulse(), and clusterImpulse().
|
static |
Definition at line 1310 of file btSoftBody.cpp.
References clusterDImpulse(), clusterVImpulse(), btSoftBody::Impulse::m_asDrift, btSoftBody::Impulse::m_asVelocity, btSoftBody::Impulse::m_drift, and btSoftBody::Impulse::m_velocity.
Definition at line 1317 of file btSoftBody.cpp.
References btVector3, btSoftBody::Cluster::m_av, btSoftBody::Cluster::m_invwi, btSoftBody::Cluster::m_nvimpulses, and btSoftBody::Cluster::m_vimpulses.
Referenced by btSoftBody::Body::applyVAImpulse(), and clusterAImpulse().
Definition at line 1282 of file btSoftBody.cpp.
References btCross(), btSoftBody::Cluster::m_av, and btSoftBody::Cluster::m_lv.
|
static |
Definition at line 1288 of file btSoftBody.cpp.
References btCross(), btVector3, 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 1959 of file btSoftBody.cpp.
Definition at line 1965 of file btSoftBody.cpp.
References appendFace(), appendLink(), appendNode(), btVector3, l, Lerp(), m_faces, m_links, m_n, btSoftBody::Face::m_n, m_ndbvt, m_nodes, btSoftBody::Node::m_v, MatchEdge(), btAlignedObjectArray< T >::pop_back(), btDbvt::remove(), btAlignedObjectArray< T >::size(), v, and x.
Referenced by cutLink().
void btSoftBody::dampClusters | ( | ) |
Definition at line 3409 of file btSoftBody.cpp.
References btCross(), btVector3, Freestyle::c, m_clusters, btSoftBody::Node::m_im, btSoftBody::Node::m_v, and btAlignedObjectArray< T >::size().
Referenced by solveConstraints().
void btSoftBody::defaultCollisionHandler | ( | btSoftBody * | psb | ) |
Definition at line 4134 of file btSoftBody.cpp.
References BT_PROFILE, calculateNormalCone(), btSoftBody::fCollision::CL_SELF, btSoftBody::fCollision::CL_SS, btDbvt::collideTT(), btSoftBody::Config::collisions, getCollisionShape(), m_cfg, m_fdbvnt, m_fdbvt, m_ndbvt, btDbvt::m_root, m_softSoftCollision, m_tetras, btSoftColliders::CollideVF_SS::mrg, btSoftColliders::CollideVF_DD::mrg, btSoftColliders::CollideFF_DD::mrg, btSoftColliders::CollideCL_SS::ProcessSoftSoft(), btSoftColliders::CollideVF_SS::psb, btSoftColliders::CollideVF_DD::psb, btSoftColliders::CollideFF_DD::psb, btDbvt::selfCollideT(), btAlignedObjectArray< T >::size(), btSoftBody::fCollision::SVSmask, btSoftColliders::CollideVF_DD::useFaceNormal, btSoftColliders::CollideFF_DD::useFaceNormal, useSelfCollision(), btSoftBody::fCollision::VF_DD, and btSoftBody::fCollision::VF_SS.
void btSoftBody::defaultCollisionHandler | ( | const btCollisionObjectWrapper * | pcoWrap | ) |
Definition at line 4052 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btTransform, btVector3, btSoftBody::fCollision::CL_RS, CO_FEATHERSTONE_LINK, CO_RIGID_BODY, btDbvt::collideTV(), btSoftBody::Config::collisions, btSoftColliders::CollideSDF_RS::dynmargin, btSoftColliders::CollideSDF_RD::dynmargin, btSoftColliders::CollideSDF_RDF::dynmargin, btDbvtAabbMm::FromMM(), btCollisionObjectWrapper::getCollisionObject(), getCollisionShape(), btCollisionObjectWrapper::getCollisionShape(), btCollisionObjectWrapper::getWorldTransform(), isActive(), blender::math::length(), m_cfg, btSoftColliders::CollideSDF_RS::m_colObj1Wrap, btSoftColliders::CollideSDF_RD::m_colObj1Wrap, btSoftColliders::CollideSDF_RDF::m_colObj1Wrap, m_fdbvt, m_ndbvt, btSoftColliders::CollideSDF_RS::m_rigidBody, btSoftColliders::CollideSDF_RD::m_rigidBody, btSoftColliders::CollideSDF_RDF::m_rigidBody, btDbvt::m_root, btSoftColliders::CollideCL_RS::ProcessColObj(), btSoftColliders::CollideSDF_RS::psb, btSoftColliders::CollideSDF_RD::psb, btSoftColliders::CollideSDF_RDF::psb, btSoftBody::fCollision::RVSmask, btSoftBody::fCollision::SDF_MDF, btSoftBody::fCollision::SDF_RD, btSoftBody::fCollision::SDF_RDF, btSoftBody::fCollision::SDF_RDN, btSoftBody::fCollision::SDF_RS, btSoftColliders::CollideSDF_RS::stamargin, btSoftColliders::CollideSDF_RD::stamargin, btSoftColliders::CollideSDF_RDF::stamargin, and btRigidBody::upcast().
Referenced by btSoftMultiBodyDynamicsWorld::internalSingleStepSimulation(), btSoftRigidDynamicsWorld::internalSingleStepSimulation(), btDefaultSoftBodySolver::processCollision(), btDeformableBodySolver::processCollision(), and btDeformableMultiBodyDynamicsWorld::softBodySelfCollision().
btVector3 btSoftBody::evaluateCom | ( | ) | const |
Definition at line 2716 of file btSoftBody.cpp.
References btVector3, 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 1353 of file btSoftBody.cpp.
References appendLink(), btAssert, blender::math::distance(), btAlignedObjectArray< T >::findLinearSearch(), IDX, m_links, m_n, 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 1502 of file btSoftBody.cpp.
References btAlignedAlloc, btMin(), btSwap(), btVector3, Freestyle::c, ClusterMetric(), btAlignedObjectArray< T >::findLinearSearch(), initializeClusters(), length2(), m_clusterConnectivity, m_clusters, btSoftBody::Cluster::m_collide, m_faces, m_n, btSoftBody::Cluster::m_nodes, m_nodes, m_tetras, btAlignedObjectArray< T >::push_back(), releaseCluster(), releaseClusters(), btAlignedObjectArray< T >::resize(), SIMD_EPSILON, btAlignedObjectArray< T >::size(), updateClusters(), and w().
void btSoftBody::geometricCollisionHandler | ( | btSoftBody * | psb | ) |
Definition at line 4234 of file btSoftBody.cpp.
References calculateNormalCone(), btDbvt::collideTT(), btSoftColliders::CollideCCD::dt, m_fdbvnt, m_fdbvt, m_ndbvt, btDbvt::m_root, m_sst, m_tetras, btSoftColliders::CollideCCD::mrg, btSoftColliders::CollideCCD::psb, SAFE_EPSILON, btSoftBody::SolverState::sdt, btDbvt::selfCollideT(), btAlignedObjectArray< T >::size(), btSoftColliders::CollideCCD::useFaceNormal, and useSelfCollision().
Definition at line 1145 of file btSoftBody.h.
References m_bounds.
Referenced by btSoftBodyTriangleCallback::setTimeStepAndCounters().
|
inline |
Definition at line 1011 of file btSoftBody.h.
References btVector3, getMass(), getTotalMass(), m_nodes, and btAlignedObjectArray< T >::size().
Referenced by getRigidTransform(), and setAngularVelocity().
btVector3 btSoftBody::getLinearVelocity | ( | ) |
Definition at line 1030 of file btSoftBody.cpp.
References btVector3, getTotalMass(), m_nodes, and btAlignedObjectArray< T >::size().
Referenced by setAngularVelocity(), and setLinearVelocity().
btScalar btSoftBody::getMass | ( | int | node | ) | const |
Definition at line 926 of file btSoftBody.cpp.
Referenced by getCenterOfMass(), getTotalMass(), and refine().
btScalar btSoftBody::getRestLengthScale | ( | ) |
Definition at line 1160 of file btSoftBody.cpp.
References m_restLengthScale.
btTransform btSoftBody::getRigidTransform | ( | ) |
Definition at line 1063 of file btSoftBody.cpp.
References btMatrix3x3, btTransform, btVector3, getCenterOfMass(), m_nodes, m_X, OuterProduct(), R, singularValueDecomposition(), btAlignedObjectArray< T >::size(), t, U, and V.
Referenced by transformTo().
|
inline |
Definition at line 1111 of file btSoftBody.h.
References m_softBodySolver.
Referenced by btSoftRigidCollisionAlgorithm::processCollision(), and btSoftSoftCollisionAlgorithm::processCollision().
|
inline |
Definition at line 1119 of file btSoftBody.h.
References m_softBodySolver.
|
static |
Definition at line 4008 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().
|
static |
Definition at line 4028 of file btSoftBody.cpp.
References btSoftBody::eVSolver::Linear, and VSolve_Links().
btScalar btSoftBody::getTotalMass | ( | ) | const |
Definition at line 932 of file btSoftBody.cpp.
References getMass(), m_nodes, and btAlignedObjectArray< T >::size().
Referenced by getCenterOfMass(), getLinearVelocity(), setPose(), and setTotalMass().
btScalar btSoftBody::getVolume | ( | ) | const |
Definition at line 1240 of file btSoftBody.cpp.
References btCross(), btDot(), btVector3, 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 4291 of file btSoftBody.cpp.
References m_windVelocity.
|
inline |
Definition at line 862 of file btSoftBody.h.
References m_worldInfo.
Referenced by btSoftBodyTriangleCallback::clearCache(), and btDeformableMultiBodyDynamicsWorld::integrateTransforms().
void btSoftBody::indicesToPointers | ( | const int * | map = 0 | ) |
Definition at line 2440 of file btSoftBody.cpp.
References IDX2PTR, m_anchors, m_faces, m_links, m_n, m_node, m_nodes, m_notes, and btAlignedObjectArray< T >::size().
Referenced by appendNode().
void btSoftBody::initDefaults | ( | ) |
for now, create a collision shape internally
Definition at line 170 of file btSoftBody.cpp.
References btSoftBody::Config::aeromodel, btVector3, btSoftBody::Config::citerations, CO_SOFT_BODY, btSoftBody::Config::collisions, btSoftBody::fCollision::Default, btSoftBody::Config::diterations, btSoftBody::Config::drag, 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, m_collisionFlags, m_collisionShape, btSoftBody::Pose::m_com, m_dampingCoefficient, m_fdbvnt, m_gravityFactor, m_internalType, m_maxSpeedSquared, btSoftBody::Config::m_maxStress, m_pose, m_repulsionStiffness, m_restLengthScale, btSoftBody::Pose::m_rot, btSoftBody::Pose::m_scl, m_sleepingThreshold, m_softSoftCollision, m_tag, m_timeacc, m_useSelfCollision, btSoftBody::Pose::m_volume, m_windVelocity, m_worldTransform, btSoftBody::Config::maxvolume, btSoftBody::Config::piterations, btSoftBody::eSolverPresets::Positions, setSolver(), btSoftBody::Config::timescale, btSoftBody::eAeroModel::V_Point, and btSoftBody::Config::viterations.
Referenced by btSoftBody().
void btSoftBody::initializeClusters | ( | ) |
Definition at line 3143 of file btSoftBody.cpp.
References BT_LARGE_FLOAT, btMatrix3x3, btVector3, Freestyle::c, clusterCom(), m_clusters, and btAlignedObjectArray< T >::size().
Referenced by generateClusters().
void btSoftBody::initializeDmInverse | ( | ) |
Definition at line 3448 of file btSoftBody.cpp.
References Freestyle::a, usdtokens::b(), btMatrix3x3, btVector3, Freestyle::c, m_tetras, btAlignedObjectArray< T >::size(), and t.
Referenced by btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromVtkFile(), and scale().
void btSoftBody::initializeFaceTree | ( | ) |
Definition at line 2623 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, BT_PROFILE, btAlignedAlloc, buildTreeBottomUp(), btDbvt::clear(), copyToDbvnt(), l, m_faces, m_fdbvnt, m_fdbvt, btSoftBody::Face::m_leaf, m_n, btDbvt::m_root, node, NULL, btAlignedObjectArray< T >::push_back(), rebuildNodeTree(), btAlignedObjectArray< T >::resize(), btAlignedObjectArray< T >::size(), updateFaceTree(), and VolumeOf().
Referenced by btDeformableBodySolver::predictDeformableMotion(), predictMotion(), rayFaceTest(), and rayTest().
void btSoftBody::integrateMotion | ( | ) |
Definition at line 2329 of file btSoftBody.cpp.
References updateNormals().
Referenced by btDefaultSoftBodySolver::updateSoftBodies().
void btSoftBody::interpolateRenderMesh | ( | ) |
Definition at line 3791 of file btSoftBody.cpp.
References btCross(), btVector3, m_renderNodes, m_renderNodesInterpolationWeights, m_renderNodesParents, btSoftBody::Node::m_x, m_z, normal, btAlignedObjectArray< T >::size(), and size().
Referenced by btDeformableMultiBodyDynamicsWorld::integrateTransforms().
void btSoftBody::pointersToIndices | ( | ) |
Definition at line 2397 of file btSoftBody.cpp.
References m_anchors, m_faces, m_links, m_n, m_node, m_nodes, m_notes, PTR2IDX, and btAlignedObjectArray< T >::size().
Referenced by appendNode().
Definition at line 2080 of file btSoftBody.cpp.
References addVelocity(), applyForces(), ATTRIBUTE_ALIGNED16, btMatrix3x3, btVector3, Freestyle::c, btDbvt::clear(), btSoftBody::Config::collisions, btDbvt::empty(), btDbvtAabbMm::FromCR(), getCollisionShape(), 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, btSoftBodyWorldInfo::m_maxDisplacement, 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, v, btSoftBody::SolverState::velmrg, btSoftBody::fCollision::VF_SS, VolumeOf(), and x.
Referenced by btDefaultSoftBodySolver::predictMotion().
void btSoftBody::prepareClusters | ( | int | iterations | ) |
Definition at line 3340 of file btSoftBody.cpp.
References m_joints, m_sst, btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
|
static |
Definition at line 3840 of file btSoftBody.cpp.
References Freestyle::a, BT_PROFILE, btTransform, btVector3, btSoftBody::Config::kAHR, m_anchors, m_cfg, btSoftBody::Node::m_q, m_sst, btSoftBody::Node::m_x, btSoftBody::SolverState::sdt, btAlignedObjectArray< T >::size(), and t.
Referenced by getSolver().
|
static |
Definition at line 3971 of file btSoftBody.cpp.
References Freestyle::a, usdtokens::b(), BT_PROFILE, btVector3, l, len, m_links, SIMD_EPSILON, and btAlignedObjectArray< T >::size().
Referenced by getSolver().
|
static |
Definition at line 3861 of file btSoftBody.cpp.
References btRigidBody::applyImpulse(), BT_PROFILE, btDot(), btMin(), btVector3, Freestyle::c, CO_FEATHERSTONE_LINK, CO_RIGID_BODY, btRigidBody::getVelocityInLocalPoint(), btSoftBody::sCti::m_colObj, btMultiBodyJacobianData::m_deltaVelocitiesUnitImpulse, btMultiBodyJacobianData::m_jacobians, btMultiBodyLinkCollider::m_link, btMultiBodyLinkCollider::m_multiBody, btSoftBody::sCti::m_normal, btSoftBody::sCti::m_offset, m_rcontacts, m_sst, btAlignedObjectArray< T >::resize(), btMultiBodyJacobianData::scratch_m, btMultiBodyJacobianData::scratch_r, btMultiBodyJacobianData::scratch_v, btSoftBody::SolverState::sdt, SIMD_EPSILON, btAlignedObjectArray< T >::size(), btMultiBodyLinkCollider::upcast(), and btRigidBody::upcast().
Referenced by getSolver().
|
static |
Definition at line 3936 of file btSoftBody.cpp.
References BaryEval(), BT_PROFILE, btDot(), btVector3, Freestyle::c, btSoftBody::Face::m_n, btSoftBody::Node::m_q, m_scontacts, btSoftBody::Node::m_x, ProjectOnPlane(), and btAlignedObjectArray< T >::size().
Referenced by getSolver().
void btSoftBody::randomizeConstraints | ( | ) |
Definition at line 1468 of file btSoftBody.cpp.
References btSwap(), m_faces, m_links, NEXTRAND, seed, and btAlignedObjectArray< T >::size().
Referenced by btSoftBodyHelpers::CreateFromConvexHull(), and btSoftBodyHelpers::CreateFromTriMesh().
int btSoftBody::rayFaceTest | ( | const btVector3 & | rayFrom, |
const btVector3 & | rayTo, | ||
btScalar & | mint, | ||
int & | index | ||
) | const |
Definition at line 2558 of file btSoftBody.cpp.
References btSoftBody::RayFromToCaster::m_face, m_faces, m_fdbvt, btSoftBody::RayFromToCaster::m_mint, btDbvt::m_root, and btDbvt::rayTest().
bool btSoftBody::rayFaceTest | ( | const btVector3 & | rayFrom, |
const btVector3 & | rayTo, | ||
sRayCast & | results | ||
) |
Definition at line 2035 of file btSoftBody.cpp.
References btSoftBody::sRayCast::body, btDbvt::empty(), btSoftBody::sRayCast::fraction, btSoftBody::sRayCast::index, initializeFaceTree(), m_faces, m_fdbvt, and btAlignedObjectArray< T >::size().
Referenced by btDeformableMultiBodyDynamicsWorld::rayTestSingle().
int btSoftBody::rayTest | ( | const btVector3 & | rayFrom, |
const btVector3 & | rayTo, | ||
btScalar & | mint, | ||
eFeature::_ & | feature, | ||
int & | index, | ||
bool | bcountonly | ||
) | const |
Definition at line 2483 of file btSoftBody.cpp.
References btVector3, btDbvt::empty(), btSoftBody::eFeature::Face, btSoftBody::RayFromToCaster::m_face, m_faces, m_fdbvt, btSoftBody::RayFromToCaster::m_mint, btSoftBody::Face::m_n, btSoftBody::Tetra::m_n, btDbvt::m_root, m_tetras, btSoftBody::Node::m_x, btSoftBody::RayFromToCaster::rayFromToTriangle(), btDbvt::rayTest(), btAlignedObjectArray< T >::size(), t, btSoftBody::eFeature::Tetra, v1, and v2.
Ray casting using rayFrom and rayTo in worldspace, (not direction!)
Definition at line 2020 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 btSoftMultiBodyDynamicsWorld::rayTestSingle(), and btSoftRigidDynamicsWorld::rayTestSingle().
void btSoftBody::rebuildNodeTree | ( | ) |
Definition at line 2678 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btAlignedAlloc, buildTreeBottomUp(), btDbvt::clear(), btDbvtAabbMm::FromCR(), l, btSoftBody::Node::m_leaf, m_links, m_ndbvt, m_nodes, btDbvt::m_root, btSoftBody::Node::m_x, node, NULL, btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::resize(), and btAlignedObjectArray< T >::size().
Referenced by initializeFaceTree().
void btSoftBody::refine | ( | ImplicitFn * | ifn, |
btScalar | accurary, | ||
bool | cut | ||
) |
Definition at line 1695 of file btSoftBody.cpp.
References Freestyle::a, appendFace(), appendLink(), appendNode(), usdtokens::b(), btFabs(), btSwap(), btVector3, btSoftBody::ImplicitFn::Eval(), getMass(), ImplicitSolve(), l, Lerp(), m_bUpdateRtCst, m_faces, m_links, m_n, btSoftBody::Face::m_n, m_ndbvt, m_nodes, btSoftBody::Node::m_x, map, btAlignedObjectArray< T >::pop_back(), btAlignedObjectArray< T >::push_back(), btDbvt::remove(), btAlignedObjectArray< T >::resize(), SameSign(), btAlignedObjectArray< T >::size(), t, v, and x.
void btSoftBody::releaseCluster | ( | int | index | ) |
Definition at line 1486 of file btSoftBody.cpp.
References btAlignedFree, Freestyle::c, m_cdbvt, m_clusters, btDbvt::remove(), and btAlignedObjectArray< T >::remove().
Referenced by generateClusters(), and releaseClusters().
void btSoftBody::releaseClusters | ( | ) |
Definition at line 1496 of file btSoftBody.cpp.
References m_clusters, releaseCluster(), and btAlignedObjectArray< T >::size().
Referenced by generateClusters(), and ~btSoftBody().
void btSoftBody::removeAnchor | ( | int | node | ) |
Definition at line 562 of file btSoftBody.cpp.
References Freestyle::c, m_deformableAnchors, m_nodes, and node.
void btSoftBody::resetLinkRestLengths | ( | ) |
Definition at line 1229 of file btSoftBody.cpp.
References l, blender::math::length(), m_links, and btAlignedObjectArray< T >::size().
Referenced by updateConstants().
void btSoftBody::rotate | ( | const btQuaternion & | rot | ) |
Definition at line 1130 of file btSoftBody.cpp.
References btTransform, rot, t, and transform().
Definition at line 1139 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btDbvtAabbMm::FromCR(), getCollisionShape(), initializeDmInverse(), 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().
|
virtual |
fills the dataBuffer and returns the struct name (and 0 on failure)
Definition at line 4303 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(), float(), btSerializer::getUniquePointer(), 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, btSoftBody::Pose::m_aqq, SoftBodyPoseData::m_aqq, SoftBodyNodeData::m_area, SoftBodyNodeData::m_attach, SoftBodyClusterData::m_av, SoftBodyLinkData::m_bbending, btSoftBody::Pose::m_bframe, SoftBodyPoseData::m_bframe, btSoftBodyJointData::m_bodyA, btSoftBodyJointData::m_bodyAtype, btSoftBodyJointData::m_bodyB, btSoftBodyJointData::m_bodyBtype, btSoftBody::Pose::m_bvolume, SoftBodyPoseData::m_bvolume, SoftBodyTetraData::m_c0, SoftRigidAnchorData::m_c0, SoftBodyTetraData::m_c1, SoftRigidAnchorData::m_c1, SoftBodyTetraData::m_c2, SoftRigidAnchorData::m_c2, m_cfg, btSoftBodyJointData::m_cfm, SoftBodyClusterData::m_clusterIndex, m_clusters, SoftBodyClusterData::m_collide, btSoftBody::Pose::m_com, SoftBodyPoseData::m_com, SoftBodyClusterData::m_com, SoftBodyClusterData::m_containsAnchor, btSoftBodyJointData::m_delete, SoftBodyClusterData::m_dimpulses, m_erp, btSoftBodyJointData::m_erp, m_faces, btSoftBody::Material::m_flags, 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, btSoftBody::Material::m_kAST, btSoftBody::Material::m_kLST, btSoftBody::Material::m_kVST, SoftBodyClusterData::m_ldamping, SoftBodyMaterialData::m_linearStiffness, m_links, SoftRigidAnchorData::m_localFrame, SoftBodyClusterData::m_locii, SoftBodyClusterData::m_lv, SoftBodyClusterData::m_masses, SoftBodyClusterData::m_matching, SoftBodyNodeData::m_material, SoftBodyLinkData::m_material, SoftBodyFaceData::m_material, SoftBodyTetraData::m_material, m_materials, SoftBodyClusterData::m_maxSelfCollisionImpulse, SoftBodyClusterData::m_ndamping, SoftBodyClusterData::m_ndimpulses, SoftRigidAnchorData::m_nodeIndex, SoftBodyLinkData::m_nodeIndices, SoftBodyFaceData::m_nodeIndices, SoftBodyTetraData::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, btSoftBody::Pose::m_pos, m_pose, SoftBodyNodeData::m_position, SoftBodyPoseData::m_positions, SoftBodyNodeData::m_previousPosition, btSoftBodyJointData::m_refs, btSoftBodyJointData::m_relPosition, SoftBodyFaceData::m_restArea, SoftBodyLinkData::m_restLength, SoftBodyTetraData::m_restVolume, SoftBodyPoseData::m_restVolume, SoftRigidAnchorData::m_rigidBody, btSoftBody::Pose::m_rot, SoftBodyPoseData::m_rot, SoftBodyPoseData::m_scale, btSoftBody::Pose::m_scl, SoftBodyClusterData::m_selfCollisionImpulseFactor, btSoftBodyJointData::m_split, m_tetras, SoftBodyNodeData::m_velocity, SoftBodyClusterData::m_vimpulses, btSoftBody::Pose::m_volume, SoftBodyMaterialData::m_volumeStiffness, SoftBodyPoseData::m_weights, btSoftBody::Pose::m_wgh, btSoftBody::Config::maxvolume, btSoftBody::Config::piterations, serialize(), btAlignedObjectArray< T >::size(), btSoftBody::Config::timescale, and btSoftBody::Config::viterations.
Definition at line 1052 of file btSoftBody.cpp.
References btVector3, getCenterOfMass(), getLinearVelocity(), m_nodes, and btAlignedObjectArray< T >::size().
void btSoftBody::setCollisionQuadrature | ( | int | N | ) |
Definition at line 3828 of file btSoftBody.cpp.
References btVector3, m_quads, N, and btAlignedObjectArray< T >::push_back().
Referenced by btSoftBody().
|
inlinevirtual |
Definition at line 873 of file btSoftBody.h.
Definition at line 867 of file btSoftBody.h.
References m_dampingCoefficient.
Definition at line 3443 of file btSoftBody.cpp.
References m_gravityFactor.
Definition at line 1043 of file btSoftBody.cpp.
References btVector3, KDL::diff(), getLinearVelocity(), m_nodes, and btAlignedObjectArray< T >::size().
Definition at line 919 of file btSoftBody.cpp.
References m_bUpdateRtCst, m_nodes, and node.
Referenced by btSoftBodyHelpers::CreatePatch(), btSoftBodyHelpers::CreatePatchUV(), and btSoftBodyHelpers::CreateRope().
Definition at line 3785 of file btSoftBody.cpp.
References m_cfg, and btSoftBody::Config::m_maxStress.
Definition at line 1181 of file btSoftBody.cpp.
References btVector3, evaluateCom(), getTotalMass(), getVolume(), 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(), btAlignedObjectArray< T >::size(), and updateConstants().
Definition at line 1166 of file btSoftBody.cpp.
References activate(), getActivationState(), ISLAND_SLEEPING, l, m_links, m_restLengthScale, and btAlignedObjectArray< T >::size().
Definition at line 4041 of file btSoftBody.cpp.
References m_useSelfCollision, and useSelfCollision().
|
inline |
Definition at line 1103 of file btSoftBody.h.
References m_softBodySolver.
Referenced by btDeformableMultiBodyDynamicsWorld::addSoftBody(), btSoftMultiBodyDynamicsWorld::addSoftBody(), and btSoftRigidDynamicsWorld::addSoftBody().
void btSoftBody::setSolver | ( | eSolverPresets::_ | preset | ) |
Definition at line 2055 of file btSoftBody.cpp.
References btSoftBody::ePSolver::Anchors, btAlignedObjectArray< T >::clear(), btSoftBody::eVSolver::Linear, btSoftBody::ePSolver::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().
Definition at line 3434 of file btSoftBody.cpp.
References m_links, m_repulsionStiffness, and btAlignedObjectArray< T >::size().
Definition at line 979 of file btSoftBody.cpp.
References usdtokens::density(), getVolume(), and setTotalMass().
Definition at line 943 of file btSoftBody.cpp.
References AreaOf(), getTotalMass(), 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().
Definition at line 895 of file btSoftBody.cpp.
References btSoftBody::Node::m_im, m_nodes, btSoftBody::Node::m_v, btSoftBody::Node::m_vn, and btAlignedObjectArray< T >::size().
Definition at line 1015 of file btSoftBody.cpp.
References btFabs(), usdtokens::density(), m_tetras, setVolumeMass(), btAlignedObjectArray< T >::size(), and t.
Definition at line 985 of file btSoftBody.cpp.
References btFabs(), m_nodes, m_tetras, btAlignedObjectArray< T >::resize(), setTotalMass(), btAlignedObjectArray< T >::size(), and t.
Referenced by setVolumeDensity().
Set a wind velocity for interaction with the air.
Definition at line 4286 of file btSoftBody.cpp.
References m_windVelocity.
void btSoftBody::setZeroVelocity | ( | ) |
Definition at line 4699 of file btSoftBody.cpp.
References m_nodes, and btAlignedObjectArray< T >::size().
Referenced by btDeformableMultiBodyDynamicsWorld::updateActivationState().
Definition at line 3349 of file btSoftBody.cpp.
References m_joints, m_sst, btSoftBody::SolverState::sdt, and btAlignedObjectArray< T >::size().
|
static |
Definition at line 2300 of file btSoftBody.cpp.
References btMax(), btSoftBody::Config::citerations, m_cfg, and btAlignedObjectArray< T >::size().
Referenced by btSoftMultiBodyDynamicsWorld::solveSoftBodiesConstraints(), and btSoftRigidDynamicsWorld::solveSoftBodiesConstraints().
|
static |
placeholder
Definition at line 2294 of file btSoftBody.cpp.
void btSoftBody::solveConstraints | ( | ) |
Definition at line 2189 of file btSoftBody.cpp.
References Freestyle::a, applyClusters(), btVector3, dampClusters(), btSoftBody::Config::diterations, getSolver(), ImpulseMatrix(), btSoftBody::SolverState::isdt, btSoftBody::Config::kDP, btSoftBody::Config::kVCF, l, m_anchors, m_cfg, btSoftBody::Config::m_dsequence, btSoftBody::Node::m_f, m_links, 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 2282 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 1099 of file btSoftBody.cpp.
References ATTRIBUTE_ALIGNED16, btDbvtAabbMm::FromCR(), getCollisionShape(), 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(), transformTo(), and translate().
void btSoftBody::transformTo | ( | const btTransform & | trs | ) |
Definition at line 1089 of file btSoftBody.cpp.
References btTransform, getRigidTransform(), and transform().
Definition at line 1121 of file btSoftBody.cpp.
References btTransform, t, and transform().
|
inlinestatic |
Definition at line 1134 of file btSoftBody.h.
References CO_SOFT_BODY.
|
inlinestatic |
Definition at line 1128 of file btSoftBody.h.
References CO_SOFT_BODY.
Referenced by btSoftMultiBodyDynamicsWorld::rayTestSingle(), btSoftRigidDynamicsWorld::rayTestSingle(), btDeformableMultiBodyDynamicsWorld::rayTestSingle(), btDeformableMultiBodyDynamicsWorld::removeCollisionObject(), btSoftMultiBodyDynamicsWorld::removeCollisionObject(), and btSoftRigidDynamicsWorld::removeCollisionObject().
Definition at line 3058 of file btSoftBody.cpp.
References AreaOf(), btFabs(), btSoftBody::Node::m_area, m_faces, btSoftBody::Face::m_n, m_nodes, btSoftBody::Face::m_ra, btSoftBody::Node::m_x, btAlignedObjectArray< T >::resize(), and btAlignedObjectArray< T >::size().
Referenced by updateConstants().
void btSoftBody::updateBounds | ( | ) |
Definition at line 2947 of file btSoftBody.cpp.
References btVector3, getBroadphaseHandle(), getCollisionShape(), m_bounds, btSoftBodyWorldInfo::m_broadphase, btSoftBodyWorldInfo::m_dispatcher, m_nodes, m_worldInfo, btBroadphaseInterface::setAabb(), and btAlignedObjectArray< T >::size().
Referenced by btSoftBody(), btDeformableBodySolver::predictDeformableMotion(), predictMotion(), scale(), and transform().
void btSoftBody::updateClusters | ( | ) |
Definition at line 3210 of file btSoftBody.cpp.
References Freestyle::a, ATTRIBUTE_ALIGNED16, usdtokens::b(), bounds(), BT_PROFILE, btCross(), btFabs(), btMatrix3x3, btVector3, Freestyle::c, clusterCom(), eps, btDbvtAabbMm::FromMM(), btDbvt::insert(), Lerp(), m_cdbvt, m_clusters, m_sst, btSoftBody::Node::m_x, PolarDecompose(), r, btSoftBody::SolverState::radmrg, btSoftBody::SolverState::sdt, SIMD_EPSILON, btAlignedObjectArray< T >::size(), btDbvt::update(), v, and x.
Referenced by generateClusters(), and predictMotion().
void btSoftBody::updateConstants | ( | ) |
Definition at line 3135 of file btSoftBody.cpp.
References resetLinkRestLengths(), updateArea(), and updateLinkConstants().
Referenced by btDeformableBodySolver::predictDeformableMotion(), predictMotion(), scale(), setPose(), and transform().
Definition at line 4683 of file btSoftBody.cpp.
References DISABLE_DEACTIVATION, getActivationState(), ISLAND_SLEEPING, m_deactivationTime, m_maxSpeedSquared, m_sleepingThreshold, and setActivationState().
Referenced by btDeformableMultiBodyDynamicsWorld::updateActivationState().
void btSoftBody::updateDeformation | ( | ) |
Definition at line 3500 of file btSoftBody.cpp.
References Freestyle::a, B, usdtokens::b(), btMatrix3x3, btVector3, C, Freestyle::c, Dot4(), btSoftBody::TetraScratch::m_cofF, btSoftBody::TetraScratch::m_corotation, btSoftBody::TetraScratch::m_F, btSoftBody::TetraScratch::m_J, m_tetras, m_tetraScratches, btSoftBody::TetraScratch::m_trace, q1, btQuaternion::setRotation(), btAlignedObjectArray< T >::size(), and t.
Referenced by advanceDeformation(), btDeformableLagrangianForce::testDerivative(), btDeformableLagrangianForce::testHessian(), and btDeformableBodySolver::updateTempPosition().
|
inline |
Definition at line 1234 of file btSoftBody.h.
References ATTRIBUTE_ALIGNED16, btVector3, btDbvtAabbMm::FromPoints(), btSoftBody::Face::m_n, m_sst, btSoftBody::Node::m_v, btSoftBody::Node::m_x, Merge(), node, pad, btSoftBody::SolverState::radmrg, SAFE_EPSILON, and btSoftBody::SolverState::sdt.
Referenced by updateFaceTree().
Definition at line 1270 of file btSoftBody.h.
References m_fdbvnt, m_fdbvt, btDbvt::m_root, and updateFace().
Referenced by initializeFaceTree(), and btDeformableBodySolver::predictDeformableMotion().
void btSoftBody::updateLinkConstants | ( | ) |
Definition at line 3122 of file btSoftBody.cpp.
References l, btSoftBody::Material::m_kLST, m_links, and btAlignedObjectArray< T >::size().
Referenced by updateConstants().
|
inline |
Definition at line 1195 of file btSoftBody.h.
References ATTRIBUTE_ALIGNED16, btVector3, btDbvtAabbMm::FromCR(), btDbvtAabbMm::FromPoints(), m_sst, btSoftBody::Node::m_v, btSoftBody::Node::m_x, Merge(), node, pad, btSoftBody::SolverState::radmrg, SAFE_EPSILON, and btSoftBody::SolverState::sdt.
Referenced by updateNodeTree().
Definition at line 1227 of file btSoftBody.h.
References m_ndbvt, btDbvt::m_root, and updateNode().
Referenced by btDeformableBodySolver::predictDeformableMotion().
void btSoftBody::updateNormals | ( | ) |
Definition at line 2918 of file btSoftBody.cpp.
References btCross(), btVector3, len, m_faces, btSoftBody::Node::m_n, btSoftBody::Face::m_n, m_nodes, btSoftBody::Face::m_normal, btSoftBody::Node::m_x, SIMD_EPSILON, and btAlignedObjectArray< T >::size().
Referenced by integrateMotion(), scale(), transform(), and btDeformableBodySolver::updateSoftBodies().
void btSoftBody::updatePose | ( | ) |
Definition at line 3021 of file btSoftBody.cpp.
References Freestyle::a, usdtokens::b(), btMatrix3x3, btVector3, eps, evaluateCom(), 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(), r, SIMD_EPSILON, and btAlignedObjectArray< T >::size().
Referenced by predictMotion().
bool btSoftBody::useSelfCollision | ( | ) |
Definition at line 4046 of file btSoftBody.cpp.
References m_useSelfCollision.
Referenced by defaultCollisionHandler(), geometricCollisionHandler(), and setSelfCollision().
|
static |
Definition at line 3994 of file btSoftBody.cpp.
References BT_PROFILE, btDot(), l, btSoftBody::Node::m_im, m_links, btSoftBody::Node::m_v, and btAlignedObjectArray< T >::size().
Referenced by getSolver().
bool btSoftBody::wantsSleeping | ( | ) |
Definition at line 4707 of file btSoftBody.cpp.
References DISABLE_DEACTIVATION, gDeactivationTime, gDisableDeactivation, getActivationState(), ISLAND_SLEEPING, m_deactivationTime, and WANTS_DEACTIVATION.
Referenced by btDeformableMultiBodyDynamicsWorld::updateActivationState().
Link btSoftBody::__pad0__ |
Definition at line 281 of file btSoftBody.h.
tAnchorArray btSoftBody::m_anchors |
Definition at line 807 of file btSoftBody.h.
Referenced by appendAnchor(), btSoftBodyHelpers::Draw(), indicesToPointers(), pointersToIndices(), PSolve_Anchors(), serialize(), and solveConstraints().
int btSoftBody::m_bbending |
Definition at line 286 of file btSoftBody.h.
btVector3 btSoftBody::m_bounds[2] |
Definition at line 817 of file btSoftBody.h.
Referenced by getAabb(), btSoftBodyCollisionShape::getAabb(), initDefaults(), btDeformableBodySolver::predictDeformableMotion(), and updateBounds().
bool btSoftBody::m_bUpdateRtCst |
Definition at line 818 of file btSoftBody.h.
Referenced by appendFace(), appendLink(), appendTetra(), initDefaults(), btDeformableBodySolver::predictDeformableMotion(), predictMotion(), refine(), setMass(), and setTotalMass().
btScalar btSoftBody::m_c0 |
Definition at line 287 of file btSoftBody.h.
btScalar btSoftBody::m_c1 |
Definition at line 288 of file btSoftBody.h.
btScalar btSoftBody::m_c2 |
Definition at line 289 of file btSoftBody.h.
btDbvt btSoftBody::m_cdbvt |
Definition at line 822 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::DrawClusterTree(), predictMotion(), btSoftColliders::CollideCL_RS::ProcessColObj(), btSoftColliders::CollideCL_SS::ProcessSoftSoft(), releaseCluster(), and updateClusters().
Config btSoftBody::m_cfg |
Definition at line 793 of file btSoftBody.h.
Referenced by addAeroForceToFace(), addAeroForceToNode(), btDeformableLinearElasticityForce::addScaledElasticForce(), btDeformableNeoHookeanForce::addScaledElasticForce(), appendDeformableAnchor(), applyForces(), defaultCollisionHandler(), btSoftColliders::CollideSDF_RDF::DoNode(), btSoftColliders::CollideSDF_RS::DoNode(), btSoftColliders::CollideSDF_RD::DoNode(), initDefaults(), btDeformableBodySolver::predictDeformableMotion(), predictMotion(), btSoftColliders::CollideCL_SS::Process(), btSoftColliders::CollideCL_RS::Process(), btSoftColliders::CollideVF_SS::Process(), btSoftColliders::CollideVF_DD::Process(), btSoftColliders::CollideCCD::Process(), btSoftColliders::CollideCL_RS::ProcessColObj(), btSoftColliders::CollideCL_SS::ProcessSoftSoft(), PSolve_Anchors(), btSoftColliders::CollideFF_DD::Repel(), btSoftColliders::CollideCCD::Repel(), serialize(), setMaxStress(), setSolver(), solveClusters(), solveConstraints(), staticSolve(), and updatePose().
btAlignedObjectArray<bool> btSoftBody::m_clusterConnectivity |
Definition at line 838 of file btSoftBody.h.
Referenced by generateClusters(), and btSoftColliders::CollideCL_SS::Process().
tClusterArray btSoftBody::m_clusters |
Definition at line 823 of file btSoftBody.h.
Referenced by appendAngularJoint(), appendLinearJoint(), applyClusters(), clusterCom(), clusterCount(), dampClusters(), btSoftBodyHelpers::Draw(), generateClusters(), initializeClusters(), btSoftColliders::CollideCL_SS::Process(), releaseCluster(), releaseClusters(), serialize(), and updateClusters().
btAlignedObjectArray<const class btCollisionObject*> btSoftBody::m_collisionDisabledObjects |
Definition at line 77 of file btSoftBody.h.
Referenced by appendAnchor(), and btSoftRigidCollisionAlgorithm::processCollision().
btScalar btSoftBody::m_dampingCoefficient |
Definition at line 824 of file btSoftBody.h.
Referenced by initDefaults(), and setDampingCoefficient().
btAlignedObjectArray<DeformableNodeRigidAnchor> btSoftBody::m_deformableAnchors |
Definition at line 808 of file btSoftBody.h.
Referenced by appendDeformableAnchor(), btDeformableMultiBodyDynamicsWorld::integrateTransforms(), removeAnchor(), and btDeformableContactProjection::setConstraints().
btAlignedObjectArray<DeformableFaceNodeContact> btSoftBody::m_faceNodeContacts |
Definition at line 811 of file btSoftBody.h.
Referenced by applyRepulsionForce(), btDeformableMultiBodyDynamicsWorld::performGeometricCollisions(), btDeformableBodySolver::predictDeformableMotion(), btSoftColliders::CollideVF_DD::Process(), btSoftColliders::CollideCCD::Process(), btSoftColliders::CollideFF_DD::Repel(), and btSoftColliders::CollideCCD::Repel().
btAlignedObjectArray<DeformableFaceRigidContact> btSoftBody::m_faceRigidContacts |
Definition at line 812 of file btSoftBody.h.
Referenced by btSoftColliders::CollideSDF_RDF::DoNode(), btDeformableBodySolver::predictDeformableMotion(), and btDeformableContactProjection::setConstraints().
tFaceArray btSoftBody::m_faces |
Definition at line 802 of file btSoftBody.h.
Referenced by addAeroForceToFace(), appendFace(), applyForces(), checkFace(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromVtkFile(), cutLink(), btSoftBodyHelpers::Draw(), btSoftBodyHelpers::extrapolateBarycentricWeights(), generateClusters(), getVolume(), indicesToPointers(), initializeFaceTree(), btDeformableMultiBodyDynamicsWorld::performGeometricCollisions(), pointersToIndices(), predictMotion(), randomizeConstraints(), rayFaceTest(), rayTest(), btSoftMultiBodyDynamicsWorld::rayTestSingle(), btSoftRigidDynamicsWorld::rayTestSingle(), btDeformableMultiBodyDynamicsWorld::rayTestSingle(), refine(), serialize(), setTotalMass(), updateArea(), btDeformableBackwardEulerObjective::updateId(), updateNormals(), and btSoftBodyHelpers::writeObj().
btDbvntNode* btSoftBody::m_fdbvnt |
Definition at line 821 of file btSoftBody.h.
Referenced by btSoftBody(), defaultCollisionHandler(), geometricCollisionHandler(), initDefaults(), initializeFaceTree(), updateFaceTree(), and ~btSoftBody().
btDbvt btSoftBody::m_fdbvt |
Definition at line 820 of file btSoftBody.h.
Referenced by defaultCollisionHandler(), btSoftBodyHelpers::DrawFaceTree(), geometricCollisionHandler(), initializeFaceTree(), btDeformableBodySolver::predictDeformableMotion(), predictMotion(), rayFaceTest(), rayTest(), and updateFaceTree().
btScalar btSoftBody::m_gravityFactor |
Definition at line 829 of file btSoftBody.h.
Referenced by btDeformableBackwardEulerObjective::applyExplicitForce(), initDefaults(), and setGravityFactor().
tJointArray btSoftBody::m_joints |
Definition at line 814 of file btSoftBody.h.
Referenced by appendAngularJoint(), appendLinearJoint(), cleanupClusters(), btSoftBodyHelpers::Draw(), prepareClusters(), btSoftColliders::CollideCL_SS::Process(), btSoftColliders::CollideCL_RS::Process(), serialize(), solveClusters(), and ~btSoftBody().
tLinkArray btSoftBody::m_links |
Definition at line 801 of file btSoftBody.h.
Referenced by btDeformableMassSpringForce::addScaledDampingForce(), btDeformableMassSpringForce::addScaledDampingForceDifferential(), btDeformableMassSpringForce::addScaledElasticForce(), btDeformableMassSpringForce::addScaledElasticForceDifferential(), appendLink(), btDeformableMassSpringForce::buildDampingForceDifferentialDiagonal(), checkLink(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromVtkFile(), cutLink(), btSoftBodyHelpers::Draw(), generateBendingConstraints(), indicesToPointers(), pointersToIndices(), PSolve_Links(), randomizeConstraints(), rebuildNodeTree(), refine(), btSoftBodyHelpers::ReoptimizeLinkOrder(), resetLinkRestLengths(), serialize(), setRestLengthScale(), setSpringStiffness(), solveConstraints(), btDeformableMassSpringForce::totalElasticEnergy(), updateLinkConstants(), and VSolve_Links().
tMaterialArray btSoftBody::m_materials |
Definition at line 815 of file btSoftBody.h.
Referenced by appendFace(), appendLink(), appendMaterial(), appendNode(), appendTetra(), serialize(), and ~btSoftBody().
btScalar btSoftBody::m_maxSpeedSquared |
Definition at line 826 of file btSoftBody.h.
Referenced by initDefaults(), updateDeactivation(), and btDeformableBodySolver::updateVelocity().
Node* btSoftBody::m_n[2] |
Definition at line 284 of file btSoftBody.h.
Referenced by cutLink(), generateBendingConstraints(), generateClusters(), indicesToPointers(), initializeFaceTree(), pointersToIndices(), and refine().
btDbvt btSoftBody::m_ndbvt |
Definition at line 819 of file btSoftBody.h.
Referenced by appendNode(), btSoftBody(), cutLink(), defaultCollisionHandler(), btSoftBodyHelpers::DrawNodeTree(), geometricCollisionHandler(), predictMotion(), rebuildNodeTree(), refine(), scale(), transform(), and updateNodeTree().
btAlignedObjectArray<DeformableNodeRigidContact> btSoftBody::m_nodeRigidContacts |
Definition at line 810 of file btSoftBody.h.
Referenced by btSoftColliders::CollideSDF_RD::DoNode(), btDeformableBodySolver::predictDeformableMotion(), and btDeformableContactProjection::setConstraints().
tNodeArray btSoftBody::m_nodes |
Definition at line 799 of file btSoftBody.h.
Referenced by addAeroForceToNode(), addForce(), btDeformableLinearElasticityForce::addScaledDampingForce(), btDeformableLinearElasticityForce::addScaledDampingForceDifferential(), btDeformableGravityForce::addScaledGravityForce(), btDeformableLinearElasticityForce::addScaledHessian(), addVelocity(), appendAnchor(), appendDeformableAnchor(), appendFace(), appendLink(), appendNode(), appendTetra(), applyClusters(), btDeformableBackwardEulerObjective::applyExplicitForce(), btDeformableBackwardEulerObjective::applyForce(), applyForces(), btDeformableBodySolver::backupVelocity(), btSoftBody(), KKTPreconditioner::buildDiagonalA(), btDeformableBackwardEulerObjective::calculateContactForce(), checkFace(), checkLink(), btDefaultSoftBodySolver::copySoftBodyToVertexBuffer(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromVtkFile(), cutLink(), btSoftBodyHelpers::Draw(), btSoftBodyHelpers::DrawInfos(), evaluateCom(), generateBendingConstraints(), btSoftBodyHelpers::generateBoundaryFaces(), generateClusters(), getCenterOfMass(), getLinearVelocity(), getMass(), getRigidTransform(), getTotalMass(), getVolume(), indicesToPointers(), btDeformableBackwardEulerObjective::initialGuess(), btDeformableMultiBodyDynamicsWorld::integrateTransforms(), btDeformableBodySolver::kineticEnergy(), btDeformableBackwardEulerObjective::multiply(), btDeformableMultiBodyDynamicsWorld::performGeometricCollisions(), pointersToIndices(), btDeformableBodySolver::predictDeformableMotion(), predictMotion(), btDeformableBodySolver::predictMotion(), rebuildNodeTree(), refine(), MassPreconditioner::reinitialize(), KKTPreconditioner::reinitialize(), btDeformableBackwardEulerObjective::reinitialize(), removeAnchor(), btSoftBodyHelpers::ReoptimizeLinkOrder(), btDeformableBodySolver::revertVelocity(), scale(), serialize(), setAngularVelocity(), btDeformableContactProjection::setConstraints(), setLinearVelocity(), setMass(), setPose(), setTotalMass(), btDeformableBodySolver::setupDeformableSolve(), setVelocity(), setVolumeMass(), setZeroVelocity(), solveConstraints(), btDeformableBodySolver::solveDeformableConstraints(), btDeformableLagrangianForce::testDerivative(), btDeformableLagrangianForce::testHessian(), btDeformableLinearElasticityForce::totalDampingEnergy(), btDeformableMassSpringForce::totalDampingEnergy(), btDeformableNeoHookeanForce::totalDampingEnergy(), btDeformableGravityForce::totalEnergy(), transform(), updateArea(), updateBounds(), btDeformableBackwardEulerObjective::updateId(), updateNormals(), updatePose(), btDeformableBodySolver::updateTempPosition(), btDeformableBodySolver::updateVelocity(), btDeformableBackwardEulerObjective::updateVelocity(), and btSoftBodyHelpers::writeObj().
tNoteArray btSoftBody::m_notes |
Definition at line 798 of file btSoftBody.h.
Referenced by appendNote(), btSoftBodyHelpers::Draw(), indicesToPointers(), and pointersToIndices().
Pose btSoftBody::m_pose |
Definition at line 795 of file btSoftBody.h.
Referenced by applyForces(), btSoftBodyHelpers::DrawFrame(), evaluateCom(), initDefaults(), predictMotion(), serialize(), setPose(), and updatePose().
btAlignedObjectArray<btVector3> btSoftBody::m_quads |
Definition at line 827 of file btSoftBody.h.
Referenced by checkDeformableFaceContact(), and setCollisionQuadrature().
tRContactArray btSoftBody::m_rcontacts |
Definition at line 809 of file btSoftBody.h.
Referenced by btSoftColliders::CollideSDF_RS::DoNode(), btSoftBodyHelpers::Draw(), predictMotion(), and PSolve_RContacts().
tFaceArray btSoftBody::m_renderFaces |
Definition at line 803 of file btSoftBody.h.
tNodeArray btSoftBody::m_renderNodes |
Definition at line 800 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::extrapolateBarycentricWeights(), btSoftBodyHelpers::interpolateBarycentricWeights(), and interpolateRenderMesh().
btAlignedObjectArray<btVector4> btSoftBody::m_renderNodesInterpolationWeights |
Definition at line 832 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::extrapolateBarycentricWeights(), btSoftBodyHelpers::interpolateBarycentricWeights(), and interpolateRenderMesh().
btAlignedObjectArray<btAlignedObjectArray<const btSoftBody::Node*> > btSoftBody::m_renderNodesParents |
Definition at line 833 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::extrapolateBarycentricWeights(), btSoftBodyHelpers::interpolateBarycentricWeights(), and interpolateRenderMesh().
btScalar btSoftBody::m_repulsionStiffness |
Definition at line 828 of file btSoftBody.h.
Referenced by applyRepulsionForce(), initDefaults(), and setSpringStiffness().
btScalar btSoftBody::m_restLengthScale |
Definition at line 842 of file btSoftBody.h.
Referenced by getRestLengthScale(), initDefaults(), and setRestLengthScale().
btScalar btSoftBody::m_rl |
Definition at line 285 of file btSoftBody.h.
tSContactArray btSoftBody::m_scontacts |
Definition at line 813 of file btSoftBody.h.
Referenced by predictMotion(), btSoftColliders::CollideVF_SS::Process(), and PSolve_SContacts().
btScalar btSoftBody::m_sleepingThreshold |
Definition at line 825 of file btSoftBody.h.
Referenced by initDefaults(), and updateDeactivation().
btSoftBodySolver* btSoftBody::m_softBodySolver |
Definition at line 80 of file btSoftBody.h.
Referenced by getSoftBodySolver(), and setSoftBodySolver().
bool btSoftBody::m_softSoftCollision |
Definition at line 836 of file btSoftBody.h.
Referenced by defaultCollisionHandler(), and initDefaults().
SolverState btSoftBody::m_sst |
Definition at line 794 of file btSoftBody.h.
Referenced by addAeroForceToFace(), addAeroForceToNode(), applyClusters(), cleanupClusters(), btSoftColliders::CollideSDF_RS::DoNode(), geometricCollisionHandler(), btDeformableBodySolver::predictDeformableMotion(), predictMotion(), prepareClusters(), btSoftColliders::CollideCL_RS::ProcessColObj(), btSoftColliders::CollideCL_SS::ProcessSoftSoft(), PSolve_Anchors(), PSolve_RContacts(), solveClusters(), solveConstraints(), updateClusters(), updateFace(), and updateNode().
void* btSoftBody::m_tag |
Definition at line 796 of file btSoftBody.h.
Referenced by initDefaults().
tTetraArray btSoftBody::m_tetras |
Definition at line 804 of file btSoftBody.h.
Referenced by btDeformableLinearElasticityForce::addScaledDampingForce(), btDeformableNeoHookeanForce::addScaledDampingForce(), btDeformableLinearElasticityForce::addScaledDampingForceDifferential(), btDeformableNeoHookeanForce::addScaledDampingForceDifferential(), btDeformableCorotatedForce::addScaledElasticForce(), btDeformableLinearElasticityForce::addScaledElasticForce(), btDeformableNeoHookeanForce::addScaledElasticForce(), btDeformableLinearElasticityForce::addScaledElasticForceDifferential(), btDeformableNeoHookeanForce::addScaledElasticForceDifferential(), btDeformableLinearElasticityForce::addScaledHessian(), advanceDeformation(), appendTetra(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromVtkFile(), defaultCollisionHandler(), btSoftBodyHelpers::Draw(), btSoftBodyHelpers::generateBoundaryFaces(), generateClusters(), geometricCollisionHandler(), initializeDmInverse(), btSoftBodyHelpers::interpolateBarycentricWeights(), rayTest(), serialize(), setVolumeDensity(), setVolumeMass(), btDeformableLinearElasticityForce::totalElasticEnergy(), btDeformableNeoHookeanForce::totalElasticEnergy(), updateDeformation(), and btSoftBodyHelpers::writeObj().
btAlignedObjectArray<TetraScratch> btSoftBody::m_tetraScratches |
Definition at line 805 of file btSoftBody.h.
Referenced by btDeformableLinearElasticityForce::addScaledDampingForce(), btDeformableLinearElasticityForce::addScaledDampingForceDifferential(), btDeformableLinearElasticityForce::addScaledElasticForce(), btDeformableNeoHookeanForce::addScaledElasticForce(), btDeformableLinearElasticityForce::addScaledElasticForceDifferential(), btDeformableNeoHookeanForce::addScaledElasticForceDifferential(), btDeformableLinearElasticityForce::addScaledHessian(), advanceDeformation(), btSoftBodyHelpers::CreateFromTetGenData(), btSoftBodyHelpers::CreateFromVtkFile(), btDeformableLinearElasticityForce::totalElasticEnergy(), btDeformableNeoHookeanForce::totalElasticEnergy(), and updateDeformation().
btAlignedObjectArray<TetraScratch> btSoftBody::m_tetraScratchesTn |
Definition at line 806 of file btSoftBody.h.
Referenced by advanceDeformation(), btSoftBodyHelpers::CreateFromTetGenData(), and btSoftBodyHelpers::CreateFromVtkFile().
btScalar btSoftBody::m_timeacc |
Definition at line 816 of file btSoftBody.h.
Referenced by initDefaults().
btAlignedObjectArray<int> btSoftBody::m_userIndexMapping |
Definition at line 860 of file btSoftBody.h.
bool btSoftBody::m_useSelfCollision |
Definition at line 835 of file btSoftBody.h.
Referenced by initDefaults(), setSelfCollision(), and useSelfCollision().
btVector3 btSoftBody::m_windVelocity |
Definition at line 840 of file btSoftBody.h.
Referenced by applyForces(), getWindVelocity(), initDefaults(), and setWindVelocity().
btSoftBodyWorldInfo* btSoftBody::m_worldInfo |
Definition at line 797 of file btSoftBody.h.
Referenced by addAeroForceToFace(), addAeroForceToNode(), appendDeformableAnchor(), checkContact(), checkDeformableContact(), checkDeformableFaceContact(), getWorldInfo(), btDeformableMultiBodyDynamicsWorld::integrateTransforms(), predictMotion(), and updateBounds().
btAlignedObjectArray<btVector3> btSoftBody::m_X |
Definition at line 830 of file btSoftBody.h.
Referenced by btSoftBody(), and getRigidTransform().
btAlignedObjectArray<btScalar> btSoftBody::m_z |
Definition at line 834 of file btSoftBody.h.
Referenced by btSoftBodyHelpers::extrapolateBarycentricWeights(), btSoftBodyHelpers::interpolateBarycentricWeights(), and interpolateRenderMesh().