# Dreieck füllen



## Leroy42 (31. Mrz 2007)

Ich habe eine Komponente, die ein gefülltes Dreieck sichtbar,
unsichtbar oder blinken lassen soll.

Die Steuerung (blinken via Threads, ...) ist keine Problem.

Aber wie fülle ich das Dreieck? 
Im Moment habe ich nur dessen Umrandung.







In der API zur Klasse Graphics, konnte ich allerdings nur
Füllroutinen für Rechtecke und Ellipsenbogen finden  :### , nichts
für Dreiecke.    

Okay, ich könnte in y-Richtung die Anfangs- und Endkoordinaten,
nach denen jeweils horizontal eine Linie gezeichnet werden muß,
bezüglich der Koordinaten, die sich aus den Geradengleichungen der beiden,
schräg nach unten verlaufenden Geraden, ergeben, berechnen und dann 
jeweils eine dementsprechnende horizontale Gerade zeichnen.

Ich denke mir aber, daß es da vielleicht doch bereits etwas gibt.  ???:L

Edit: Huchh! Falsches Teilforum!   

Kann mich hier mal einer verschieben?


----------



## Wildcard (31. Mrz 2007)

http://java.sun.com/javase/6/docs/api/java/awt/Graphics2D.html#fill(java.awt.Shape)
Als Shape nimmst du ein Polygon.


----------



## Wildcard (31. Mrz 2007)

Leroy42 hat gesagt.:
			
		

> Edit: Huchh! Falsches Teilforum!
> 
> Kann mich hier mal einer verschieben?


Nö, du bist hier schon richtig  :bae:  :wink:


----------



## Leroy42 (31. Mrz 2007)

Danke @ wildcard!

Polygon war das Stichwort. Da gehts ja auch mit AWT-Bordmitteln.


```
class DreieckP extends JPanel {
   static final int rand = 5;
	boolean on = true;
	
	protected void paintComponent(Graphics g) {
		super.paintComponent(g);
		if (on) {
			int w = getWidth();
			int h = getHeight();
			int lenX = (int) (w*2.0 / 3.0);
			g.fillPolygon(
					new int[] {w/2-lenX/2, w/2+lenX/2, w/2},
					new int[] {rand, rand, h-rand},
					3);
		}
	}
}
```

Tja, API lesen und lesen ist eben ein Unterschied.  :?


----------



## Wildcard (31. Mrz 2007)

Jau, so geht's natürlich auch.


----------

