BulletSoftBodyNode
- 
class BulletSoftBodyNode
- Bases: - BulletBodyNode- Inheritance diagram - 
void append_anchor(int node, BulletRigidBodyNode *body, bool disable = false)
 - 
void append_anchor(int node, BulletRigidBodyNode *body, LVector3 const &pivot, bool disable = false)
- Anchors 
 - 
void append_angular_joint(BulletBodyNode *body, LVector3 const &axis, PN_stdfloat erp = 1.0, PN_stdfloat cfm = 1.0, PN_stdfloat split = 1.0, BulletSoftBodyControl *control = nullptr)
 - 
void append_linear_joint(BulletBodyNode *body, int cluster, PN_stdfloat erp = 1.0, PN_stdfloat cfm = 1.0, PN_stdfloat split = 1.0)
 - 
void append_linear_joint(BulletBodyNode *body, LPoint3 const &pos, PN_stdfloat erp = 1.0, PN_stdfloat cfm = 1.0, PN_stdfloat split = 1.0)
- Links 
 - 
BulletSoftBodyMaterial append_material(void)
 - 
void generate_bending_constraints(int distance, BulletSoftBodyMaterial *material = nullptr)
 - 
void generate_clusters(int k, int maxiterations = 8192)
- Cluster 
 - 
BoundingBox get_aabb(void) const
 - 
BulletSoftBodyConfig get_cfg(void)
 - 
static TypeHandle get_class_type(void)
 - 
int get_closest_node_index(LVecBase3 point, bool local)
- Returns the index of the node which is closest to the given point. The distance between each node and the given point is computed in world space if local=false, and in local space if local=true. 
 - 
PN_stdfloat get_mass(int node) const
 - 
BulletSoftBodyMaterial get_material(int idx) const
 - 
BulletSoftBodyNodeElement get_node(int idx) const
 - 
int get_num_clusters(void) const
 - 
int get_num_materials(void) const
- Materials - Materials - Materials 
 - 
int get_num_nodes(void) const
- Nodes - Nodes - Nodes 
 - 
PN_stdfloat get_total_mass(void) const
 - 
PN_stdfloat get_volume(void) const
 - 
BulletSoftBodyWorldInfo get_world_info(void)
 - 
void link_curve(NurbsCurveEvaluator *curve)
 - 
void link_surface(NurbsSurfaceEvaluator *surface)
 - 
static PointerTo<BulletSoftBodyNode> make_ellipsoid(BulletSoftBodyWorldInfo &info, LPoint3 const ¢er, LVecBase3 const &radius, int res)
 - 
static PointerTo<BulletSoftBodyNode> make_patch(BulletSoftBodyWorldInfo &info, LPoint3 const &corner00, LPoint3 const &corner10, LPoint3 const &corner01, LPoint3 const &corner11, int resx, int resy, int fixeds, bool gendiags)
 - 
static PointerTo<BulletSoftBodyNode> make_rope(BulletSoftBodyWorldInfo &info, LPoint3 const &from, LPoint3 const &to, int res, int fixeds)
- Factory 
 - 
static PointerTo<BulletSoftBodyNode> make_tet_mesh(BulletSoftBodyWorldInfo &info, PTA_LVecBase3 points, PTA_int indices, bool tetralinks = true)
 - 
static PointerTo<BulletSoftBodyNode> make_tet_mesh(BulletSoftBodyWorldInfo &info, char const *ele, char const *face, char const *node)
 - 
static PointerTo<BulletSoftBodyNode> make_tri_mesh(BulletSoftBodyWorldInfo &info, Geom const *geom, bool randomizeConstraints = true)
 - 
static PointerTo<BulletSoftBodyNode> make_tri_mesh(BulletSoftBodyWorldInfo &info, PTA_LVecBase3 points, PTA_int indices, bool randomizeConstraints = true)
 - 
void randomize_constraints(void)
 - 
void release_cluster(int index)
 - 
void release_clusters(void)
 - 
void set_mass(int node, PN_stdfloat mass)
 - 
void set_pose(bool bvolume, bool bframe)
 - 
void set_total_density(PN_stdfloat density)
 - 
void set_total_mass(PN_stdfloat mass, bool fromfaces = false)
 - 
void set_volume_density(PN_stdfloat density)
 - 
void set_volume_mass(PN_stdfloat mass)
- Mass, volume, density 
 - 
void unlink_curve(void)
 - 
void unlink_geom(void)
 - 
void unlink_surface(void)
 
- 
void append_anchor(int node, BulletRigidBodyNode *body, bool disable = false)
