00001 #ifndef DRAW_AREA_COMPONENT_H 00002 #define DRAW_AREA_COMPONENT_H 00003 00013 #include "componentInterface.h" 00014 #include "drawAreaCtrl.h" 00015 00016 00020 class DrawAreaComponent : public ComponentInterface { 00021 DrawAreaComponent(void); 00022 VXV::Grid view_center; 00023 VXV::Grid view_offset; 00024 VXV::Direction view_rotate; 00025 double view_magnify; 00026 00027 public: 00028 DrawAreaComponent(const VXV::Rect& center, double magnify = 1.0); 00029 ~DrawAreaComponent(void); 00030 bool draw(unsigned long ticks, const UserInput& ui); 00031 00032 // どこを中心に描画するかの位置 00033 void setViewCenter(const VXV::Grid& center); 00034 00035 // 描画中心のオフセット指定 00036 void setViewCenterOffset(const VXV::Grid& offset); 00037 00038 // 回転指定 00039 void setViewRotateAngle(const VXV::Direction& angle); 00040 00041 // 拡大率 00042 void setViewMagnify(double magnify); 00043 00044 void add(DrawAreaCtrlInterface* obj); 00045 void del(DrawAreaCtrlInterface* obj); 00046 void clear(void); 00047 }; 00048 00049 00050 #endif /* !DRAW_AREA_COMPONENT_H */ 00051