Selasa, 10 Januari 2017

Pemandangan Salju (Menggambar Objek 2 Dimensi Menggunakan Netbeans Java)



Pemandangan Salju (Menggambar Objek 2 Dimensi Menggunakan Netbeans Java)

Halo teman teman kembali lagi nih dengan saya caratipsahoi, kali ini kita akan menggambar pemandangan menggunakan java, siapin peralatannya ya.
Daripada bengong copykan aja kodingan berikut ini. Semoga berhasil

Baca Juga

1. Menggambar Blender Dengan Java Netbeans

2. Menggambar Pemandangan Nuansa Alama Dengan Java Netbeans

3. Menggambar Pemandangan Salju Dengan Java Netbeans

4. menggambar Awan Dengan Java Netbeans

5. Menggambar Colokan Listrik Dengan Java Netbeans




import java.awt.*;

import javax.swing.*;

import java.awt.geom.*;
import java.applet.*;
import java.util.Random;

   
public class Gambar2D extends JApplet{
    public static void main (String [] args){
        JFrame frame= new JFrame (); //Membuat Frame
        frame.setTitle("UTS Grafika Komputer | Kelompok 4 | 5F");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JApplet applet= new Gambar2D ();
        applet.init();
        frame.getContentPane().add(applet);
        frame.pack();
        frame.setVisible(true);
        frame.setResizable(false);
    }
    public void init () { 
        JPanel panel4 = new Panel2D ();
        getContentPane().add(panel4);
    }
    class Panel2D extends JPanel {
        int awal = 0;
        int mulai = 0;
        public Panel2D (){
            setPreferredSize(new Dimension(1010, 570));//set ukuran frame
            setBackground (new Color (65, 249, 251));//mengeset warna background (R, G, B)
        }
        public void paintComponent (Graphics u) {
            super.paintComponent (u);
            Graphics2D u2= (Graphics2D) u;

            //Rumput
            u.setColor(new Color (23, 232, 23));
            u.fillRect(0, 250, 1100, 870);

            //Awan
            u.setColor(Color.white);
            u.fillOval(20, 15, 70, 70);
            u.fillOval(50, 15, 70, 75);
            u.fillOval(100, 15, 70, 70);
           
            //Awan 1
            u.setColor(Color.white);
            u.fillOval(20, 15, 70, 70);
            u.fillOval(50, 15, 70, 75);
            u.fillOval(100, 15, 70, 70);
           
            //Awan 2
            u.setColor(Color.white);
            u.fillOval(220, 50, 70, 70);
            u.fillOval(250, 50, 70, 75);
            u.fillOval(300, 50, 70, 70);
           
            //Awan 3
            u.setColor(Color.white);
            u.fillOval(520, 80, 70, 75);
            u.fillOval(550, 80, 70, 70);
            u.fillOval(600, 80, 70, 60);
           
            //Awan 4
            u.setColor(Color.white);
            u.fillOval(820, 30, 70, 75);
            u.fillOval(850, 30, 70, 70);
            u.fillOval(900, 50, 70, 60);
           
           
            //Rumah
            //salju
            u.setColor(Color.WHITE);
            u.fillOval(750, 375, 100, 100);
            u.fillOval(820, 360, 50, 50);
            u.fillOval(850, 375, 60, 60);
            u.fillOval(870, 380, 80, 80);
           
            //Cerobong Asap
            u.setColor(new Color(201, 187, 161));
            u.fillRect(900, 360, 25, 100);
     
            //Atap Rumah
            u.setColor(new Color(70, 51, 36));
            int x[] = new int[] {700,850,1000};
            int y[] = new int [] {420,370,420};
            u.fillPolygon(x, y, 3);
           
            //Rumah
            u.setColor(new Color(246, 220, 226));
            u.fillRect(750, 420, 200, 120);

            //Pintu Rumah
            u.setColor(new Color(199, 75, 5));
            u.fillRect(800, 465, 50, 75);

            u.setColor(new Color(130, 82, 33));
            u.fillRect(805, 470, 40, 15);
            u.fillRect(805, 488, 40, 15);
            u.fillRect(805, 506, 40, 15);
            u.fillRect(805, 525, 40, 13);
           
            //Jendela Rumah
            u.setColor(new Color(199, 75, 5));
            u.fillRect(880, 455, 40, 40);
            u.setColor(new Color(251, 252, 191));
            u.fillRect(885, 460, 30, 30);
           
            //Gagang Pintu
            u.setColor(new Color(201, 187, 161));
            u.fillOval(830, 500, 10, 10);
       
            //salju kiri
            u.setColor(Color.WHITE);
            u.fillOval(-23, 450, 100, 100);
            u.fillOval(-15, 500, 180, 180);
            u.fillOval(150, 490, 200, 200);
            u.fillOval(300, 520, 200, 200);
           
            //Rumput pada salju kiri
            u.setColor(new Color (9, 169, 9));
            u.fillOval(-23, 530, 50, 80);
            u.fillOval(22, 545, 50, 90);
            u.fillOval(65, 550, 100, 100);
            u.fillOval(150, 560, 90, 100);
            u.fillOval(220, 555, 60, 100);
            u.fillOval(260, 560, 100, 100);
            u.fillOval(330, 555, 100, 150);
            u.fillOval(380, 565, 100, 150);

            //Bunga Kiri
            u.setColor(new Color (223, 79, 245));
            u.fillOval(10, 550, 30, 10);
            u.fillOval(20, 540, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(20, 550, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(55, 560, 30, 10);
            u.fillOval(65, 550, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(65, 560, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(145, 565, 30, 10);
            u.fillOval(155, 555, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(155, 565, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(205, 565, 30, 10);
            u.fillOval(215, 555, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(215, 565, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(255, 565, 30, 10);
            u.fillOval(265, 555, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(265, 565, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(325, 565, 30, 10);
            u.fillOval(335, 555, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(335, 565, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(395, 560, 30, 10);
            u.fillOval(405, 550, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(405, 560, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(5, 500, 30, 10);
            u.fillOval(15, 490, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(15, 500, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(35, 480, 30, 10);
            u.fillOval(45, 470, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(45, 480, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(-10, 465, 30, 10);
            u.fillOval(0, 455, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(0, 465, 10, 10);

            u.setColor(new Color (223, 79, 245));
            u.fillOval(50, 510, 30, 10);
            u.fillOval(60, 500, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(60, 510, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(90, 530, 30, 10);
            u.fillOval(100, 520, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(100, 530, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(170, 540, 30, 10);
            u.fillOval(180, 530, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(180, 540, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(220, 520, 30, 10);
            u.fillOval(230, 510, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(230, 520, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(260, 510, 30, 10);
            u.fillOval(270, 500, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(270, 510, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(290, 540, 30, 10);
            u.fillOval(300, 530, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(300, 540, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(365, 540, 30, 10);
            u.fillOval(375, 530, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(375, 540, 10, 10);
           
            u.setColor(new Color (223, 79, 245));
            u.fillOval(410, 540, 30, 10);
            u.fillOval(420, 530, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(420, 540, 10, 10);
           
            //Tumpukan Salju kanan
            u.setColor(Color.WHITE);
            u.fillOval(950, 485, 130, 130);
            u.fillOval(900, 515, 90, 110);
            u.fillOval(850, 520, 65, 65);
            u.fillOval(500, 490, 130, 130);
            u.fillOval(600, 530, 120, 120);
            u.fillOval(700, 520, 110, 100);
           
            //Rumput kanan
            u.setColor(new Color (9, 169, 9));
            u.fillOval(950, 500, 100, 100);
            u.fillOval(900, 530, 80, 80);
            u.fillOval(850, 530, 65, 65);
            u.fillOval(500, 500, 130, 130);
            u.fillOval(600, 540, 120, 120);
            u.fillOval(700, 530, 110, 100);
           
            //Bunga Kanan
            u.setColor(Color.red);
            u.fillOval(570, 550, 30, 10);
            u.fillOval(580, 540, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(580, 550, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(550, 510, 30, 10);
            u.fillOval(560, 500, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(560, 510, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(630, 570, 30, 10);
            u.fillOval(640, 560, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(640, 570, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(670, 560, 30, 10);
            u.fillOval(680, 550, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(680, 560, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(720, 565, 30, 10);
            u.fillOval(730, 555, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(730, 565, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(855, 560, 30, 10);
            u.fillOval(865, 550, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(865, 560, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(775, 570, 30, 10);
            u.fillOval(785, 560, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(785, 570, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(775, 570, 30, 10);
            u.fillOval(785, 560, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(785, 570, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(890, 550, 30, 10);
            u.fillOval(900, 540, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(900, 550, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(920, 570, 30, 10);
            u.fillOval(930, 560, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(930, 570, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(1000, 565, 30, 10);
            u.fillOval(1010, 555, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(1010, 565, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(980, 540, 30, 10);
            u.fillOval(990, 530, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(990, 540, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(995, 515, 30, 10);
            u.fillOval(1005, 505, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(1005, 515, 10, 10);
           
            u.setColor(Color.red);
            u.fillOval(945, 550, 30, 10);
            u.fillOval(955, 540, 10, 30);
            u.setColor(Color.yellow);
            u.fillOval(955, 550, 10, 10);
           
            //Boneka Salju
            u.setColor (Color.white);
            u.fillOval (128, 385, 40, 40);  // kepala
            u.fillOval (114, 413, 70, 50);  // badan atas
            u.fillOval (100, 450, 100, 60); // badan bawah

            u.setColor (Color.black);
            u.fillOval (135, 400, 5, 5);  // mata kiri
            u.fillOval (153, 400, 5, 5);  // mata kanan

            u.drawArc (137, 407, 20, 10, 190, 160); // senyum
           
            u.setColor(Color.BLACK);
            u.drawLine (178, 437, 213, 427);  // tangan kiri
            u.drawLine (120, 437, 80, 427);  // tangan kanan

            u.drawLine (128, 387, 168, 387); // topi
            u.fillRect (134, 362, 30, 25);

            //Jalan
            u.setColor(Color.gray);
            int a[] = new int[] {450, 500, 550};
            int b[] = new int[] {580, 245, 580};
            u.fillPolygon(a, b, 3);

            //Garis Jalan 1
            u.setColor(Color.WHITE);
            u.fillRect(498, 290, 5, 28);
           
            //Garis Jalan 2
            u.setColor(Color.WHITE);
            u.fillRect(498, 340, 5, 40);
           
            //Garis Jalan 3
            u.setColor(Color.WHITE);
            u.fillRect(498, 410, 5, 40);
           
            //Garis Jalan 4
            u.setColor(Color.WHITE);
            u.fillRect(498, 480, 5, 40);
           
            //Garis Jalan 5
            u.setColor(Color.WHITE);
            u.fillRect(498, 550, 5, 40);
           
            //Pohon Cemara 1
            u.setColor(new Color (193, 164, 6));
            u.fillRect(100, 215, 10, 100);
           
            u.setColor(new Color (9, 169, 9));
            int c[] = new int[] {50,100,150};
            int d[] = new int [] {200,150,200};
            u.fillPolygon(c, d, 3);

            u.setColor(new Color (9, 169, 9));
            int e[] = new int[] {40,100,160};
            int f[] = new int [] {220,170,220};
            u.fillPolygon(e, f, 3);
           
            u.setColor(new Color (9, 169, 9));
            int g[] = new int[] {30,100,170};
            int h[] = new int [] {240,190,240};
            u.fillPolygon(g, h, 3);
           
            u.setColor(new Color (9, 169, 9));
            int j[] = new int[] {20,100,180};
            int k[] = new int [] {260,210,260};
            u.fillPolygon(j, k, 3);

            u.setColor(Color.WHITE);
            int s1[] = new int[] {80,100,120};
            int s2[] = new int [] {170,150,170};
            u.fillPolygon(s1, s2, 3);
           
            //Pohon Cemara 2
            u.setColor(new Color (193, 164, 6));
            u.fillRect(265, 215, 10, 100);
           
            u.setColor(new Color (9, 169, 9));
            int c1[] = new int[] {220,270,320};
            int d1[] = new int [] {200,150,200};
            u.fillPolygon(c1, d1, 3);
                       
            u.setColor(new Color (9, 169, 9));
            int e1[] = new int[] {210,270,330};
            int f1[] = new int [] {220,170,220};
            u.fillPolygon(e1, f1, 3);
           
            u.setColor(new Color (9, 169, 9));
            int g1[] = new int[] {200,270,340};
            int h1[] = new int [] {240,190,240};
            u.fillPolygon(g1, h1, 3);
           
            u.setColor(new Color (9, 169, 9));
            int j1[] = new int[] {190,270,350};
            int k1[] = new int [] {260,210,260};
            u.fillPolygon(j1, k1, 3);
           
            u.setColor(Color.WHITE);
            int s3[] = new int[] {250,270,290};
            int s4[] = new int [] {170,150,170};
            u.fillPolygon(s3, s4, 3);
           
            //Pohon Cemara 3
            u.setColor(new Color (193, 164, 6));
            u.fillRect(420, 215, 10, 100);
           
            u.setColor(new Color (9, 169, 9));
            int c2[] = new int[] {390,425,455};
            int d2[] = new int [] {200,150,200};
            u.fillPolygon(c2, d2, 3);
                       
            u.setColor(new Color (9, 169, 9));
            int e2[] = new int[] {380,425,465};
            int f2[] = new int [] {220,170,220};
            u.fillPolygon(e2, f2, 3);
           
            u.setColor(new Color (9, 169, 9));
            int g2[] = new int[] {370,425,475};
            int h2[] = new int [] {240,190,240};
            u.fillPolygon(g2, h2, 3);
           
            u.setColor(new Color (9, 169, 9));
            int j2[] = new int[] {360,425,485};
            int k2[] = new int [] {260,210,260};
            u.fillPolygon(j2, k2, 3);
           
            u.setColor(Color.WHITE);
            int s5[] = new int[] {410,425,437};
            int s6[] = new int [] {170,150,170};
            u.fillPolygon(s5, s6, 3);
           
           
            //Pohon Cemara 4
            u.setColor(new Color (193, 164, 6));
            u.fillRect(800, 215, 10, 100);
           
            u.setColor(new Color (9, 169, 9));
            int c3[] = new int[] {750,800,850};
            int d3[] = new int [] {200,150,200};
            u.fillPolygon(c3, d3, 3);
                       
            u.setColor(new Color (9, 169, 9));
            int e3[] = new int[] {740,800,860};
            int f3[] = new int [] {220,170,220};
            u.fillPolygon(e3, f3, 3);
           
            u.setColor(new Color (9, 169, 9));
            int g3[] = new int[] {730,800,870};
            int h3[] = new int [] {240,190,240};
            u.fillPolygon(g3, h3, 3);
           
            u.setColor(new Color (9, 169, 9));
            int j3[] = new int[] {720,800,890};
            int k3[] = new int [] {260,210,260};
            u.fillPolygon(j3, k3, 3);
           
            u.setColor(Color.WHITE);
            int s7[] = new int[] {780,800,820};
            int s8[] = new int [] {170,150,170};
            u.fillPolygon(s7, s8, 3);
           
            //Nama
            u.setColor(new Color(130, 82, 33));
            u.fillRect(570, 330, 150, 30);
            u.fillOval(560, 330, 30, 30);
            u.fillOval(700, 330, 30, 30);
            u.setColor(Color.YELLOW); //menginstansiasi warna
            u.setFont(new Font("MV Boli", Font.BOLD, 20)); //menentukan font yang akan digunakan
            u.drawString("Kelompok 4",585,350); //menampilkan nama dengan koordinat , x, y
          
           
            //Buat Salju
            u.setColor(Color.white);
            Random acak = new Random();
            for (int i=0; i<1000 br="" i="">            {
            double x1 = acak.nextInt(1110);
            double y1 = acak.nextInt(570);
              
            Line2D.Double sisi_salju1 = new Line2D.Double (x1-1, y1-1, x1+1, y1+1);
            Line2D.Double sisi_salju2 = new Line2D.Double (x1-1, y1+1, x1+1, y1-1);
            u2.draw(sisi_salju1);
            u2.draw(sisi_salju2);
            }
   
        }
    }
}


Semoga berhasil ya.
Disqus Comments