2009-03-24 8 views
5

Je dessine un triangle à l'aide d'une ligne. Comment puis-je remplir la couleur dessus? Jusqu'à présent, je ne peux que réussir la couleur de la ligne, mais pas remplir la couleur.Comment remplir une couleur sur un triangle

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 
     } 

Répondre

15

Faire un Polygon des sommets et remplir ce lieu, en appelant 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. 
+0

comment définir la couleur pour remplir le triangle? – ThunderWiring

8

Vous devez spécifier les sommets de polygone (dans ce cas, un triangle) et passer à 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); 
    } 
+0

Merci .... mais ce triangle moyen dessiné à l'aide de Lignes ne peut-il être rempli de couleur? – Jessy

+0

@Jessy: l'intersection des lignes (c'est-à-dire les sommets) sont les points dont vous avez besoin. –

Questions connexes