Bullet Collision Detection & Physics Library
btReducedDeformableBodySolver.h
Go to the documentation of this file.
1#ifndef BT_REDUCED_DEFORMABLE_BODY_DYNAMICS_WORLD_H
2#define BT_REDUCED_DEFORMABLE_BODY_DYNAMICS_WORLD_H
3
6
8
10{
11 protected:
15
17
19
20 void applyExplicitForce(btScalar solverdt);
21
22 public:
26
29
30 virtual void setGravity(const btVector3& gravity);
31
32 virtual SolverTypes getSolverType() const
33 {
35 }
36
37 // resize/clear data structures
38 virtual void reinitialize(const btAlignedObjectArray<btSoftBody*>& bodies, btScalar dt);
39
40 virtual void predictMotion(btScalar solverdt);
41
42 virtual void applyTransforms(btScalar timeStep);
43
44 // set up contact constraints
45 virtual void setConstraints(const btContactSolverInfo& infoGlobal);
46
47 // solve all constraints (fixed and contact)
48 virtual btScalar solveContactConstraints(btCollisionObject** deformableBodies, int numDeformableBodies, const btContactSolverInfo& infoGlobal);
49
50 // apply all the delta velocities
52
53 // virtual void setProjection() {}
54
55 // virtual void setLagrangeMultiplier() {}
56
57 // virtual void setupDeformableSolve(bool implicit);
58
59};
60
61#endif // BT_REDUCED_DEFORMABLE_BODY_DYNAMICS_WORLD_H
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
Definition: btScalar.h:314
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
btCollisionObject can be used to manage collision detection objects.
virtual void predictMotion(btScalar solverdt)
Predict motion of soft bodies into next timestep.
virtual btScalar solveContactConstraints(btCollisionObject **deformableBodies, int numDeformableBodies, const btContactSolverInfo &infoGlobal)
virtual void setConstraints(const btContactSolverInfo &infoGlobal)
virtual void setGravity(const btVector3 &gravity)
virtual SolverTypes getSolverType() const
Return the type of the solver.
btAlignedObjectArray< btAlignedObjectArray< btReducedDeformableNodeRigidContactConstraint > > m_nodeRigidConstraints
virtual void reinitialize(const btAlignedObjectArray< btSoftBody * > &bodies, btScalar dt)
btAlignedObjectArray< btAlignedObjectArray< btReducedDeformableStaticConstraint > > m_staticConstraints
virtual void applyTransforms(btScalar timeStep)
void predictReduceDeformableMotion(btScalar solverdt)
btAlignedObjectArray< btAlignedObjectArray< btReducedDeformableFaceRigidContactConstraint > > m_faceRigidConstraints
btVector3 can be used to represent 3D points and vectors.
Definition: btVector3.h:82