1 #ifndef BT_REDUCED_SOFT_BODY_HELPERS_H
2 #define BT_REDUCED_SOFT_BODY_HELPERS_H
4 #include "btReducedDeformableBody.h"
7 struct btReducedDeformableBodyHelpers
9 // create a reduced deformable object
10 static btReducedDeformableBody* createReducedDeformableObject(btSoftBodyWorldInfo& worldInfo, const std::string& file_path, const std::string& vtk_file, const int num_modes, bool rigid_only);
11 // read in geometry info from Vtk file
12 static btReducedDeformableBody* createFromVtkFile(btSoftBodyWorldInfo& worldInfo, const char* vtk_file);
13 // read in all reduced files
14 static void readReducedDeformableInfoFromFiles(btReducedDeformableBody* rsb, const char* file_path);
15 // read in a binary vector
16 static void readBinaryVec(btReducedDeformableBody::tDenseArray& vec, const unsigned int n_size, const char* file);
17 // read in a binary matrix
18 static void readBinaryMat(btReducedDeformableBody::tDenseMatrix& mat, const unsigned int n_modes, const unsigned int n_full, const char* file);
20 // calculate the local inertia tensor for a box shape reduced deformable object
21 static void calculateLocalInertia(btVector3& inertia, const btScalar mass, const btVector3& half_extents, const btVector3& margin);
25 #endif // BT_REDUCED_SOFT_BODY_HELPERS_H