Bullet Collision Detection & Physics Library
Public Member Functions | Protected Attributes | List of all members
btDefaultSoftBodySolver Class Reference

#include <btDefaultSoftBodySolver.h>

Inheritance diagram for btDefaultSoftBodySolver:
Inheritance graph
[legend]
Collaboration diagram for btDefaultSoftBodySolver:
Collaboration graph
[legend]

Public Member Functions

 btDefaultSoftBodySolver ()
 
virtual ~btDefaultSoftBodySolver ()
 
virtual SolverTypes getSolverType () const
 Return the type of the solver. More...
 
virtual bool checkInitialized ()
 Ensure that this solver is initialized. More...
 
virtual void updateSoftBodies ()
 Perform necessary per-step updates of soft bodies such as recomputing normals and bounding boxes. More...
 
virtual void optimize (btAlignedObjectArray< btSoftBody * > &softBodies, bool forceUpdate=false)
 Optimize soft bodies in this solver. More...
 
virtual void copyBackToSoftBodies (bool bMove=true)
 Copy necessary data back to the original soft body source objects. More...
 
virtual void solveConstraints (float solverdt)
 Solve constraints for a set of soft bodies. More...
 
virtual void predictMotion (float solverdt)
 Predict motion of soft bodies into next timestep. More...
 
virtual void copySoftBodyToVertexBuffer (const btSoftBody *const softBody, btVertexBufferDescriptor *vertexBuffer)
 
virtual void processCollision (btSoftBody *, const btCollisionObjectWrapper *)
 
virtual void processCollision (btSoftBody *, btSoftBody *)
 Process a collision between two soft bodies. More...
 
- Public Member Functions inherited from btSoftBodySolver
 btSoftBodySolver ()
 
virtual ~btSoftBodySolver ()
 
virtual void processCollision (btSoftBody *, const struct btCollisionObjectWrapper *)=0
 Process a collision between one of the world's soft bodies and another collision object. More...
 
virtual void setNumberOfPositionIterations (int iterations)
 Set the number of velocity constraint solver iterations this solver uses. More...
 
virtual int getNumberOfPositionIterations ()
 Get the number of velocity constraint solver iterations this solver uses. More...
 
virtual void setNumberOfVelocityIterations (int iterations)
 Set the number of velocity constraint solver iterations this solver uses. More...
 
virtual int getNumberOfVelocityIterations ()
 Get the number of velocity constraint solver iterations this solver uses. More...
 
float getTimeScale ()
 Return the timescale that the simulation is using. More...
 

Protected Attributes

bool m_updateSolverConstants
 Variable to define whether we need to update solver constants on the next iteration. More...
 
btAlignedObjectArray
< btSoftBody * > 
m_softBodySet
 
- Protected Attributes inherited from btSoftBodySolver
int m_numberOfPositionIterations
 
int m_numberOfVelocityIterations
 
float m_timeScale
 

Additional Inherited Members

- Public Types inherited from btSoftBodySolver
enum  SolverTypes {
  DEFAULT_SOLVER,
  CPU_SOLVER,
  CL_SOLVER,
  CL_SIMD_SOLVER,
  DX_SOLVER,
  DX_SIMD_SOLVER
}
 

Detailed Description

Definition at line 24 of file btDefaultSoftBodySolver.h.

Constructor & Destructor Documentation

btDefaultSoftBodySolver::btDefaultSoftBodySolver ( )

Definition at line 25 of file btDefaultSoftBodySolver.cpp.

btDefaultSoftBodySolver::~btDefaultSoftBodySolver ( )
virtual

Definition at line 33 of file btDefaultSoftBodySolver.cpp.

Member Function Documentation

bool btDefaultSoftBodySolver::checkInitialized ( )
virtual

Ensure that this solver is initialized.

Implements btSoftBodySolver.

Definition at line 60 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::copyBackToSoftBodies ( bool  bMove = true)
virtual

Copy necessary data back to the original soft body source objects.

Implements btSoftBodySolver.

Definition at line 38 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::copySoftBodyToVertexBuffer ( const btSoftBody *const  softBody,
btVertexBufferDescriptor vertexBuffer 
)
virtual

Definition at line 79 of file btDefaultSoftBodySolver.cpp.

virtual SolverTypes btDefaultSoftBodySolver::getSolverType ( ) const
inlinevirtual

Return the type of the solver.

Implements btSoftBodySolver.

Definition at line 38 of file btDefaultSoftBodySolver.h.

void btDefaultSoftBodySolver::optimize ( btAlignedObjectArray< btSoftBody * > &  softBodies,
bool  forceUpdate = false 
)
virtual

Optimize soft bodies in this solver.

Implements btSoftBodySolver.

Definition at line 43 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::predictMotion ( float  solverdt)
virtual

Predict motion of soft bodies into next timestep.

Implements btSoftBodySolver.

Definition at line 139 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::processCollision ( btSoftBody softBody,
const btCollisionObjectWrapper collisionObjectWrap 
)
virtual

Definition at line 133 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::processCollision ( btSoftBody ,
btSoftBody  
)
virtual

Process a collision between two soft bodies.

Implements btSoftBodySolver.

Definition at line 127 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::solveConstraints ( float  solverdt)
virtual

Solve constraints for a set of soft bodies.

Implements btSoftBodySolver.

Definition at line 65 of file btDefaultSoftBodySolver.cpp.

void btDefaultSoftBodySolver::updateSoftBodies ( )
virtual

Perform necessary per-step updates of soft bodies such as recomputing normals and bounding boxes.

Implements btSoftBodySolver.

Definition at line 48 of file btDefaultSoftBodySolver.cpp.

Member Data Documentation

btAlignedObjectArray< btSoftBody * > btDefaultSoftBodySolver::m_softBodySet
protected

Definition at line 30 of file btDefaultSoftBodySolver.h.

bool btDefaultSoftBodySolver::m_updateSolverConstants
protected

Variable to define whether we need to update solver constants on the next iteration.

Definition at line 28 of file btDefaultSoftBodySolver.h.


The documentation for this class was generated from the following files: