「ぎょーむ日誌」目次に戻る | KuboWeb top に戻る | twilog | atom

ぎょーむ日誌 2001-05-18

苦情・お叱りは, たいへんお手数かけて恐縮ですが, 久保 (kubo@ees.hokudai.ac.jp) までお知らせください.

2001 年 05 月 18 日 (金)

	void Fvision::SkyWatch( Eye* eye )
	{
	        eye->ClearGazes();
	        eye->InitializeGazes( sky );
	        Gaze*   gaze( eye->NextGaze() );
	        while ( gaze != NULL && eye->Continue() == true ) {
	                gaze->InputId( NewGazeId() );
	                voxels->CalcMovingVector( gaze );
	                while ( voxels->LookAround( gaze ) == true ) {
	                        if ( voxels->CheckHitVit( gaze ) == true ) {
	                                Vit*    vit( voxels->PopHitVit() );
	                                while ( vit != NULL ) {
	                                        eye->CheckVit( vit );
	                                        vit = voxels->PopHitVit(); // next vit
	                                }
	                        }
	                        gaze->MoveViewPoint( voxels->MovingVector() );
	                }
	                gaze = eye->NextGaze();
	        }
	}
	class Eye
	{
	public:
	        virtual ~Eye( void ) {};
	        virtual void    ClearGazes( void ) = 0;
	        virtual void    InitializeGazes( Sky* ) = 0;
	        virtual void    CheckVit( Vit* ) = 0;
	        virtual Gaze*   NextGaze( void ) = 0;
	        virtual bool    Continue( void ) = 0;
	};

KuboLog | KuboWeb