以弧计算点

时间:2016-03-21 11:14:16

标签: c++ geometry angle

我正在尝试计算图像中显示的红线的坐标。

我写了以下内容:

    QPoint clsLOFmimic::ptCalcEndPt(QPoint* pptOrigin
                                   ,int intRadius
                                   ,float fltAngle) {
        double dblRadians = ((double)fltAngle) * (M_PI / 180.0);
        return QPoint(((double)intRadius * cos(dblRadians)) + pptOrigin->x()
                      ,((double)intRadius * sin(dblRadians)) + pptOrigin->y());
    }

但是,计算出的终点的方向不正确。 'pptOrigin'是线条相交的左下角的坐标。

目标是计算正确的终点以反映图中显示的线条。 X从左到右增加,Y从上到下增加。

enter image description here

1 个答案:

答案 0 :(得分:1)

如果y向下增加,则必须对sin()函数应用减号。当x增加到右边并且y增加时,trig函数就像你期望的那样工作。