Chng 1: Gii thiu v đ ha máytính 1. Khái nim đ ha máytính (Computer Graphic) ha máytính là mt lnh vc ca Công ngh thông tin chuyên nghiên cu, xây dng các mô hình lí thuyt và phn mm dùng cho vic kin to, lu tr, x lý các mô hình (models) và hình nh (images) 2. ng dng ca đ ha máytính ng dng ca đ ha ht sc phong phú, rt nhiu lnh vc trong cuc sng s dng đn k thut đ ha. Ta có th phân loi các ng dng đ ha nh sau: Sau đây là mt s ng dng tiêu biu ca đ ha trong thc t 2.1 th và bn đ (Graphs and Charts) ây là ng dng ch yu trong lnh vc đ ha minh ha, ng dng này cho phép hin th các biu đ d liu (data plots) cng nh trong lnh vc biu din và x lý đ ha. Mt trong s nhng ng dng hin nay là h thng thông tin đa lí GIS (Geographical Information System). 2.2 CAD/CAM (Computer-Aided Design/ Computer-Aided Manufacturing) Các h thng thit k và ch to vi s tr giúp ca máytính đc ng dng trong các lnh vc nh phân tích thit k kt cu xây dng, công nghip đin t, công nghip thi trang, các ngành công nghip ch to ôtô, máy bay, xe máy 2.3 Gii trí (Entertainment) Vi s h tr đ ha hin nay chúng ta có th sn xut nhiu sn phm phc v cho lnh vc gii trí đc bit là phim hot hình (animated films) và các trò chi (games) trên máy tính. Nhiu phn mm và ngôn ng lp trình h tr ra đi cho phép ta to ra các hình nh đng (motion pictures) gn vi vi cuc sng thc. Trong giáo trình này chúng ta s làm quen vi công c OpenGL. 2.4 X lí nh( Image Processing) Các k thut x lí và thay đi mt bc nh có sn và đc áp dng trong nhiu lnh vc ca đi sng. Ví d ta có th s dng phn mm đ khôi phc mt bc nh, phân tích các bc nh đc chp t v tinh . ha máytính Kin to đ ha CAD/CAM System ha minh ha Gii trí X lí đ ha X lí nh K thut nhn dng K thut phân tích và to nh 2.5 K thut nhn dng (Pattern Recognition) ây là mt lnh vc ca k thut x lí nh, các chuyên gia s xây dng mt th vin nh gc bng cách áp dng các thut toán phân tích và chn lc t nhng nh mu có sn. Da trên th vin đó các chuyên gia có th phân tích và t hp nh 2.6. Giao din đ ha ngi dùng (Graphical User Interface-GUI) Rt nhiu phn mm ng dng ngày nay cung cp GUI cho ngi dùng. Thành phn chính ca mt giao din đ ha đó là chng trình qun lí ca s cho phép ngi s dng hin th nhiu ca s ngi ta gi đó là các ca s hin th (display windows). Nh có GUI mà ngi s dng có th d dàng thit k giao din cho các chng trình ng dng. 3. Gii thiu v OpenGL OpenGL là phn mm giao din vi các phn cng đ ha đc phát trin bi Silicon Graphíc Inc. (SGI). OpenGL còn đc hiu nh là mt h giao tip lp trình ng dng (application program interface- API) bao gm khong 250 câu lnh đc h tr bi nhiu ngôn ng nh C, C++, Java .cho phép ngi lp trình s dng to ra các đi tng đ ha. OpenGL đc thit k không ph thuc vào nn tng phn cng cng nh h điu hành máytính (independence of hardware platform and operating system) . Vi OpenGL ta s to ra các mô hình t các đi tng hình hc c bn đó là đim (point), đng (line) và đa giác (polygon). Cú pháp lnh ca OpenGL: Các câu lnh ca OpenGL đu s dng tin t gl và các t tip theo đc bt đu bng kí t hoa, ví d glClearColor(). Các hng đc đnh ngha bng tin t GL_ tiptheo là các t vit hoa đc ngn cách bng kí t gch di, ví d GL_COLOR_BUFFER_BIT Các th vin liên quan ca OpenGL: Mc dù OpenGL là mt công c mnh nhng các đi tng v đu là các đi tng hình hc c bn. đn gin hóa mt s công vic, chúng ta đc trang b thêm mt s th vin cho phép s dng các th tc v mc cao hn: - OpenGL Utility Library (GLU): Bao gm mt s th tc thit lp ma trn xác đnh hng nhìn (viewing orientation), ma trn các phép chiu (projection), và biu din các mt trong không gian 3 chiu (redering surfaces) - OpenGL Utility Toolkit (GLUT): Là mt b công c đc vit bi Mark Kilgard bao gm các th tc giúp cho đn gin hóa vic xây dng các đi tng hình hc. Các th tc ca GLUT đc bt đu bng tin t glut. . Chng 1: Gii thiu v đ ha máy tính 1. Khái nim đ ha máy tính (Computer Graphic) ha máy tính là mt lnh vc ca Công ngh thông tin. tr, x lý các mô hình (models) và hình nh (images) 2. ng dng ca đ ha máy tính ng dng ca đ ha ht sc phong phú, rt nhiu lnh vc trong cuc