📄 base.h
字号:
#ifndef _BASE_H_
#define _BASE_H_
// 如果距离小于DISTANCE_ZERO,则认为该距离为0
#ifndef DISTANCE_ZERO
#define DISTANCE_ZERO 1.e-6
#endif
#define PI acos(-1)
//定义包围盒
typedef struct _box2d BOX2D ;
struct _box2d
{
int min[2], max[2] ; // 定义最大和最小坐标值
} ;
//定义位置类
class Position {
public:
int x;
int y;
public:
Position();
Position(int ox, int oy);
Position(const int *pnt);
Position(const Position& positionSrc);
~Position();
void Init(); // 初始化成员变量
int& operator[](const int& i);
operator const int *() const;
operator int *();
const Position& operator=(const Position& positionSrc);
friend Position operator+(const Position& position1,const Position& position2);
friend Position operator-(const Position& position1,const Position& position2);
friend Position operator*(const Position& position, const double& scale);
friend Position operator*(const double& scale, const Position& position);
const Position& operator+=(const Position& positionSrc);
const Position& operator-=(const Position& positionSrc);
const Position& operator*=(const double& scale);
double Distance(const Position& pnt);
BOOL IsSame(const Position& pointSrc);
BOOL IsInBox(const BOX2D& box);
Position Offset(const int & deltax,const int & deltay);
Position Offset(const Position& off);
void Serialize(CArchive &ar) ;
};
double GetAngleToXAxis(const Position& pos1,const Position& pos2);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -