diff options
Diffstat (limited to 'src/model/classes.h')
-rw-r--r-- | src/model/classes.h | 54 |
1 files changed, 32 insertions, 22 deletions
diff --git a/src/model/classes.h b/src/model/classes.h index c2b6a20..111d7d0 100644 --- a/src/model/classes.h +++ b/src/model/classes.h @@ -23,28 +23,6 @@ namespace model */ enum Cull { CullNone=0, CullBack=1, CullFront=2 }; -/* ---- class MapClass --------------------------------------------- */ - -class MapClass -{ -public: - MapClass(); - ~MapClass(); - - inline const math::Vector3f &location() const { return mapclass_location; } - - inline const math::Axis &axis() const { return mapclass_axis; } - - - inline void set_location(const math::Vector3f location) { mapclass_location.assign(location); } - - inline void set_axis(const math::Axis axis) { mapclass_axis.assign(axis); } - -private: - math::Vector3f mapclass_location; - math::Axis mapclass_axis; -}; - /* ---- class Light ------------------------------------------------ */ /// an exterior light @@ -243,6 +221,38 @@ public: float dock_radius; }; +/* ---- class SubModel --------------------------------------------- */ + +/// a submodel +class SubModel +{ +public: + SubModel(); + ~SubModel(); + + inline const std::string &name() const { return submodel_name; } + + inline const float scale() const { return submodel_scale; } + + inline const math::Vector3f &location() const { return submodel_location; } + + inline math::Axis &axis() { return submodel_axis; } + + inline void set_scale(const float scale) { submodel_scale = scale; } + + inline void set_name(const std::string &name) { submodel_name.assign(name); } + + inline void set_location(const math::Vector3f &location) { submodel_location.assign(location); } + + inline void set_axis(const math::Axis &axis) { submodel_axis.assign(axis); } + +private: + std::string submodel_name; + float submodel_scale; + math::Vector3f submodel_location; + math::Axis submodel_axis; +}; + } #endif // __INCLUDED_MODEL_CLASSES_H__ |