#pragma once

//! @file Mix/Dynamics/ICapsuleShape.h
//! @brief カプセルシェイプインターフェースインクルードファイル

#include "Mix/Dynamics/IShape.h"

namespace Mix{ namespace Dynamics{

	//! @class ICapsuleShape
	//! @brief カプセルシェイプ
	//! @note 筒の両端に半球がついたカプセル形状
	class ICapsuleShape : public Mix::Dynamics::IShape
	{
	protected:
		//! @brief デストラクタ
		virtual ~ICapsuleShape( void ){}

	public:
		//! @brief 軸を取得します
		//! @return 軸を表す Mix::Dynamics::AXIS_TYPE 列挙定数を返します
		virtual Mix::Dynamics::AXIS_TYPE GetAxis( void ) const = 0;
		//! @brief 高さを取得します
		//! @return 高さを返します
		virtual Float32 GetHeight( void ) const = 0;
		//! @brief 半径を取得します
		//! @return 半径を返します
		virtual Float32 GetRadius( void ) const = 0;
	};

}}
