Ying Yang Grafikprogrammierung

Im folgenden werden wir das Ying Yang Symbol mit Hilfe der Java Grafikprogrammierung erstellen. Hierzu sind folgende Schritte notwendig:

  1. Neues Projekt erstellen: de.michel.graphic.yingyang
  2. Paket erstellen: yingyang
  3. Klasse Painter.java erstellen
  4. Klasse YingYang.java erstellen

Quellcode

Painter.java

Diese Klasse wird mit „JComponent“ erweitert womit letztendlich die Zeichnung auf unserem erstellten Fenster mit Hilfe von fillArc() und fillOval() gezeichnet wird. Die Funktion setColor() setzt, wie der Name schon vermuten lässt, die Farbe.

package yingyang;

import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JComponent;

public class Painter extends JComponent 
{
	public void paint(Graphics pinsel)
	{
		// Oberer Halbkreis
                pinsel.setColor(new Color(0,0,0));
		pinsel.fillArc(0, 0, 200, 200, 0, 180);

                // Unterer Halbkreis
		pinsel.setColor(new Color(255,255,255));
                pinsel.fillArc(0, 0, 200, 200, 180, 180);
		
                // linker mittlerer Kreis
                pinsel.setColor(new Color(255,255,255));
                pinsel.fillOval(100,50,100,100);
		
                // rechter mittlerer Kreis
                pinsel.setColor(new Color(0,0,0));
                pinsel.fillOval(0,50,100,100);
		
                // linker kleiner Kreis 
                pinsel.setColor(new Color(255,255,255));
		pinsel.fillOval(35,90,20,20);
		
                // rechter kleiner Kreis
                pinsel.setColor(new Color(0,0,0));
		pinsel.fillOval(145,90,20,20);
	}
}

[ad#co-3]

YingYang.java

Damit die YingYang Zeichnung dargestellt wird, fügen wir die die Klasse Painter dem JFrame hinzu.

package yingyang;

import javax.swing.JFrame;

public class YingYang extends JFrame 
{
	public YingYang()
	{
                // Painter hinzufügen
		add(new Painter());
                // Titel setzen
		setTitle("Ying Yang");
		setDefaultCloseOperation(EXIT_ON_CLOSE);
                // Groesse setzen
		setSize(210,230);
                // Position des Fensters setzen
		setLocation(100, 100);
		setVisible(true);
	}
	
	public static void main(String[] args) 
	{
		new YingYang();	
	}
}

Ergebnis

Das Ausführen der main() Methode ergibt folgendes Ergebnis:

YingYang