#if !defined ATS_BOIDGROUP_H
#define ATS_BOIDGROUP_H

#include "ats_point.h"
#include "ats_composite.h"
#include "ats_BoundingFrame.h"

namespace ats
{
	// 群れ ----------------------------------------------------------------
	class BoidGroup : public Group3DD
	{
	private:
		Point3D m_center;
		Point3D m_muki;
		BoundingFrame* m_bounding_frame;

		void UpdateSelf();
		//void CalcNear();

	public:
		BoidGroup(BoundingFrame*);
		virtual ~BoidGroup();

		// 操作
		virtual void UpdateTime(double time); // 時間更新
		virtual void Add(Obj3DD *a);          // 仲間に加える
		virtual void Draw();                  // 描画

		// 属性
		virtual const Point3D& Center() const; // 中心
		virtual const Point3D& Muki() const;   // 向き（単位ベクトル）
		virtual const BoundingFrame& GetBoundingFrame() const;
		virtual void  SetBoundingFrame(BoundingFrame* a);
	};
}

#endif
