Program Studi S-1 Teknik Informatika FMIPA Universitas Padjadjaran COMPUTER GRAPHICS D10K-5C01 GK02a: Pemrograman Grafis Menggunakan VS Dr. Setiawan Hadi, M.Sc.CS. Program Studi S-1 Teknik Informatika FMIPA Universitas Padjadjaran
Pengantar Framework internal Visual Studio: GDI+ Komponen dalam windows diibaratkan sebuah kanvas Aplikasi grafis mengambar objek grafis dalam kanvas tersebut
Sistem Koordinat Standard VS Upside-down Cartesian Ywindow = height - Ycartesian (width,0) (0,0) (width, height) (0,height)
Penggambaran menggunakan C# 1. Pustaka grafis GDI+: using System.Drawing; 2. Ambil komponen kanvas “graphics context” : Graphics g = myPanel.CreateGraphics( ); 3. Gambarkan menggunakan perintak grafis: g.DrawLine(pen, x1,y1, x2,y2);
Objek Grafis Draw Fill Line (pt1,pt2) Lines (pt list) Arc Curves, Bezier Ellipse (rect) Rectangle (rect) Polygon (pt list) Image (img, x,y) String (string, x,y) label
Atribut Grafis Pen (for lines) Brush (for filling) Color, width, dash, end caps, joins, Brush (for filling) Color, Solid, texture, pattern, gradient Font, String Format (for strings) Bitmap/Metafile (for images) Bmp, gif, jpeg, png, tiff, wmf, …
Warna Kombinasi dari Red, Green, Blue Nilai Alpha = opacity Interval nilai [0 … 255] C#: Color.FromArgb(255, 150, 0) Hokie Orange
Perintah Grafis GDI+ Tutorial for Beginners
Menggambar Titik Button TextBox Panel
Definisikan Elemen Grafis Graphics g; int x, y; Brush aBrush = (Brush)Brushes.White;
Aktifkan Mode Grafis Pada Kanvas private void Form1_Load(object sender, EventArgs e) { g = canvas.CreateGraphics(); }
Gambarkan Piksel pada Kanvas private void DrawPixel_Click(object sender, EventArgs e) { x=Convert.ToInt16(PointX.Text); y =Convert.ToInt16(PointY.Text); g.FillRectangle(aBrush, x, y, 1, 1); }
Bersihkan Kanvas private void ClearScreen_Click(object sender, EventArgs e) { canvas.Refresh(); }
Program Lengkap
Tugas 01 Implementasikan Algoritma Penggambaran Objek Primitif Menggunakan Bahasa Pemrograman C# Objek Garis: Dasar DDA Bresenham Objek Lingkaran Polar Waktu 2 Minggu, Perorangan Gunakan Imajinasi dan Krativitas, Usakahan USER FRIENDLY namun REPRESENTATIF