2017-08-17 7 views
1

は、私は次のコードを使用して、単純な円を描く:Processingを使用して描かれた円は、ギザギザになるのはなぜですか?

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); 

    } 
} 

、結果は以下のギザギザ円です: The jagged circle

私はsmooth(8);を使用して試してみましたが、それは助けにはなりませんでした。

答えて

3

代わりにどのように見えると思われますか?

画像のサイズを大きくしたため、実際には「ギザギザ」しか見えません。ここでは、実際に見るべきものだ。私はこの円がギザギザ呼び出すことはありません

anti-aliased circle

。実際には、デフォルトでProcessingではアンチエイリアスを使用して描画をよりスムーズに見せます。 setup()関数内noSmooth()を呼び出すことで、これを無効にしてみてください、とあなたはこれを参照してくださいよ。私に

non anti-aliased circle

はるかにギザギザに見えること。

draw()機能の中でstrokeWeight()を呼び出すことで、線幅を広げることもできます。ここstrokeWeight(8)です:

thick circle

正直なところ、私があなただったら、私はちょうどこの心配はないでしょう。処理はデフォルトでアンチエイリアシングを使用しているので、何も特別なことをしなければすべてがかなり妥当であるはずです。あなたがどんなピクセル図面でも十分に見えるなら、あなたはあるギザギザを見つけるでしょう。

+0

私は実際に写真をズームすることなくギザギザを見ました。そして、それが最初にこの質問を引き起こしたのでした。しかし、あなたはそれが助けられないということは正しいと思います...どうもありがとうございます。 – HappyFace

関連する問題