80 lines
1.7 KiB
C++
80 lines
1.7 KiB
C++
/*
|
|
* $Id: shape.h,v 1.12 2002/07/19 20:33:29 msell Exp $
|
|
*
|
|
*
|
|
* $Log: shape.h,v $
|
|
* Revision 1.12 2002/07/19 20:33:29 msell
|
|
* #pragma once -> #ifndef
|
|
*
|
|
* Revision 1.11 2002/07/04 21:05:41 msell
|
|
* Se toimii!! =)
|
|
* Törmäystarkistukset siis
|
|
*
|
|
* Revision 1.10 2002/06/30 16:05:04 msell
|
|
* Törmäyksien parantelua, transformaatioita mukana
|
|
*
|
|
* Revision 1.9 2002/06/24 14:12:15 msell
|
|
* Nyt toimii sphere -> mesh -törmäykset, ihan tosi
|
|
*
|
|
* Revision 1.8 2002/06/20 22:50:12 msell
|
|
* Meshit
|
|
*
|
|
* Revision 1.7 2002/06/15 17:18:37 msell
|
|
* Toimiva törmäystarkastus kiinteille laatikoille
|
|
*
|
|
* Revision 1.6 2002/06/14 00:05:05 msell
|
|
* Törmäyssimulaatio kunnossa toivon mukaan
|
|
*
|
|
* Revision 1.5 2002/06/11 23:11:45 msell
|
|
* Törmäystarkistusta
|
|
*
|
|
* Revision 1.4 2002/06/07 21:16:51 msell
|
|
* Fysiikkaenginen alkua
|
|
*
|
|
* Revision 1.3 2002/06/05 23:55:46 msell
|
|
* Pallo
|
|
*
|
|
* Revision 1.2 2002/06/04 16:28:32 msell
|
|
* #pragma once
|
|
*
|
|
* Revision 1.1 2002/06/02 16:57:37 msell
|
|
* Objektirakenteen pohja
|
|
*
|
|
*
|
|
*
|
|
* $Date: 2002/07/19 20:33:29 $
|
|
*
|
|
*/
|
|
|
|
#ifndef __SHAPE_H_INCLUDED__
|
|
#define __SHAPE_H_INCLUDED__
|
|
|
|
class Shape;
|
|
class SphereShape;
|
|
class MeshShape;
|
|
|
|
#include "object.h"
|
|
|
|
/*
|
|
* Abstract class for object geometry
|
|
*/
|
|
class Shape{
|
|
protected:
|
|
Object *object;
|
|
|
|
public:
|
|
Shape(Object *object);
|
|
|
|
|
|
virtual float calculateMomentOfInertia(float *rotationvector) = 0;
|
|
|
|
virtual bool checkCollision(Object *target);
|
|
|
|
virtual bool checkCollisionPeer(Shape *target);
|
|
virtual bool checkCollisionPeer(SphereShape *target);
|
|
virtual bool checkCollisionPeer(MeshShape *target);
|
|
};
|
|
|
|
#endif
|
|
|