2014-01-31 08:23:00 +13:00
|
|
|
|
|
|
|
|
#ifndef PLANEMODEL_H
|
|
|
|
|
#define PLANEMODEL_H
|
|
|
|
|
|
2019-01-18 15:55:06 +01:00
|
|
|
#include "model.hpp"
|
|
|
|
|
#include "brush.hpp"
|
2014-01-31 08:23:00 +13:00
|
|
|
|
|
|
|
|
class PlaneModel : public Model{
|
|
|
|
|
public:
|
|
|
|
|
PlaneModel( int sub_divs );
|
|
|
|
|
PlaneModel( const PlaneModel &t );
|
|
|
|
|
~PlaneModel();
|
2016-10-03 17:11:15 +02:00
|
|
|
Entity *clone(){ return new PlaneModel( *this ); }
|
2014-01-31 08:23:00 +13:00
|
|
|
|
|
|
|
|
//model interface
|
|
|
|
|
bool render( const RenderContext &rc );
|
|
|
|
|
|
|
|
|
|
//object interface
|
|
|
|
|
bool collide( const Line &line,float radius,Collision *curr_coll,const Transform &tf );
|
|
|
|
|
|
|
|
|
|
Plane getRenderPlane()const;
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
struct Rep;
|
|
|
|
|
|
|
|
|
|
Rep *rep;
|
|
|
|
|
|
|
|
|
|
virtual PlaneModel *getPlaneModel(){ return this; }
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif
|