18 #include "pandabase.h" 21 #include "physxObject.h" 22 #include "physxObjectCollection.h" 23 #include "physxEnums.h" 24 #include "physx_includes.h" 44 void set_name(
const char *name);
45 void set_group(
unsigned int group);
47 void set_flag(PhysxClothFlag flag,
bool value);
48 void set_thickness(
float thickness);
50 const char *get_name()
const;
51 unsigned int get_num_particles();
52 unsigned int get_group()
const;
54 bool get_flag(PhysxClothFlag flag)
const;
55 float get_thickness()
const;
56 float get_density()
const;
57 float get_relative_grid_spacing()
const;
60 void attach_vertex_to_global_pos(
unsigned int vertexId,
LPoint3f const &pos);
61 void free_vertex(
unsigned int vertexId);
63 void attach_to_colliding_shapes();
65 void attach_vertex_to_shape(
unsigned int vertexId,
PhysxShape *shape,
LPoint3f const &localPos);
66 PhysxVertexAttachmentStatus get_vertex_attachment_status(
unsigned int vertexId)
const;
67 PhysxShape *get_vertex_attachment_shape(
unsigned int vertexId)
const;
68 LPoint3f get_vertex_attachment_pos(
unsigned int vertexId)
const;
71 bool is_sleeping()
const;
72 void wake_up(
float wakeCounterValue=NX_SLEEP_INTERVAL);
74 void set_sleep_linear_velocity(
float threshold);
75 float get_sleep_linear_velocity()
const;
78 void set_external_acceleration(
LVector3f const &acceleration);
79 LVector3f get_external_acceleration()
const;
81 void set_wind_acceleration(
LVector3f const &acceleration);
84 void add_force_at_vertex(
LVector3f const &force,
int vertexId,
85 PhysxForceMode mode=FM_force);
86 void add_force_at_pos(
LPoint3f const &pos,
float magnitude,
float radius,
87 PhysxForceMode mode=FM_force);
88 void add_directed_force_at_pos(
LPoint3f const &pos,
LVector3f const &force,
float radius,
89 PhysxForceMode mode=FM_force);
91 INLINE
void ls()
const;
92 INLINE
void ls(ostream &out,
int indent_level=0)
const;
102 INLINE NxCloth *ptr()
const {
return _ptr; };
104 void link(NxCloth *ptr);
117 static void init_type() {
118 PhysxObject::init_type();
119 register_type(_type_handle,
"PhysxCloth",
120 PhysxObject::get_class_type());
123 return get_class_type();
127 return get_class_type();
134 #include "physxCloth.I" 136 #endif // PHYSXCLOTH_H
Abstract base class for shapes.
This is a three-component vector distance (as opposed to a three-component point, which represents a ...
This is a three-component point in space (as opposed to a three-component vector, which represents a ...
A scene is a collection of bodies, constraints, and effectors which can interact. ...
This class exists just to provide scoping for the enums shared by PhysX classes.
TypeHandle is the identifier used to differentiate C++ class types.
Renderable geometry which represents a cloth mesh.