diff options
author | Stijn Buys <ingar@osirion.org> | 2008-12-21 13:35:47 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2008-12-21 13:35:47 +0000 |
commit | f35e3781a120937fcf00bacd35f8e891ae630a4a (patch) | |
tree | 2c81bbb422ec56cae6dcb151536dc9e5dd24c632 /src/model/fragment.h | |
parent | aad0913d91fc3b682deddb5a5f8380d1475174f5 (diff) |
full direction. pitch and roll control for fx_flare, fx_particles and func_rotate
Diffstat (limited to 'src/model/fragment.h')
-rw-r--r-- | src/model/fragment.h | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/src/model/fragment.h b/src/model/fragment.h index 204a3c9..1978baa 100644 --- a/src/model/fragment.h +++ b/src/model/fragment.h @@ -9,8 +9,9 @@ #include <list> -#include "math/vector3f.h" +#include "math/axis.h" #include "math/color.h" +#include "math/vector3f.h" namespace model { @@ -82,31 +83,32 @@ public: ~FragmentGroup(); - inline const math::Vector3f &location() const { return group_location; } - inline const Type type() const { return group_type; } - inline const size_t size() const { return group_fragments.size(); } + inline const math::Vector3f &location() const { return group_location; } - inline const float angle() const { return group_angle; } + inline const math::Axis & axis() const { return group_axis; } inline const float speed() const { return group_speed; } - inline iterator begin() { return group_fragments.begin(); } - - inline iterator end() { return group_fragments.end(); } - - - inline void push_back(Fragment *fragment) { group_fragments.push_back(fragment); } + + inline void set_type(const Type type) { group_type = type; } inline void set_location(const math::Vector3f &location) { group_location.assign(location); } - inline void set_type(const Type type) { group_type = type; } - - inline void set_angle(const float angle) { group_angle = angle; } + inline void set_axis(const math::Axis &axis) { group_axis.assign(axis); } inline void set_speed(const float speed) { group_speed = speed; } + + inline iterator begin() { return group_fragments.begin(); } + + inline iterator end() { return group_fragments.end(); } + + inline const size_t size() const { return group_fragments.size(); } + + inline void push_back(Fragment *fragment) { group_fragments.push_back(fragment); } + void clear(); private: @@ -116,9 +118,9 @@ private: Fragments group_fragments; math::Vector3f group_location; math::Vector3f group_forward; + math::Axis group_axis; Type group_type; - float group_angle; float group_speed; }; |