import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.GeneralPath;
import java.awt.Polygon;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class UcgenCizimi  {

	UcgenCizimi() {
        
    	JFrame frame = new JFrame("Üçgen Çizimi | Java Blackboard [112]");
        
    	JPanel cizimPaneli = new JPanel() {
    	    @Override
    	    public void paintComponent(Graphics grafik) {
    	        
    	        // JPanel sınıfının paintComponent metodunu çağırır
    	        super.paintComponent(grafik);
    	        
    	        Graphics2D grafik2D = (Graphics2D) grafik;
    	        grafik2D.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

    	        // Üçgen çizimi -> drawPlygon ile
    	        grafik.setColor(new Color(5, 2, 100));  // Renk
    	        
    	        // Üçgenin kose koordinatlari.
    	        int[] xNoktalari = {250, 103, 397};  
    	        int[] yNoktalari = {117, 371, 371};  
    	  
    	        Polygon ucgen = new Polygon(xNoktalari, yNoktalari, 3);
    	        grafik2D.setStroke(new BasicStroke(3));  // Cizgi kalinligini ayarlayalim.
    	        
    	        // Üçgeni çizelim
    	        grafik.drawPolygon(ucgen);
    	        
    	        // Üçgenin merkez noktasina 10 pixellik bir daire çizelim.
    	        int merkezX = (xNoktalari[0] + xNoktalari[1] + xNoktalari[2]) / 3; // (250+103+197) / 3 = 183 
    	        int merkezY = (yNoktalari[0] + yNoktalari[1] + yNoktalari[2]) / 3; // (117+371+371) / 3 = 286
    	        grafik.setColor(new Color(242, 5, 25));  // Renk
    	 //     grafik.drawOval(merkezX - 5, merkezY - 5, 10, 10);
    	        grafik.fillOval(merkezX - 5, merkezY - 5, 10, 10);
    	        
    	        grafik.setColor(new Color(97, 95, 245));  // Renk
    	        grafik.drawOval(merkezX - 40, merkezY - 40, 80, 80);
    	            	        
    	    }
    	};

   
        frame.add(cizimPaneli);
        
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(500, 500);
        frame.setLocationRelativeTo(null);
        frame.setResizable(false);
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        
    	new UcgenCizimi();
    
    }
}

