Я пытаюсь вычислить координаты для красных линий, показанных на изображении.Расчетная точка в дуге
Я написал следующее:
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 увеличивается сверху вниз.
Нравится: return QPoint (((double) intRadius * cos (dblRadians)) + pptOrigin-> x() , ((double) intRadius * -sin (dblRadians)) + pptOrigin-> y()); – SPlatten
@SPlatten да, это должно было сделать – Logicrat
отличная спасибо, что работает! – SPlatten