Ticker

6/random/ticker-posts

Java Şekil Çizdirme - Çember Kare Dikdörtgen Üçgen Yazı

Java Swing kullanarak bir panel üzerine çember, kare, dikdötgen, yay, üçgen çizdirme ve yazı yazdırma örnek kodu aşağıdaki gibidir.

Java Şekil Çizdirme - Çember Kare Dikdörget Üçgen
Java Şekil Çizdirme - Çember Kare Dikdörget Üçgen

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class JavaSekilCizdirmePanel extends JPanel {
	
	public JavaSekilCizdirmePanel() {
		setSize(450, 450);
	}
	
	@Override
	public void paintComponent(Graphics g) {
		super.paintComponent(g);
	
		// Cerceve cetvel cizimleri 
		
		g.fillRect(10, 10, 4, 4);
		 
		g.drawLine(10, 10, 10, 600);
		
		g.drawLine(10, 10, 600, 10);
		
		for(int i = 10; i <= 600; i += 50) {
			
			g.drawString(Integer.toString(i), i, 10);
			
			g.drawString(Integer.toString(i), 10, i);
		}
		
		// Cerceve cetvel cizimleri bitti
		
		g.setColor(Color.BLUE);
		
		g.drawOval(50, 40, 100, 100);
		
		g.fillOval(160, 40, 100, 100);
		
		g.fillArc(280, 40, 100, 100, 130, 135);
		 
		g.setColor(Color.RED);

		g.drawRect(50, 150, 100, 100);
		
		g.fillRect(160, 150, 150, 100);
		
		g.setColor(Color.DARK_GRAY);
		
		g.drawLine(380, 40, 380, 250);
		g.drawLine(381, 40, 381, 250);
		
		g.setColor(Color.MAGENTA);
		
		g.drawRoundRect(50, 280, 100, 60, 30, 40);
		
		g.fillRoundRect(160, 280, 100, 60, 30, 40);
		
		g.setColor(Color.BLACK);
		
		g.drawString("Java'da Şekil Çizimleri", 30, 30);
		
		g.setColor(Color.ORANGE);
		
		java.awt.Polygon p = new java.awt.Polygon();
		p.addPoint(350, 280);
		p.addPoint(280, 350);
		p.addPoint(410, 350);
		g.fillPolygon(p);
	}
	
	public static void main(String[] args) {
		JavaSekilCizdirmePanel panel = new JavaSekilCizdirmePanel();

		JFrame frame = new JFrame("Java Şekil Çizdirme");
		frame.setLayout(new BorderLayout());
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		frame.add(panel, BorderLayout.CENTER);

		frame.pack();
		frame.setSize(450, 450);
		frame.setVisible(true);
	}
}

Kod Açıklaması

Örnek kodu açıklayacak olursak, Öncelikle JPanel sınıfından türeyen bir sınıf tanımlıyoruz ve paintComponent(Graphics g) metodunu override ediyoruz. Burada java.awt.Graphics nesnesine ulaşmamız önemli çünkü çizim metodları bu sınıfın içinde.

Graphics nesnesini kullanarak panelimizin kenarlarına cetvel görünümü kazandırmak için piksel konumlarını yazdırıyoruz. 

Graphics nesnesinde draw ile başlayan metodlar içleri boş şekiller çizer. 

Graphics nesnesinde fill ile başlayan metodlar içleri dolu şekiller çizer.

Örneğimizde bazı şekilleri içleri dolu bazılarınınki boş olacak şekilde çizdirdik.

 Java'da Nasıl Şekil Çizilir?

  • Çember çizmek için drawOval veya fillOval metodu
  • Yay çizdirmek için drawArc veya fillArc metodu
  • Kare ve dikdörtgen çizmek için drawRect veya fillRect metodu
  • Çizgi çizmek için drawLine metodu
  • Üçgen çizmek için drawPolygon veya fillPolygon
  • Yuvarlak köşeli dörtgen çizmek için drawRoundRect veya fillRoundRect metodları Java'da 2 boyutlu (2B veya 2D) şekil çizmek için kullanılır.


Yorum Gönder

0 Yorumlar