7

線を使って三角形を描きます。どうすれば色を塗りつぶすことができますか?これまでのところ、線の色を成功させることはできますが、色を塗りつぶすことはできません。

public void paintComponent(Graphics g){
        super.paintComponents(g);
        int k=0;
        for (j=0 ; j < numOfLines; j++){    // the values of numOfLines retrieved from other method.
        g.setColor(Color.green);
        g.drawLine(x[k], x[k+1], x[k+2], x[k+3]);
        k = k+4;  //index files
        }
4

3 に答える 3

19

Polygon呼び出して、頂点から を作成し、代わりにそれを埋めfillPolygon(...)ます:

// A simple triangle.
x[0]=100; x[1]=150; x[2]=50;
y[0]=100; y[1]=150; y[2]=150;
n = 3;

Polygon p = new Polygon(x, y, n);  // This polygon represents a triangle with the above
                                   //   vertices.

g.fillPolygon(p);     // Fills the triangle above.
于 2009-03-24T01:42:32.960 に答える
8

ポリゴン (この場合は三角形) の頂点を指定して、に渡す必要があります。fillPolygon():

  public void paint(Graphics g) 
  {
    int xpoints[] = {25, 145, 25, 145, 25};
    int ypoints[] = {25, 25, 145, 145, 25};
    int npoints = 5;

    g.fillPolygon(xpoints, ypoints, npoints);
  }
于 2009-03-24T01:41:27.890 に答える