Mercator
|
00001 // This file may be redistributed and modified only under the terms of 00002 // the GNU General Public License (See COPYING for details). 00003 // Copyright (C) 2005 Alistair Riddoch 00004 00005 #ifndef MERCATOR_AREASHADER_H 00006 #define MERCATOR_AREASHADER_H 00007 00008 #include <Mercator/Shader.h> 00009 00010 namespace Mercator 00011 { 00012 00013 class Area; 00014 00016 class AreaShader : public Shader 00017 { 00018 public: 00022 AreaShader(int layer); 00023 00024 virtual void shade(Surface &s) const; 00025 00026 virtual bool checkIntersect(const Segment &) const; 00027 private: 00029 void shadeArea(Surface& s, const Area* const ar) const; 00030 00032 int m_layer; 00033 }; 00034 00035 } 00036 00037 #endif // of MERCATOR_AREASHADER_H