#ifndef THOR_H
#define THOR_H

#include "Material.h"

/**
@class Thor
Класс, описывающий переменные, при помощи которых строится Тор, содержит конструктор,
деструктор, 2 члена данных вещественного типа, член данных типа - материал, член данных типа
- трехмерный вектор и восемь методов.
*/
class Thor
{
public:
        /// этот член - позиция центра Тора
        Vector3D PosCen;
        /// этот член - меньший радиус Тора
        float Width;
        /// этот член - больший радиус Тора
        float Radius;

        /// этот член описывает материал Тора
        Mater Material;

        /// Конструктор
        Thor();
        /// Деструктор
        ~Thor();

        /// Метод, устанавливающий позицию центра из параметра.
        /// @param  Pos – параметр типа трехмерный вектор(может быть константным)
        void SetPosCen(const Vector3D Pos);
        /// Метод, устанавливающий меньший радиус из параметра.
        /// @param  Wid – параметр вещественного типа(может быть константным)
        void SetWid(const float Wid);
        /// Метод, устанавливающий больший радиус из параметра.
        /// @param  Rad – параметр вещественного типа(может быть константным)
        void SetRad(const float Rad);
        /// Метод, устанавливающий материал из параметра.
        /// @param  Mat – параметр типа материал(может быть константным)
        void SetMater(Mater Mat);

        /// Метод, позволяющий получить позицию центра из объекта.
        /// @return Позиция центра типа трехмерный вектор
        Vector3D GetPosCen();
        /// Метод, позволяющий получить меньший радиус из объекта.
        /// @return Меньший радиус вещественного типа
        float GetWid();
        /// Метод, позволяющий получить больший радиус из объекта.
        /// @return Больший радиус вещественного типа
        float GetRad();
        /// Метод, позволяющий получить материал из объекта.
        /// @return Материал типа материал
        Mater GetMater();

};


#endif // THOR_H
