physics: Add additional properties

This commit is contained in:
rdb 2021-03-21 14:40:10 +01:00
parent db2936a318
commit f450aa5edf
2 changed files with 16 additions and 0 deletions

View File

@ -64,14 +64,18 @@ PUBLISHED:
INLINE int get_num_linear_forces() const; INLINE int get_num_linear_forces() const;
INLINE PT(LinearForce) get_linear_force(int index) const; INLINE PT(LinearForce) get_linear_force(int index) const;
MAKE_SEQ(get_linear_forces, get_num_linear_forces, get_linear_force); MAKE_SEQ(get_linear_forces, get_num_linear_forces, get_linear_force);
MAKE_SEQ_PROPERTY(linear_forces, get_num_linear_forces, get_linear_force);
INLINE int get_num_angular_forces() const; INLINE int get_num_angular_forces() const;
INLINE PT(AngularForce) get_angular_force(int index) const; INLINE PT(AngularForce) get_angular_force(int index) const;
MAKE_SEQ(get_angular_forces, get_num_angular_forces, get_angular_force); MAKE_SEQ(get_angular_forces, get_num_angular_forces, get_angular_force);
MAKE_SEQ_PROPERTY(angular_forces, get_num_angular_forces, get_angular_force);
INLINE void set_viscosity(PN_stdfloat viscosity); INLINE void set_viscosity(PN_stdfloat viscosity);
INLINE PN_stdfloat get_viscosity() const; INLINE PN_stdfloat get_viscosity() const;
MAKE_PROPERTY(viscosity, get_viscosity);
const PhysicsObjectCollection get_objects() const; const PhysicsObjectCollection get_objects() const;
MAKE_PROPERTY(objects, get_objects);
virtual void output(std::ostream &out = std::cout) const; virtual void output(std::ostream &out = std::cout) const;
virtual void write_physics_objects( virtual void write_physics_objects(

View File

@ -99,6 +99,18 @@ PUBLISHED:
virtual void output(std::ostream &out) const; virtual void output(std::ostream &out) const;
virtual void write(std::ostream &out, int indent=0) const; virtual void write(std::ostream &out, int indent=0) const;
PUBLISHED:
MAKE_PROPERTY(active, get_active, set_active);
MAKE_PROPERTY(mass, get_mass, set_mass);
MAKE_PROPERTY(position, get_position, set_position);
MAKE_PROPERTY(last_position, get_last_position, set_last_position);
MAKE_PROPERTY(velocity, get_velocity, set_velocity);
MAKE_PROPERTY(implicit_velocity, get_implicit_velocity);
MAKE_PROPERTY(terminal_velocity, get_terminal_velocity, set_terminal_velocity);
MAKE_PROPERTY(oriented, get_oriented, set_oriented);
MAKE_PROPERTY(orientation, get_orientation, set_orientation);
MAKE_PROPERTY(rotation, get_rotation, set_rotation);
private: private:
// physical // physical
LPoint3 _position; // aka _center_of_mass LPoint3 _position; // aka _center_of_mass