使用QPainter的drawArc(const QRectF &rectangle, int startAngle, int spanAngle)需要3个参数,求解后面的2个参数如何根据坐标点进行计算?
三角函数
计算几何
仅供参考:
double angle3Points(cv::Point pt1, cv::Point pt2, cv::Point pt0) {// finds a angle between vectors from pt0->pt1 and from pt0->pt2
double dx1 = pt1.x - pt0.x;
double dy1 = pt1.y - pt0.y;
double dx2 = pt2.x - pt0.x;
double dy2 = pt2.y - pt0.y;
double angle=acos((dx1*dx2 + dy1*dy2) / sqrt((dx1*dx1 + dy1*dy1)*(dx2*dx2 + dy2*dy2) + 1e-10))*180.0 / 3.14159265;
// double cross=dx1*dy2-dx2*dy1;
// if (cross<0) angle=-angle;
return angle;
}