00001
00002
00003
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