const double eps = 1e-8;//epsilon
const double PI = acos(-1.0);
struct Point
{
double x,y;
Point(){} // 析构函数
Point(double _x,double _y)
{
x = _x;
y = _y;
}
Point operator -(const Point &b)const //重载减号运算符
{
return Point(x-b.x , y-b.y);
}
//叉乘积(重载)
double operator ^(const Point &b)const
{
return x*b.y - y*b.x;
}
//点乘积(重载)
double operator *(const Point &b)const
{
return x*b.x + y*b.y;
}
//绕原点旋转角度B(弧度值)后x和y的变化(推导过程采用了和差化积公式)
void transXY(double B)
{
double tx = x;
double ty = y;
x = tx*cos(B) - ty*sin(B);
y = tx*sin(B) + ty*cos(B);
}
};
【ACM】Point定义
最新推荐文章于 2022-10-21 22:00:44 发布