使用QPainter绘制椭圆弧会产生错误的角度

时间:2016-05-09 13:27:34

标签: c++ qt ellipse qpainter

我正在开发一个显示cgm图形的程序。对于椭圆弧,我得到了开始和结束角度的向量,所以在我计算出角度并尝试在弧形中使用它们之后,我得到了错误的角度。

在下图中:

  • 金线表示我得到的矢量。
  • 红色圆弧是我试图用给定的角度绘制图像的椭圆。
  • 我得到的绿色弧线是椭圆变为完美圆圈的图像。

enter image description here

我有办法纠正这个问题吗?

简要介绍代码:

/*213 and 113 are the angles calculated from the vectors from the center blue mark at(300, 200) to the points (-75, -50) and (75, -50) which are shown by the dark yellow lines*/  

QPainter p;

//draw elliptical arc     
p.drawPie(200,150, 200, 100, 213*16, 113*16);

//draw circular arc
p.drawPie(250,150, 100, 100, 213*16, 113*16);

编辑: 我发现了我的问题。通过假设圆和椭圆的角度相同,我的几何结构已经消失了。感谢@KubaOber提到这一点。

编辑2: 我现在需要帮助找到计算椭圆矢量角度的正确公式。如果有人可以直接指出我。感谢。

0 个答案:

没有答案