circle.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef GCCV_CIRCLE_H
00026 #define GCCV_CIRCLE_H
00027
00028 #include "fill-item.h"
00029
00032 namespace gccv {
00033
00039 class Circle: public FillItem
00040 {
00041 public:
00050 Circle (Canvas *canvas, double x, double y, double radius);
00061 Circle (Group *parent, double x, double y, double radius, ItemClient *client = NULL);
00065 virtual ~Circle ();
00066
00073 void SetPosition (double x, double y);
00080 void GetPosition (double &x, double &y);
00081
00082
00090 double Distance (double x, double y, Item **item) const;
00097 void Draw (cairo_t *cr, bool is_vector) const;
00104 void Move (double x, double y);
00105
00106 protected:
00110 void UpdateBounds ();
00111
00112 private:
00113 double m_x, m_y;
00114
00123 GCCV_ITEM_POS_PROP (double, Radius)
00124 };
00125
00126 }
00127
00128 #endif // GCCV_CIRCLE_H