Bullet Collision Detection & Physics Library: btReducedDeformableBody.h Source File

Bullet Collision Detection & Physics Library

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

btReducedDeformableBody.h
Go to the documentation of this file.
1#ifndef BT_REDUCED_SOFT_BODY_H
2#define BT_REDUCED_SOFT_BODY_H
3
4#include "../btSoftBody.h"
5#include "LinearMath/btAlignedObjectArray.h"
6#include "LinearMath/btVector3.h"
7#include "LinearMath/btMatrix3x3.h"
8#include "LinearMath/btTransform.h"
9
10// Reduced deformable body is a simplified deformable object embedded in a rigid frame.
11 class btReducedDeformableBody : public btSoftBody
12{
13 public:
14 //
15 // Typedefs
16 //
17 typedef btAlignedObjectArray<btVector3> TVStack;
18 // typedef btAlignedObjectArray<btMatrix3x3> tBlockDiagMatrix;
19 typedef btAlignedObjectArray<btScalar> tDenseArray;
20 typedef btAlignedObjectArray<btAlignedObjectArray<btScalar> > tDenseMatrix;
21
22 private:
23 // flag to turn off the reduced modes
24 bool m_rigidOnly;
25
26 // Flags for transform. Once transform is applied, users cannot scale the mesh or change its total mass.
27 bool m_transform_lock;
28
29 // scaling factors
30 btScalar m_rhoScale; // mass density scale
31 btScalar m_ksScale; // stiffness scale
32
33 // projection matrix
34 tDenseMatrix m_projPA; // Eqn. 4.11 from Rahul Sheth's thesis
35 tDenseMatrix m_projCq;
36 tDenseArray m_STP;
37 tDenseArray m_MrInvSTP;
38
39 TVStack m_localMomentArm; // Sq + x0
40
41 btVector3 m_internalDeltaLinearVelocity;
42 btVector3 m_internalDeltaAngularVelocity;
43 tDenseArray m_internalDeltaReducedVelocity;
44
45 btVector3 m_linearVelocityFromReduced; // contribution to the linear velocity from reduced velocity
46 btVector3 m_angularVelocityFromReduced; // contribution to the angular velocity from reduced velocity
47 btVector3 m_internalDeltaAngularVelocityFromReduced;
48
49 protected:
50 // rigid frame
51 btScalar m_mass; // total mass of the rigid frame
52 btScalar m_inverseMass; // inverse of the total mass of the rigid frame
53 btVector3 m_linearVelocity;
54 btVector3 m_angularVelocity;
55 btScalar m_linearDamping; // linear damping coefficient
56 btScalar m_angularDamping; // angular damping coefficient
57 btVector3 m_linearFactor;
58 btVector3 m_angularFactor;
59 // btVector3 m_invInertiaLocal;
60 btMatrix3x3 m_invInertiaLocal;
61 btTransform m_rigidTransformWorld;
62 btMatrix3x3 m_invInertiaTensorWorldInitial;
63 btMatrix3x3 m_invInertiaTensorWorld;
64 btMatrix3x3 m_interpolateInvInertiaTensorWorld;
65 btVector3 m_initialCoM; // initial center of mass (original of the m_rigidTransformWorld)
66
67 // damping
68 btScalar m_dampingAlpha;
69 btScalar m_dampingBeta;
70
71 public:
72 //
73 // Fields
74 //
75
76 // reduced space
77 int m_nReduced;
78 int m_nFull;
79 tDenseMatrix m_modes; // modes of the reduced deformable model. Each inner array is a mode, outer array size = n_modes
80 tDenseArray m_reducedDofs; // Reduced degree of freedom
81 tDenseArray m_reducedDofsBuffer; // Reduced degree of freedom at t^n
82 tDenseArray m_reducedVelocity; // Reduced velocity array
83 tDenseArray m_reducedVelocityBuffer; // Reduced velocity array at t^n
84 tDenseArray m_reducedForceExternal; // reduced external force
85 tDenseArray m_reducedForceElastic; // reduced internal elastic force
86 tDenseArray m_reducedForceDamping; // reduced internal damping force
87 tDenseArray m_eigenvalues; // eigenvalues of the reduce deformable model
88 tDenseArray m_Kr; // reduced stiffness matrix
89
90 // full space
91 TVStack m_x0; // Rest position
92 tDenseArray m_nodalMass; // Mass on each node
93 btAlignedObjectArray<int> m_fixedNodes; // index of the fixed nodes
94 int m_nodeIndexOffset; // offset of the node index needed for contact solver when there are multiple reduced deformable body in the world.
95
96 // contacts
97 btAlignedObjectArray<int> m_contactNodesList;
98
99 //
100 // Api
101 //
102 btReducedDeformableBody(btSoftBodyWorldInfo* worldInfo, int node_count, const btVector3* x, const btScalar* m);
103
104 ~btReducedDeformableBody() {}
105
106 //
107 // initializing helpers
108 //
109 void internalInitialization();
110
111 void setReducedModes(int num_modes, int full_size);
112
113 void setMassProps(const tDenseArray& mass_array);
114
115 void setInertiaProps();
116
117 void setRigidVelocity(const btVector3& v);
118
119 void setRigidAngularVelocity(const btVector3& omega);
120
121 void setStiffnessScale(const btScalar ks);
122
123 void setMassScale(const btScalar rho);
124
125 void setFixedNodes(const int n_node);
126
127 void setDamping(const btScalar alpha, const btScalar beta);
128
129 void disableReducedModes(const bool rigid_only);
130
131 virtual void setTotalMass(btScalar mass, bool fromfaces = false);
132
133 //
134 // various internal updates
135 //
136 virtual void transformTo(const btTransform& trs);
137 virtual void transform(const btTransform& trs);
138 // caution:
139 // need to use scale before using transform, because the scale is performed in the local frame
140 // (i.e., may have some rotation already, but the m_rigidTransformWorld doesn't have this info)
141 virtual void scale(const btVector3& scl);
142
143 private:
144 void updateRestNodalPositions();
145
146 void updateInitialInertiaTensor(const btMatrix3x3& rotation);
147
148 void updateLocalInertiaTensorFromNodes();
149
150 void updateInertiaTensor();
151
152 void updateModesByRotation(const btMatrix3x3& rotation);
153
154 public:
155 void updateLocalMomentArm();
156
157 void predictIntegratedTransform(btScalar dt, btTransform& predictedTransform);
158
159 // update the external force projection matrix
160 void updateExternalForceProjectMatrix(bool initialized);
161
162 void endOfTimeStepZeroing();
163
164 void applyInternalVelocityChanges();
165
166 //
167 // position and velocity update related
168 //
169
170 // compute reduced degree of freedoms
171 void updateReducedDofs(btScalar solverdt);
172
173 // compute reduced velocity update (for explicit time stepping)
174 void updateReducedVelocity(btScalar solverdt);
175
176 // map to full degree of freedoms
177 void mapToFullPosition(const btTransform& ref_trans);
178
179 // compute full space velocity from the reduced velocity
180 void mapToFullVelocity(const btTransform& ref_trans);
181
182 // compute total angular momentum
183 const btVector3 computeTotalAngularMomentum() const;
184
185 // get a single node's full space velocity from the reduced velocity
186 const btVector3 computeNodeFullVelocity(const btTransform& ref_trans, int n_node) const;
187
188 // get a single node's all delta velocity
189 const btVector3 internalComputeNodeDeltaVelocity(const btTransform& ref_trans, int n_node) const;
190
191 //
192 // rigid motion related
193 //
194 void applyDamping(btScalar timeStep);
195
196 void applyCentralImpulse(const btVector3& impulse);
197
198 void applyTorqueImpulse(const btVector3& torque);
199
200 void proceedToTransform(btScalar dt, bool end_of_time_step);
201
202 //
203 // force related
204 //
205
206 // apply impulse to the rigid frame
207 void internalApplyRigidImpulse(const btVector3& impulse, const btVector3& rel_pos);
208
209 // apply impulse to nodes in the full space
210 void internalApplyFullSpaceImpulse(const btVector3& impulse, const btVector3& rel_pos, int n_node, btScalar dt);
211
212 // apply nodal external force in the full space
213 void applyFullSpaceNodalForce(const btVector3& f_ext, int n_node);
214
215 // apply gravity to the rigid frame
216 void applyRigidGravity(const btVector3& gravity, btScalar dt);
217
218 // apply reduced elastic force
219 void applyReducedElasticForce(const tDenseArray& reduce_dofs);
220
221 // apply reduced damping force
222 void applyReducedDampingForce(const tDenseArray& reduce_vel);
223
224 // calculate the impulse factor
225 virtual btMatrix3x3 getImpulseFactor(int n_node);
226
227 // get relative position from a node to the CoM of the rigid frame
228 btVector3 getRelativePos(int n_node);
229
230 //
231 // accessors
232 //
233 bool isReducedModesOFF() const;
234 btScalar getTotalMass() const;
235 btTransform& getRigidTransform();
236 const btVector3& getLinearVelocity() const;
237 const btVector3& getAngularVelocity() const;
238
239 #if defined(BT_CLAMP_VELOCITY_TO) && BT_CLAMP_VELOCITY_TO > 0
240 void clampVelocity(btVector3& v) const {
241 v.setX(
242 fmax(-BT_CLAMP_VELOCITY_TO,
243 fmin(BT_CLAMP_VELOCITY_TO, v.getX()))
244 );
245 v.setY(
246 fmax(-BT_CLAMP_VELOCITY_TO,
247 fmin(BT_CLAMP_VELOCITY_TO, v.getY()))
248 );
249 v.setZ(
250 fmax(-BT_CLAMP_VELOCITY_TO,
251 fmin(BT_CLAMP_VELOCITY_TO, v.getZ()))
252 );
253 }
254 #endif
255};
256
257#endif // BT_REDUCED_SOFT_BODY_H
btAlignedObjectArray.h
btMatrix3x3.h
btScalar
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
Definition: btScalar.h:314
btTransform.h
btVector3.h
btAlignedObjectArray
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
Definition: btAlignedObjectArray.h:46
btMatrix3x3
The btMatrix3x3 class implements a 3x3 rotation matrix, to perform linear algebra in combination with...
Definition: btMatrix3x3.h:50
btReducedDeformableBody
Definition: btReducedDeformableBody.h:12
btReducedDeformableBody::applyFullSpaceNodalForce
void applyFullSpaceNodalForce(const btVector3 &f_ext, int n_node)
Definition: btReducedDeformableBody.cpp:721
btReducedDeformableBody::m_invInertiaTensorWorldInitial
btMatrix3x3 m_invInertiaTensorWorldInitial
Definition: btReducedDeformableBody.h:62
btReducedDeformableBody::predictIntegratedTransform
void predictIntegratedTransform(btScalar dt, btTransform &predictedTransform)
Definition: btReducedDeformableBody.cpp:246
btReducedDeformableBody::applyTorqueImpulse
void applyTorqueImpulse(const btVector3 &torque)
Definition: btReducedDeformableBody.cpp:604
btReducedDeformableBody::m_angularVelocityFromReduced
btVector3 m_angularVelocityFromReduced
Definition: btReducedDeformableBody.h:46
btReducedDeformableBody::tDenseArray
btAlignedObjectArray< btScalar > tDenseArray
Definition: btReducedDeformableBody.h:19
btReducedDeformableBody::computeNodeFullVelocity
const btVector3 computeNodeFullVelocity(const btTransform &ref_trans, int n_node) const
Definition: btReducedDeformableBody.cpp:353
btReducedDeformableBody::~btReducedDeformableBody
~btReducedDeformableBody()
Definition: btReducedDeformableBody.h:104
btReducedDeformableBody::m_interpolateInvInertiaTensorWorld
btMatrix3x3 m_interpolateInvInertiaTensorWorld
Definition: btReducedDeformableBody.h:64
btReducedDeformableBody::applyInternalVelocityChanges
void applyInternalVelocityChanges()
Definition: btReducedDeformableBody.cpp:233
btReducedDeformableBody::m_ksScale
btScalar m_ksScale
Definition: btReducedDeformableBody.h:31
btReducedDeformableBody::m_initialCoM
btVector3 m_initialCoM
Definition: btReducedDeformableBody.h:65
btReducedDeformableBody::getRelativePos
btVector3 getRelativePos(int n_node)
Definition: btReducedDeformableBody.cpp:626
btReducedDeformableBody::m_fixedNodes
btAlignedObjectArray< int > m_fixedNodes
Definition: btReducedDeformableBody.h:93
btReducedDeformableBody::m_linearVelocity
btVector3 m_linearVelocity
Definition: btReducedDeformableBody.h:53
btReducedDeformableBody::m_nFull
int m_nFull
Definition: btReducedDeformableBody.h:78
btReducedDeformableBody::m_internalDeltaAngularVelocity
btVector3 m_internalDeltaAngularVelocity
Definition: btReducedDeformableBody.h:42
btReducedDeformableBody::m_internalDeltaLinearVelocity
btVector3 m_internalDeltaLinearVelocity
Definition: btReducedDeformableBody.h:41
btReducedDeformableBody::transform
virtual void transform(const btTransform &trs)
Definition: btReducedDeformableBody.cpp:410
btReducedDeformableBody::m_inverseMass
btScalar m_inverseMass
Definition: btReducedDeformableBody.h:52
btReducedDeformableBody::m_internalDeltaReducedVelocity
tDenseArray m_internalDeltaReducedVelocity
Definition: btReducedDeformableBody.h:43
btReducedDeformableBody::mapToFullVelocity
void mapToFullVelocity(const btTransform &ref_trans)
Definition: btReducedDeformableBody.cpp:285
btReducedDeformableBody::endOfTimeStepZeroing
void endOfTimeStepZeroing()
Definition: btReducedDeformableBody.cpp:219
btReducedDeformableBody::m_MrInvSTP
tDenseArray m_MrInvSTP
Definition: btReducedDeformableBody.h:37
btReducedDeformableBody::getAngularVelocity
const btVector3 & getAngularVelocity() const
Definition: btReducedDeformableBody.cpp:779
btReducedDeformableBody::m_nodeIndexOffset
int m_nodeIndexOffset
Definition: btReducedDeformableBody.h:94
btReducedDeformableBody::updateInertiaTensor
void updateInertiaTensor()
Definition: btReducedDeformableBody.cpp:585
btReducedDeformableBody::m_reducedVelocityBuffer
tDenseArray m_reducedVelocityBuffer
Definition: btReducedDeformableBody.h:83
btReducedDeformableBody::m_internalDeltaAngularVelocityFromReduced
btVector3 m_internalDeltaAngularVelocityFromReduced
Definition: btReducedDeformableBody.h:47
btReducedDeformableBody::m_angularDamping
btScalar m_angularDamping
Definition: btReducedDeformableBody.h:56
btReducedDeformableBody::setRigidAngularVelocity
void setRigidAngularVelocity(const btVector3 &omega)
Definition: btReducedDeformableBody.cpp:106
btReducedDeformableBody::m_angularFactor
btVector3 m_angularFactor
Definition: btReducedDeformableBody.h:58
btReducedDeformableBody::m_invInertiaTensorWorld
btMatrix3x3 m_invInertiaTensorWorld
Definition: btReducedDeformableBody.h:63
btReducedDeformableBody::m_STP
tDenseArray m_STP
Definition: btReducedDeformableBody.h:36
btReducedDeformableBody::setReducedModes
void setReducedModes(int num_modes, int full_size)
Definition: btReducedDeformableBody.cpp:45
btReducedDeformableBody::updateReducedVelocity
void updateReducedVelocity(btScalar solverdt)
Definition: btReducedDeformableBody.cpp:272
btReducedDeformableBody::disableReducedModes
void disableReducedModes(const bool rigid_only)
Definition: btReducedDeformableBody.cpp:784
btReducedDeformableBody::TVStack
btAlignedObjectArray< btVector3 > TVStack
Definition: btReducedDeformableBody.h:17
btReducedDeformableBody::getLinearVelocity
const btVector3 & getLinearVelocity() const
Definition: btReducedDeformableBody.cpp:774
btReducedDeformableBody::m_nReduced
int m_nReduced
Definition: btReducedDeformableBody.h:77
btReducedDeformableBody::m_linearVelocityFromReduced
btVector3 m_linearVelocityFromReduced
Definition: btReducedDeformableBody.h:45
btReducedDeformableBody::updateModesByRotation
void updateModesByRotation(const btMatrix3x3 &rotation)
Definition: btReducedDeformableBody.cpp:568
btReducedDeformableBody::getImpulseFactor
virtual btMatrix3x3 getImpulseFactor(int n_node)
Definition: btReducedDeformableBody.cpp:633
btReducedDeformableBody::isReducedModesOFF
bool isReducedModesOFF() const
Definition: btReducedDeformableBody.cpp:789
btReducedDeformableBody::setRigidVelocity
void setRigidVelocity(const btVector3 &v)
Definition: btReducedDeformableBody.cpp:101
btReducedDeformableBody::m_linearFactor
btVector3 m_linearFactor
Definition: btReducedDeformableBody.h:57
btReducedDeformableBody::m_angularVelocity
btVector3 m_angularVelocity
Definition: btReducedDeformableBody.h:54
btReducedDeformableBody::internalComputeNodeDeltaVelocity
const btVector3 internalComputeNodeDeltaVelocity(const btTransform &ref_trans, int n_node) const
Definition: btReducedDeformableBody.cpp:372
btReducedDeformableBody::m_reducedVelocity
tDenseArray m_reducedVelocity
Definition: btReducedDeformableBody.h:82
btReducedDeformableBody::computeTotalAngularMomentum
const btVector3 computeTotalAngularMomentum() const
Definition: btReducedDeformableBody.cpp:327
btReducedDeformableBody::tDenseMatrix
btAlignedObjectArray< btAlignedObjectArray< btScalar > > tDenseMatrix
Definition: btReducedDeformableBody.h:20
btReducedDeformableBody::m_Kr
tDenseArray m_Kr
Definition: btReducedDeformableBody.h:88
btReducedDeformableBody::applyCentralImpulse
void applyCentralImpulse(const btVector3 &impulse)
Definition: btReducedDeformableBody.cpp:596
btReducedDeformableBody::m_x0
TVStack m_x0
Definition: btReducedDeformableBody.h:91
btReducedDeformableBody::updateExternalForceProjectMatrix
void updateExternalForceProjectMatrix(bool initialized)
Definition: btReducedDeformableBody.cpp:166
btReducedDeformableBody::applyReducedElasticForce
void applyReducedElasticForce(const tDenseArray &reduce_dofs)
Definition: btReducedDeformableBody.cpp:748
btReducedDeformableBody::updateLocalMomentArm
void updateLocalMomentArm()
Definition: btReducedDeformableBody.cpp:145
btReducedDeformableBody::setInertiaProps
void setInertiaProps()
Definition: btReducedDeformableBody.cpp:80
btReducedDeformableBody::internalApplyFullSpaceImpulse
void internalApplyFullSpaceImpulse(const btVector3 &impulse, const btVector3 &rel_pos, int n_node, btScalar dt)
Definition: btReducedDeformableBody.cpp:693
btReducedDeformableBody::applyReducedDampingForce
void applyReducedDampingForce(const tDenseArray &reduce_vel)
Definition: btReducedDeformableBody.cpp:756
btReducedDeformableBody::setDamping
void setDamping(const btScalar alpha, const btScalar beta)
Definition: btReducedDeformableBody.cpp:127
btReducedDeformableBody::setStiffnessScale
void setStiffnessScale(const btScalar ks)
Definition: btReducedDeformableBody.cpp:111
btReducedDeformableBody::m_invInertiaLocal
btMatrix3x3 m_invInertiaLocal
Definition: btReducedDeformableBody.h:60
btReducedDeformableBody::setMassScale
void setMassScale(const btScalar rho)
Definition: btReducedDeformableBody.cpp:116
btReducedDeformableBody::m_reducedForceExternal
tDenseArray m_reducedForceExternal
Definition: btReducedDeformableBody.h:84
btReducedDeformableBody::m_linearDamping
btScalar m_linearDamping
Definition: btReducedDeformableBody.h:55
btReducedDeformableBody::m_mass
btScalar m_mass
Definition: btReducedDeformableBody.h:51
btReducedDeformableBody::applyDamping
void applyDamping(btScalar timeStep)
Definition: btReducedDeformableBody.cpp:590
btReducedDeformableBody::updateInitialInertiaTensor
void updateInitialInertiaTensor(const btMatrix3x3 &rotation)
Definition: btReducedDeformableBody.cpp:562
btReducedDeformableBody::m_reducedForceDamping
tDenseArray m_reducedForceDamping
Definition: btReducedDeformableBody.h:86
btReducedDeformableBody::m_dampingAlpha
btScalar m_dampingAlpha
Definition: btReducedDeformableBody.h:68
btReducedDeformableBody::m_reducedForceElastic
tDenseArray m_reducedForceElastic
Definition: btReducedDeformableBody.h:85
btReducedDeformableBody::m_projCq
tDenseMatrix m_projCq
Definition: btReducedDeformableBody.h:35
btReducedDeformableBody::getTotalMass
btScalar getTotalMass() const
Definition: btReducedDeformableBody.cpp:764
btReducedDeformableBody::internalApplyRigidImpulse
void internalApplyRigidImpulse(const btVector3 &impulse, const btVector3 &rel_pos)
Definition: btReducedDeformableBody.cpp:612
btReducedDeformableBody::m_localMomentArm
TVStack m_localMomentArm
Definition: btReducedDeformableBody.h:39
btReducedDeformableBody::setFixedNodes
void setFixedNodes(const int n_node)
Definition: btReducedDeformableBody.cpp:121
btReducedDeformableBody::m_reducedDofs
tDenseArray m_reducedDofs
Definition: btReducedDeformableBody.h:80
btReducedDeformableBody::setMassProps
void setMassProps(const tDenseArray &mass_array)
Definition: btReducedDeformableBody.cpp:61
btReducedDeformableBody::m_rigidOnly
bool m_rigidOnly
Definition: btReducedDeformableBody.h:24
btReducedDeformableBody::transformTo
virtual void transformTo(const btTransform &trs)
Definition: btReducedDeformableBody.cpp:402
btReducedDeformableBody::m_modes
tDenseMatrix m_modes
Definition: btReducedDeformableBody.h:79
btReducedDeformableBody::m_eigenvalues
tDenseArray m_eigenvalues
Definition: btReducedDeformableBody.h:87
btReducedDeformableBody::scale
virtual void scale(const btVector3 &scl)
Definition: btReducedDeformableBody.cpp:455
btReducedDeformableBody::m_rhoScale
btScalar m_rhoScale
Definition: btReducedDeformableBody.h:30
btReducedDeformableBody::m_transform_lock
bool m_transform_lock
Definition: btReducedDeformableBody.h:27
btReducedDeformableBody::internalInitialization
void internalInitialization()
Definition: btReducedDeformableBody.cpp:133
btReducedDeformableBody::applyRigidGravity
void applyRigidGravity(const btVector3 &gravity, btScalar dt)
Definition: btReducedDeformableBody.cpp:742
btReducedDeformableBody::updateReducedDofs
void updateReducedDofs(btScalar solverdt)
Definition: btReducedDeformableBody.cpp:251
btReducedDeformableBody::m_rigidTransformWorld
btTransform m_rigidTransformWorld
Definition: btReducedDeformableBody.h:61
btReducedDeformableBody::proceedToTransform
void proceedToTransform(btScalar dt, bool end_of_time_step)
Definition: btReducedDeformableBody.cpp:393
btReducedDeformableBody::mapToFullPosition
void mapToFullPosition(const btTransform &ref_trans)
Definition: btReducedDeformableBody.cpp:259
btReducedDeformableBody::m_contactNodesList
btAlignedObjectArray< int > m_contactNodesList
Definition: btReducedDeformableBody.h:97
btReducedDeformableBody::m_projPA
tDenseMatrix m_projPA
Definition: btReducedDeformableBody.h:34
btReducedDeformableBody::updateRestNodalPositions
void updateRestNodalPositions()
Definition: btReducedDeformableBody.cpp:521
btReducedDeformableBody::updateLocalInertiaTensorFromNodes
void updateLocalInertiaTensorFromNodes()
Definition: btReducedDeformableBody.cpp:533
btReducedDeformableBody::m_nodalMass
tDenseArray m_nodalMass
Definition: btReducedDeformableBody.h:92
btReducedDeformableBody::setTotalMass
virtual void setTotalMass(btScalar mass, bool fromfaces=false)
Definition: btReducedDeformableBody.cpp:494
btReducedDeformableBody::getRigidTransform
btTransform & getRigidTransform()
Definition: btReducedDeformableBody.cpp:769
btReducedDeformableBody::m_reducedDofsBuffer
tDenseArray m_reducedDofsBuffer
Definition: btReducedDeformableBody.h:81
btReducedDeformableBody::m_dampingBeta
btScalar m_dampingBeta
Definition: btReducedDeformableBody.h:69
btSoftBody
The btSoftBody is an class to simulate cloth and volumetric soft bodies.
Definition: btSoftBody.h:75
btTransform
The btTransform class supports rigid transforms with only translation and rotation and no scaling/she...
Definition: btTransform.h:30
btVector3
btVector3 can be used to represent 3D points and vectors.
Definition: btVector3.h:82
btVector3::getZ
const btScalar & getZ() const
Return the z value.
Definition: btVector3.h:565
btVector3::setZ
void setZ(btScalar _z)
Set the z value.
Definition: btVector3.h:571
btVector3::setY
void setY(btScalar _y)
Set the y value.
Definition: btVector3.h:569
btVector3::setX
void setX(btScalar _x)
Set the x value.
Definition: btVector3.h:567
btVector3::getY
const btScalar & getY() const
Return the y value.
Definition: btVector3.h:563
btVector3::getX
const btScalar & getX() const
Return the x value.
Definition: btVector3.h:561
btSoftBodyWorldInfo
Definition: btSoftBody.h:48