如何绘制圆弧,给出两点,半径和顺时针方向

时间:2011-02-10 01:47:50

标签: graphics

问题是在半径和顺时针方向的位图上绘制两个品脱弧。

1 个答案:

答案 0 :(得分:1)

从你的一句话问题,我会假设你画Bezier曲线没问题。如果没有,那里有很多关于它们的信息。

无论如何,您无法使用贝塞尔曲线(或样条曲线)创建完美的圆弧。您可以做的是将圆近似到眼睛无法看到差异的水平。这通常用8个二次贝塞尔曲线段完成,每个曲线段覆盖圆的1/8。这就是Adobe Flash如何创建圈子。

如果你正在使用sin和cos进行简单的参数化,那就更容易了:

for (float t = 0; t < 2 * Math.PI; t+=0.05) {
    float x = radius * sin(t);
    float y = radius * cos(t);
}