Panda3D
|
Public Member Functions | |
BulletSoftBodyNode (btSoftBody *body, const char *name="softbody") | |
void | add_force (const LVector3 &force) |
void | add_force (const LVector3 &force, int node) |
void | add_velocity (const LVector3 &velocity) |
void | add_velocity (const LVector3 &velocity, int node) |
void | append_anchor (int node, BulletRigidBodyNode *body, bool disable=false) |
void | append_anchor (int node, BulletRigidBodyNode *body, const LVector3 &pivot, bool disable=false) |
BulletSoftBodyMaterial | append_material () |
LVecBase3 | cluster_com (int cluster) const |
virtual TypeHandle | force_init_type () |
void | generate_bending_constraints (int distance, BulletSoftBodyMaterial *material=NULL) |
void | generate_clusters (int k, int maxiterations=8192) |
BoundingBox | get_aabb () const |
BulletSoftBodyConfig | get_cfg () |
int | get_closest_node_index (LVecBase3 point, bool local) |
Returns the index of the node which is closest to the given point. | |
PN_stdfloat | get_mass (int node) const |
BulletSoftBodyMaterial | get_material (int idx) const |
BulletSoftBodyNodeElement | get_node (int idx) const |
int | get_num_clusters () const |
int | get_num_materials () const |
int | get_num_nodes () const |
virtual btCollisionObject * | get_object () const |
PN_stdfloat | get_total_mass () const |
virtual TypeHandle | get_type () const |
PN_stdfloat | get_volume () const |
BulletSoftBodyWorldInfo | get_world_info () |
void | link_curve (NurbsCurveEvaluator *curve) |
void | link_geom (Geom *geom) |
void | link_surface (NurbsSurfaceEvaluator *surface) |
MAKE_SEQ (get_materials, get_num_materials, get_material) | |
MAKE_SEQ (get_nodes, get_num_nodes, get_node) | |
void | randomize_constraints () |
void | release_cluster (int index) |
void | release_clusters () |
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_velocity (const LVector3 &velocity) |
void | set_volume_density (PN_stdfloat density) |
void | set_volume_mass (PN_stdfloat mass) |
void | sync_b2p () |
void | sync_p2b () |
void | unlink_curve () |
void | unlink_geom () |
void | unlink_surface () |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static void | init_type () |
static | PT (BulletSoftBodyNode) make_rope(BulletSoftBodyWorldInfo &info |
static | PT (BulletSoftBodyNode) make_patch(BulletSoftBodyWorldInfo &info |
static | PT (BulletSoftBodyNode) make_ellipsoid(BulletSoftBodyWorldInfo &info |
static | PT (BulletSoftBodyNode) make_tri_mesh(BulletSoftBodyWorldInfo &info |
static | PT (BulletSoftBodyNode) make_tri_mesh(BulletSoftBodyWorldInfo &info |
static | PT (BulletSoftBodyNode) make_tet_mesh(BulletSoftBodyWorldInfo &info |
static | PT (BulletSoftBodyNode) make_tet_mesh(BulletSoftBodyWorldInfo &info |
Public Attributes | |
static const LPoint3 & | center |
static const LPoint3 & | corner00 |
static const LPoint3 const LPoint3 const LPoint3 & | corner01 |
static const LPoint3 const LPoint3 & | corner10 |
static const LPoint3 const LPoint3 const LPoint3 const LPoint3 & | corner11 |
static const char * | ele |
static const char const char * | face |
static const LPoint3 const LPoint3 int int | fixeds |
static const LPoint3 const LPoint3 const LPoint3 const LPoint3 int int int | fixeds |
static const LPoint3 & | from |
static const LPoint3 const LPoint3 const LPoint3 const LPoint3 int int int bool | gendiags |
static const Geom * | geom |
static PTA_LVecBase3 PTA_int | indices |
static const char const char const char * | node |
static PTA_LVecBase3 | points |
static const LPoint3 const LVecBase3 & | radius |
static const Geom bool | randomizeConstraints = true) |
static PTA_LVecBase3 PTA_int bool | randomizeConstraints = true) |
static const LPoint3 const LPoint3 int | res |
static const LPoint3 const LVecBase3 int | res |
static const LPoint3 const LPoint3 const LPoint3 const LPoint3 int | resx |
static const LPoint3 const LPoint3 const LPoint3 const LPoint3 int int | resy |
static PTA_LVecBase3 PTA_int bool | tetralinks = true) |
static const LPoint3 const LPoint3 & | to |
Protected Member Functions | |
virtual void | transform_changed () |
Called after the node's transform has been changed for any reason, this just provides a hook so derived classes can do something special in this case. |
Definition at line 65 of file bulletSoftBodyNode.h.
int BulletSoftBodyNode::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.
Definition at line 312 of file bulletSoftBodyNode.cxx.
void BulletSoftBodyNode::transform_changed | ( | ) | [protected, virtual] |
Called after the node's transform has been changed for any reason, this just provides a hook so derived classes can do something special in this case.
Reimplemented from PandaNode.
Definition at line 185 of file bulletSoftBodyNode.cxx.
References LVecBase3f::almost_equal(), LMatrix4f::almost_equal(), and NodePath::any_path().