Bài giảng Đồ hoạ trên VC6.0(MFC) do Trần Anh Tuấn biên soạn cung cấp cho các bạn những nội dung về quy trình làm việc với đồ hoạ; các đối tượng đồ hoạ; bút vẽ chổi vẽ; biến đổi toạ độ trong đồ họa. Mời các bạn tham khảo bài giảng để bổ sung thêm kiến thức về lĩnh vực này.
Đồ Hoạ trên VC6.0(MFC) Giảng viên : Trần Anh Tuấn Đại học Khoa học Tự nhiên Nội dung • Quy trình làm việc với đồ hoạ • Các đối tượng đồ hoạ • Bút vẽ chổi vẽ • Biến đổi toạ độ Quy trình làm việc với đồ hoạ • GDI(Graphic Device Interface) hỗ trợ cho giao diện thiết bị đồ hoạ như màn hình , máy in với các cơng cụ như Pen , Brush , Font , Bitmap , Pallete , Region • DC (Device Context: Ngữ cảnh thiết bị) Quy trình làm việc với đồ hoạ • Có hai cách tiếp cận để hiển thị đối tượng đồ hoạ: Khuyết điểm cách thứ nhất: vẽ lại tồn bộ đối tượng đã vẽ Khuyết điểm của cách thứ hai là: cửa sổ khơng tự động vẽ lại Các đối tượng Đồ hoạ CClientDC dc(this); dc.MoveTo(pointA); dc.LineTo(pointB); CClientDC dc(this) dc.RoundRect(l,t,r,b,w,h); CClientDC dc(this) CClientDC dc(this) dc.Rectangle(l,t,r,b); dc.Ellipse(l,t,r,b); CClientDC dc(this) dc.PolyBezier (aPoint,4); Bút vẽ , chổi vẽ Bút vẽ , chổi vẽ • Bút vẽ (CPen) • Cách dùng : – – – – – – CPaintDC dc(this);// hay CClientDC dc(this) CPen *hpen , *hpenPrev; hpen = new CPen(kiểu,độ rộng, màu); hpenPrev = dc.SelectObject(hpen); Vẽ đối tượng delete dc.SelectObject(hpenPrev); Bút vẽ , chổi vẽ • Bút vẽ (CPen) • Kiểu: – – – – PS_SOLID PS_DASH PS_DOT PS_DASHDOT bút vẽ đặc bút vẽ gạch bút vẽ chấm bút vẽ chấm gạch • Ngồi ra còn có thể tạo bút vẽ bằng : – GetStockObject , CreatePenIndirect Bút vẽ , chổi vẽ • Chổi vẽ (CBrush) • Cách dùng: – – – – – – CPaintDC dc(this);// hay CClientDC dc(this) CBrush *hbrush , *hbrushPrev;; hbrush = new CBrush([kiểu,] màu); hbrushPrev = dc.SelectObject(hbrush); Vẽ đối tượng delete dc.SelectObject(hbrushPrev); Bút vẽ , chổi vẽ • Chổi vẽ (CBrush) • Kiểu: – – – – – – HS_BDIAGONAL; HS_CROSS; HS_DIAGCROSS; HS_FDIAGONAL; HS_HORIZONTAL; HS_VERTICAL; • Ngồi ra còn có thể tạo chổi vẽ bằng : – CreateSolidBrush , CreateHatchBrush , CreatepatternBrush , CreateBrushIndirect •H ết ... Quy trình làm việc với đồ hoạ • Các đối tượng đồ hoạ • Bút vẽ chổi vẽ • Biến đổi toạ độ Quy trình làm việc với đồ hoạ • GDI(Graphic Device Interface) hỗ trợ cho giao diện thiết bị đồ hoạ như màn hình , máy in với ... • DC (Device Context: Ngữ cảnh thiết bị) Quy trình làm việc với đồ hoạ • Có hai cách tiếp cận để hiển thị đối tượng đồ hoạ: Khuyết điểm cách thứ nhất: vẽ lại tồn bộ đối tượng đã vẽ Khuyết điểm của cách thứ hai là: cửa sổ ... bộ đối tượng đã vẽ Khuyết điểm của cách thứ hai là: cửa sổ khơng tự động vẽ lại Các đối tượng Đồ hoạ CClientDC dc(this); dc.MoveTo(pointA); dc.LineTo(pointB); CClientDC dc(this) dc.RoundRect(l,t,r,b,w,h);