00001 #ifndef POINT_H
00002 #define POINT_H
00003
00004 #include <math.h>
00005 #include "AbstractEditable.h"
00006
00008 class VPoint : public VAbstractEditable
00009 {
00010 public:
00011
00013 int x;
00014
00016 int y;
00017
00018 VPoint ();
00019 VPoint (int, int);
00020
00022 int Distance (VPoint) const;
00023
00024 int DistanceToLine(VPoint pone, VPoint ptwo) const;
00025
00027 int SquaredDistance (VPoint) const;
00028
00029
00030
00032
00033
00034 VPoint operator+ (VPoint);
00035 VPoint operator- (VPoint);
00036 VPoint operator* (VPoint);
00037 VPoint operator/ (VPoint);
00038
00039 VPoint operator* (int);
00040 VPoint operator/ (int);
00041
00042 VPoint operator* (float);
00043
00044 bool operator> (int);
00045 bool operator== (int);
00046 bool operator== (VPoint);
00047 bool operator< (int);
00048
00049 VPoint operator- ();
00050
00051 operator CPoint () { return CPoint( x, y); }
00052
00054
00056 VAbstractEditor* CreateEditor();
00057
00058 };
00059
00060 int intsqrt(int);
00061
00062
00063 #endif