为什么使用 Processing 绘制的圆圈如此参差不齐?

Why are circles drawn using Processing so jagged?

我用下面的代码画了一个简单的圆:

import processing.core.PApplet;

public class A3 extends PApplet {

    public static void main(String[] args) {
        PApplet.main(A3.class.getCanonicalName());
    }

    public void settings() {
        size(800, 600);

    }

    public void draw() {
        background(255);
        stroke(0);
        ellipse(200,200,300,300);
    }

    public void setup() {
        background(255);

    }
}

结果是下面的锯齿状圆圈:

我试过使用 smooth(8);,但没用。

您希望它看起来像什么?

请注意,您真正看到的只是 "jaggedness",因为您增大了图片的尺寸。以下是您实际应该看到的内容:

我不认为这个圆是锯齿状的。事实上,默认情况下,Processing 使用抗锯齿使绘图看起来更平滑。尝试通过在 setup() 函数中调用 noSmooth() 来禁用它,您会看到:

对我来说,这看起来更参差不齐。

您也可以尝试通过在 draw() 函数中调用 strokeWeight() 来增加线宽。这里是 strokeWeight(8):

老实说,如果我是你,我就不会担心这个。 Processing 默认使用抗锯齿,因此无需您做任何特殊操作,一切都应该看起来很合理。如果您仔细观察任何像素图,您会发现一些锯齿状。