24
Môn: Đồ họa máy tính BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC THÀNH ĐÔ KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN MÔN : Đồ Họa Máy Tính Đề Tài: Các kỹ thuật biến đổi hình-chương trình mô phỏng Giáo Viên Hướng Dẫn : Trần Xuân Thanh Lớp: CĐTin-K8 Thành viên nhóm 7 : Mai Văn Long

Do hoa may tinh

Embed Size (px)

Citation preview

Page 1: Do hoa may tinh

Môn: Đồ họa máy tính

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC THÀNH ĐÔ

KHOA CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN

MÔN : Đồ Họa Máy Tính

Đề Tài: Các kỹ thuật biến đổi hình-chương trình mô phỏng

Giáo Viên Hướng Dẫn : Trần Xuân Thanh

Lớp: CĐTin-K8

Thành viên nhóm 7 :

Mai Văn Long

Trịnh Thị Thu Phương(NT)

Khổng Thị Thảo My

Nguyễn Đắc Mạnh

Page 2: Do hoa may tinh

Môn: Đồ họa máy tính

LỜI NÓI ĐẦU

Hiện nay đồ họa máy tính là một trong những chương trình thông dụng nhất, nó đóng góp phần quan trọng là cho giao tiếp con người và máy tính trở nên thân thiện. Thật vậy, giao diện kiểu văn bản đã được thay thế hoàn toàn bằng giao diện đồ họa, cùng với công nghệ đa phương tiện đã đưa ngành Công Nghệ Thông Tin sang phiên bản mới.

Cuốn tài liệu này nhóm em “ trình bày tóm tắt các kỹ thuật biến đổi hình” gồm có phép biến đổi hình 2D, phép biến đổi hình 3D, biến đổi hệ trục tọa độ, sử dụng phép biến đổi affine trong chương trình… Cuối bài nhóm em có cho chương trình mô phỏng để mô tả các kỹ thuật biến đổi hình.

Trong quá trình làm còn có nhiều thiếu sót, rất mong thầy và các bạn đóng góp chân thành cho nhóm em!

Xin chân thành cảm ơn!!

Page 3: Do hoa may tinh

Môn: Đồ họa máy tính

PHẦN I: GIỚI THIỆU VỀ ĐỒ HỌA MÁY TÍNH Sự phát triển của khoa học, kĩ thuật, nghệ thuật, kinh doanh, và công nghệ luôn luôn phụ thuộc vào khả năng truyền đạt thôngtin của chúng ta, hoặc thông qua các bit dữ liệu lƣu trữ trong microchip hoặc thông qua giao tiếp bằng tiếng nói. Câu châmngôn từ xa xƣa “một hình ảnh có giá trị hơn cả vạn lời” hay “trăm nghe không bằng một thấy” cho thấy ý nghĩa rất lớn củahình ảnh trong việc chuyển tải thông tin. Hình ảnh bao giờ cũng được cảm nhận nhanh và dễ dàng hơn, đặc biệt là trong trƣờnghợp bất đồng về ngôn ngữ. Do đó không có gì ngạc nhiên khi mà ngay từ khi xuất hiện máy tính, các nhà nghiên cứu đã cốgắng sử dụng nó để phát sinh các ảnh trên màn hình. Trong suốt gần 50 năm phát triển của máy tính, khả năng phát siinh hìnhảnh bằng máy tính của chúng ta đã đạt tới mức mà bây giờ hầu như tất cả các máy tính đều có khả năng đồ họa. Đồ họa máy tính là một trong những lĩnh vực lí thú nhất và phát triển nhanh nhất của tin học. Ngay từ khi xuất hiện, đồhọa máy tính đã có sức lôi cuốn mãnh liệt, cuốn hút rất nhiều người ở nhiều lĩnh vực khác nhau như khoa học, nghệ thuật, kinh doanh, quản lí, ... Tính hấp dẫn và đa dạng của đồ họa máy tính có thể đƣợc minh họa rất trực quan thông qua việc khảo sát các ứng dụng của nó.

I. Một số ứng dụng của đồ họa máy tínhNgày nay đồ họa máy tính được sử dụng trong rất nhiều lĩnh vực khác nhau công nghiệp, thương mại, quản lý,giáo dục, giải trí

I.1. Hỗ trợ thiết kếMột trong những ứng dụng lớn nhất của đồ họa máy tính là hỗ trợ thiết kế (CAD - - computer-aided design). Ngày nay CAD đã được sử dụng hầu hết trong việc thiết kế các cao ốc, ô tô, máy bay, tàu thủy, tàu vũ trụ, máy tính, trang trí mẫu vải, vàrất nhiều sản phẩm khác.

 Sử dụng các chương trình này, đầu tiên các đối tượng được hiển thị dƣới dạng các phác thảo của phần khung (wireframeoutline), mà từ đó có thể thấy đƣợc toàn bộ hình dạng và các thành phần bên trong của các đối tượng. Sử dụng kĩ thuật này,ngƣời thiết kế sẽ dễ dàng nhận thấy ngay các thay đổi của đối tượng khi tiến hành hiệu chỉnh các chi tiết hay thay đổi góc nhìn,….Một khi đã thiết kế xong phần khung của đối tượng, các mô hình chiếusáng, tô màu và tạo bóng bề mặt sẽ được kết hợp để tạo ra kết quả cuối cùngrất gần với thế giới thực .

I.2. Lĩnh vực giải trí-nghệ thuật

Page 4: Do hoa may tinh

Môn: Đồ họa máy tính

- Trong lĩnh vực nghệ thuật, các chương trình máy tính như Paint Shop Pro,Adobe Photoshop, 3D Studio, … hỗ trợ rất đắc lực cho các họa sĩ, các nhà tạo mẫutrong việc thiết kế các hình ảnh sống động, và rất thực. Với các chương trình này,người họa sĩ được máy tính tạo cho cảm giác y như đang làm việc ngoài đời thực bằngcách cung cấp các công cụ như khung vẽ, giá vẽ, bảng pha màu, các hiệu ứng ba chiều,… làm cho họ cảm thấy rất thoải mái và tiện lợi. 

-  Ngoài ra đồ họa máy tính còn giúp tạo ra các chƣơng trình trò chơi, giải trí; hỗtrợ cho các kĩ xảo điện ảnh, cho các nhà làm phim. Có nhiều bộ phim rất nổi tiếng nhờ vào kĩ xảo điện ảnh như : Công viên Khủng long kỉ Jura (Jurassic Park), Titanic, Thế giới nước (Water World), …

I.3. Giáo dục và đạo tạo- Hiện nay các chƣơng trình mô phỏng cấu trúc của các vật thể, tiến trình của

các phản ứng hóa học, hoạt động của các góitin trên mạng máy tính, … được dùng rất nhiều trong việc hỗ trợ giảng dạy.

- Trong đào tạo, các ứng dụng mô phỏng được dùng để kiểm tra trình độ người lái, huấn luyện phi công, điều khiển giaothông, …

I.4. Giao tiếp giữa máy tính và người sử dụng- Mọi ứng dụng đều phải có giao diện giao tiếp với người dùng. Giao diện đồ họa thực sự

là một cuộc cách mạng mang lại sự thuận tiện và thoải mái cho người dùng ứng dụng. Các ứng dụng dựa trên hệ điều hành MS Windows là một  minh họa rất trực quan của giao diện đồ họa. Các chức năng của các ứng dụng này được thiết kế cho ngƣời dùng làm việc thông qua các biểu tượngmô tả chức năng đó. Ví dụ, chức năng lƣu tập tin được hiểu thông qua biểu tượng đĩa mềm, chức năng in ấn được hiểu thông qua biểu tượng máy in, … Để chọn các chức năng, người dùng sử dụng chuột trỏ đến và nhấn vào các biểu tượng tương ứng. Điểm thuận lợi chính khi dùng biểu tượng là kích thước không gian mà nó chiếm ít hơn nhiều so với dùng văn bản để mô tả cho cùng một chức năng, ngoài ra việc nắm bắt các chức năng qua các biểu tượng sẽ dễ dàng hơn rất nhiều khi người dùng gặp trở ngại về  mặt ngôn ngữ. 

- Các ứng dụng có giao diện đồ họa còn cho phép người dùng khả năng làm việc dễ dàng với nhiều cửa sổ với nhiều  dạng tài liệu khác nhau cùng một lúc.

II. Khái niệm về đồ họa máy tính- Đồ họa máy tính là tất cả những gì liên quan đến việc sử dụng máy tínhđể

phát sinh ra hình ảnh. Các vấn đề liên quan tới công việc này bao gồm :tạo, lưu trữ, thao tác trên các mô hình (các mô tả hình học của đối tượng) vàcác ảnh.

- Theo định nghĩa này thì đồ họa máy tính bao gồm việc thiết kế phầncứng như thiết bị hiển thị, các thuật toán cần thiết để phát sinh các đường trêncác thiết bị này, các phần mềm được sử dụng cho cả người lập trình hệ thốngvà

Page 5: Do hoa may tinh

Môn: Đồ họa máy tính

người lập trình ứng dụng đồ họa, và các chương trình ứng dụng tạo ảnh bằng máy tính,thiết kế, cài đặt và xây dựng, thông tin mà hình ảnh mang lại là hầu nhƣ không thể thiếu được. Kĩ thuật trực quan (scientific visualization) đã trở nên là một lĩnh vực rất quan trọng từ năm 1980, khi các nhà nghiên cứu khoa học và các kĩ sư nhận ra rằng họ không thể xử lí một lượng dữ liệu khổng lồ phát sinh từ các siêu máy tính mà dữ liệu không được tóm lược và làm nổi bật các xu hướng và hiện tượng qua nhiều loại biểu diễn đồ họa khác nhau.

- Đồ họa máy tính tương tác là một trong những phương tiện mang lại thêm nhiều sự thuận lợi cho người dùng trong việc phát sinh hình ảnh kể từ khi có phát minh của máy ảnh và truyền hình. Với máy tính, chúng ta có thể tạo các hình ảnh khôngchỉ của các đối tượng cụ thể, thực tế, mà còn của các đối tượng trừu tượng, nhân tạo; các biểu diễn của dữ liệu mà không cótính kế thừa về mặt hình học, như là kết quả điều tra, khảo sát. Hơn nữa, với đồ họa máy tính chúng ta không bị giới hạn trong các ảnh tĩnh. Các ảnh động thông thường mang lại nhiều hiệu quả hơn so với ảnh tĩnh, đặc biệt là với các hiện tượng biến đổi theo thời gian, cả thực tế (như sự đổi hướng của cánh máy bay siêu âm, hay sự phát triển của khuôn mặt người từ lúc trẻ thơ tới lúc già) và trừu tượng (như là xu hướng phát triển của việc sử dụng năng lượng, gia tăng dân số, …). 

- Có nhiều cách tiếp cận trong việc học môn đồ họa, trải rộng từ việc nghiên cứu phần cứng tới việc học để sử dụng đồhọa máy tính chỉ trong một lĩnh vực chuyên biệt nào đó như là thiết kế mạch tích hợp cao (VLSI-very large scale integrated circuit). Ở đây chúng ta tiếp cận từ góc độ của người lập trình ứng dụng, đó là người sử dụng tất cả các hỗ trợ của phần cứng các công cụ phần mềm để xây dựng nên các ứng dụng.

- Tuy nhiên để có thể thiết kế và cài đặt các chương trình ứng dụng đồ họa được tốt, ngoài việc tìm hiểu các khả năng củacông cụ lập trình, chúng ta cũng cần phải nắm vững các khái niệm về phần cứng; các vấn đề, các nguyên lí liên quan đến càiđặt phần mềm, các thuật toán, các ứng dụng, …

Page 6: Do hoa may tinh

Môn: Đồ họa máy tính

PHẦN II: CÁC PHÉP BIẾN ĐỔI ĐỒ HỌAA.Các phép biến đổi hình học hai chiều

I. Các phép biến đổi Affine(Affine Transformations)- Phép biến đổi Affine là phép biến đổi tuyến tính tọa độ điểm đặc trưng của

đối tượng thành tập tương ứng các điểm mới để tạo ra các hiệu ứng cho toàn đối tượng.Ví dụ: Phép biến đổi tọa độ với chỉ 2 điểm đầu cuối của đoạn thẳng tạo thành 2 điểm mới mà khi nối chúng với nhau tạo thành đoạn thẳng mới. Các điểm nằm trên đoạn thẳng sẽ có kết quả là điểm nằm trên đoạn thẳng mới cùng với cùng phép biến đổi thông qua nội suy.

II. Các phép biến đổi đối tượng1. Phép biến đổi vị trí

- Giả sử ta có điểm P=[x y] trong mặt phẳng với [x y] là vecto vị trí của P, kí hiệu là [X].

T=[a bc d ]

o Gọi ma trận T là ma trận biến đổi sẽ có dạng:

yP P’

X

o Ta có điểm P sau phép biến đổi thành P’ có giá trị [x’ y’].

o [X]*[T]=[x y] *[a bc d ] = [(ax+cy)(bx+dy)]=[x’ y’]

Hay x’=ax+cy y’=bx+dyXét ma trận biến đổi T:

1.1. Phép bất biến- a=d=1 và b=c=0 và ma trận cho phép bất biến:

T=[1 00 1]

Page 7: Do hoa may tinh

Môn: Đồ họa máy tính

[X]*[T]=[x y]*[1 00 1]=[x y]=[x’ y’]

1.2. Phép biến đổi tỷ lệ(scaling)- Nếu d=1 và b=c=0 thì ma trận biến đổi là

T=[a 00 1]

x’=axy’=y

P’ dịch chuyển theo trục x với tỷ lệ a xác định.

[X]*[T]=[x y]*[a 00 1]=[(ax) y]=[x’ y’]

- Nếu b=c=0 thì ma trận biến đổi là:

T= [a 00 d ]

[X]*[T]=[x y]*[a 00 d ]= [ax dy]=[x’ y’]

1.3. Các biến dạng- Khi a=d=1 thì tọa độ P’ phụ thuộc vào thay đổi b và c

o Xét c= 0

[X]*[T]=[x y]*[1 b0 1]= [x bx+y]=[x’ y’]

Có P’ không thay đổi giá trị tọa độ x, còn y’ thay đổi phụ thuộc vào cả b và x

- Xét b=0

[X]*[T]=[x y]*[1 bc 1 ]= [x +cy y]=[x’ y’]

1.4. Phép quay

Page 8: Do hoa may tinh

Môn: Đồ họa máy tính

[T]=[ cosα sinα−sinα cosα ]

III. Phép biến đổi tổng hợp

[X*]= [X]*[T3]=[x y]*[0 −11 0 ]= [y -x]

B. TỌA ĐỘ ĐỒNG NHẤT VÀ CÁC PHÉP BIẾN ĐỔII. Tọa độ đồng nhất

- Phép biến đổi tổng hợp:P’’=P’*[T’]+[T’’]=(P+[T])[T’]+[T’’]

- Tọa độ đồng nhất của vector vị trí [X]=[x y 1]. Khi đó mặt trận biến đổi sẽ là 3x3:

[T]=[ ac

dx

bd

dy

001]

P’=P.[T]=[x y 1]*[ ac

dx

bd

dy

001]

x’=ax+cy+dxy’=bx+dy+dy[X’]=[x’ y’ 1]Trong đó dx,dy là khoảng tịnh tiến theo trục x và y.II. Phép biến đổi với tọa độ đồng nhất

- Ma trận biến đổi đồng nhất

[T]=[ acm

bdn

001]

Page 9: Do hoa may tinh

Môn: Đồ họa máy tính

1. Phép tịnh tiễn- Có a=d=1 và b=c=0

[T]=[ 10m

01n

001]

[x’ y’ 1]=[x y 1][ 10m

01n

001] =[x+m y+n 1]

2. Phép tỷ lệ- Tương tự ma trận tỷ lệ:

[Ts]= [Sx00

0Sy0

001] [x’ y’ 1]=[x y 1][Sx

00

0Sy0

001] =[x.Sx y.Sy 1]

3. Phép quay

[x’ y’ 1]=[x y 1][ cosα−sinα

0

sinαcosα

0

001]

=[(xcos α− ysinα) (xsinα + ycosα ) 1]

C. CÁC PHÉP BIẾN ĐỔI HÌNH HỌC BA CHIỀUI. Phép biến đổi tỷ lệ

- Phép biến đổi tỉ lệ làm thay đổi kích thước đối tượng. Để co hay giãn tọa độ của một điểm P(x,y) theo trục hoành và trục tung lần lượt là Sx và Sy (gọi là các hệ số tỉ lệ), ta nhân Sx và Sy lần lượt cho các tọa độ của P.

- Khi các giá trị Sx , Sy nhỏ hơn 1, phép biển đổi sẽ thu nhỏ đối tượng. Ngược lại, khi các giá trị này lớn hơn 1, phép biến đổi sẽ phóng lớn đối tượng.

Page 10: Do hoa may tinh

Môn: Đồ họa máy tính

- Khi Sx = Sy , người ta gọi đó là phép đồng dạng (uniform scaling). Đây là phép biến đổi bảo toàn tính cân xứng của đối tượng. Ta gọi là phép phóng đại nếu |S|>1 và là phép thu nhỏ nếu |S|<1.

- Nếu hai hệ số tỉ lệ khác nhau thì ta gọi là phép không đồng dạng. Trong trường hợp hoặc Sx hoặc Sy có giá trị 1, ta gọi đó là phép căng (strain).

II. Phép quay- Phép quay làm thay đổi hướng của đối tượng. Một phép quay đòi hỏi phải có

tâm quay, góc quay. Góc quay dương thường được qui ước là chiếu ngược chiều kim đồng hồ.1. Phép quay quanh gốc tọa độ

- Ta có công thức biến đổi của phép quay điểm P(x,y) quanh gốc tọa độ góc θ (xem hình 1):

Hay Q = P*M

với M= cosθ sinθ -sinθ cosθ

- Phép quay quanh gốc tọa độ.

Page 11: Do hoa may tinh

Môn: Đồ họa máy tính

2. Phép quay quanh 1 điểm bất kỳ

- Xét điểm P(P.x,P.y) quay quanh điểm V(V.x, V.y) một góc θ đến điểm Q(Q.x,Q.y). Ta có thể xem phép quay quanh tâm V được kết hợp từ phép các biến đổi cơ bản sau:

- Phép tịnh tiến (-V.x, -V.y) để dịch chuyển tâm quay về gốc tọa độ

- Quay quanh gốc tọa độ O một góc θ.

- Phép tịnh tiến (+V.x, +V.y) để đưa tâm quay về vị trí ban đầu.

Ta cần xác định tọa độ của điểm Q (xem hình 2 )

- Từ phép tịnh tiến (-V.x,-V.y) biến đổi điểm P thành P' ta được:

P' = P + V

hay

Page 12: Do hoa may tinh

Môn: Đồ họa máy tính

- Phép quay quanh gốc tọa độ biến đổi điểm P' thành Q'

Q' = P'.M.

- Phép tịnh tiến (+V.x, +V.y) biến đổi điểm Q' thành Q ta được:

Q = Q' + V

hay

Vậy Q = P.M + tr. Với

III. Phép đối xứng

- Phép đối xứng trục có thể xem là phép quay quanh trục đối xứng mõt góc 180°

- Phương trình ban đầu

Page 13: Do hoa may tinh

Môn: Đồ họa máy tính

hay:

- (Q.x,Q.y)= (P.x,P.y). a b c d + (trx,try)- Trục đối xứng là trục hoành :

M= 1 0 0 1

- Ta có:

- Tương tự trục đối xứng là trục tung- Ta có:

M= 1 0 0 1

IV. Phép biến dạng

- Phép biến dạng biến đổi làm thay đổi, méo mó hình dạng của các đối tượng.- Biến dạng theo phương trục x sẽ làm thay đổi hoành độ còn tung độ giữ

nguyên.- biến đổi điểm P(P.x, P.y) thành điểm Q(Q.x, Q.y) theo phương trục x là

phép biến đổi được biểu diễn bởi phương trình sau:

M= 1 0 h 1

- Biến dạng theo phương trục y sẽ làm thay đổi tung độ còn hoành độ giữ nguyên.

M= 1 g 0 1

V. Phép quay ba chiều1. Quay quanh các trục tọa độ

- Phép quanh quanh các trục tọa độ ox, oy và oz với góc dương:

Page 14: Do hoa may tinh

Môn: Đồ họa máy tính

o Quay quanh trục oz

{x'=xcosα− ysinαy '=xsinα+ ycosα

z '=z

o Quay quanh trục ox:

{ x '=xy '= ycosα−zsinαz= ysinα+zcosα

o Qua quanh trục oy:

{ y '=xcosα+ zsinαy '= y

z'=−xsinα+zcosα

PHẦN III: CHƯƠNG TRÌNH MÔ PHỎNGBài 1:#include <stdio.h>#include <conio.h>#include <graphics.h>#include <math.h>#define RADS 0.017453293void Function1(){

line(10,getmaxy()/2,getmaxx()-10,getmaxy()/2);line(getmaxx()/2,10,getmaxx()/2,getmaxy()-10);

}void Function2(int x1, int y1, int x2, int y2,int x3, int y3){

line(getmaxx()/2+x1,getmaxy()/2-y1,getmaxx()/2+x2,getmaxy()/2-y2);line(getmaxx()/2+x2,getmaxy()/2-y2,getmaxx()/2+x3,getmaxy()/2-y3);line(getmaxx()/2+x3,getmaxy()/2-y3,getmaxx()/2+x1,getmaxy()/2-y1);

}void Function3(int x1, int y1, int x2, int y2, int x3,int y3,int xq,int yq,int goc){

float x11,y11,x22,y22,x33,y33;float anpha=RADS*goc;x11=int(x1*cos(anpha)-y1*sin(anpha) + (1-

cos(anpha))*xq+sin(anpha)*yq);

Page 15: Do hoa may tinh

Môn: Đồ họa máy tính

y11=int(x1*sin(anpha)+y1*cos(anpha)-sin(anpha)*xq+(1-cos(anpha))*xq);

x22=int(x2*cos(anpha)-y2*sin(anpha)+(1-cos(anpha))*xq+sin(anpha)*yq);

y22=int(x2*sin(anpha)+y2*cos(anpha)-sin(anpha)*xq+(1-cos(anpha))*xq);

x33=int(x3*cos(anpha)-y3*sin(anpha)+(1-cos(anpha))*xq+sin(anpha)*yq);

y33=int(x3*sin(anpha)+y3*cos(anpha)-sin(anpha)*xq+(1-cos(anpha))*xq);

Function2(x11,y11,x22,y22,x33,y33);

}void main(){

clrscr();int driver=DETECT,mode;initgraph(&driver,&mode,”F:\\TC\\BGI”);int x1=50,y1=20,x2=50,y2=100,x3=200,y3=20;int xq=100, yq=100;float goc=30;Function1();Function2(x1,y1,x2,y2,x3,y3);Function3(x1,y1,x2,y2,x3,y3,xq,yq,goc);getch();closegraph();

}

-Hình hiển thị

Page 16: Do hoa may tinh

Môn: Đồ họa máy tính

Câu 2: Cho đoạn AB trong không gian có tọa độ A(2,1,1) và B(1,3,4) quay đoạn thẳng quanh trục một góc 30 độ

Bài làm:

#include <stdio.h>#include <conio.h>#include <graphics.h>#include <math.h>#define RADS 0.017453293void Function1(){

line(10,getmaxy()/2,getmaxx()-10,getmaxy()/2);line(getmaxx()/2,10,getmaxx()/2,getmaxy()-10);

}

Page 17: Do hoa may tinh

Môn: Đồ họa máy tính

void Function2(int x1, int y1, int x2, int y2,int x3, int y3){line(getmaxx()/2+x1,getmaxy()/2-y1,getmaxx()/2+x2,getmaxy()/2-y2);line(getmaxx()/2+x2,getmaxy()/2-y2,getmaxx()/2+x3,getmaxy()/2-y3);line(getmaxx()/2+x3,getmaxy()/2-y3,getmaxx()/2+x1,getmaxy()/2-y1);

}void Function3(int x1, int y1, int x2, int y2, int x3,int y3,int xq,int yq,int goc){

float x11,y11,x22,y22,x33,y33;float anpha=RADS*goc;x11=int(x1*cos(anpha)-y1*sin(anpha) + (1-

cos(anpha))*xq+sin(anpha)*yq);y11=int(x1*sin(anpha)+y1*cos(anpha)-sin(anpha)*xq+(1-

cos(anpha))*xq);x22=int(x2*cos(anpha)-y2*sin(anpha)+(1-

cos(anpha))*xq+sin(anpha)*yq);y22=int(x2*sin(anpha)+y2*cos(anpha)-sin(anpha)*xq+(1-

cos(anpha))*xq);x33=int(x3*cos(anpha)-y3*sin(anpha)+(1-

cos(anpha))*xq+sin(anpha)*yq);y33=int(x3*sin(anpha)+y3*cos(anpha)-sin(anpha)*xq+(1-

cos(anpha))*xq);Function2(x11,y11,x22,y22,x33,y33);

}void main(){

clrscr();int driver=DETECT,mode;initgraph(&driver,&mode,”F:\\TC\\BGI”);int x1=20,y1=10,x2=100,y2=300,x3=10,y3=40;int xq=100, yq=100;float goc=145;Function1();Function2(x1,y1,x2,y2,x3,y3);Function3(x1,y1,x2,y2,x3,y3,xq,yq,goc);getch();closegraph();

}

Page 18: Do hoa may tinh

Môn: Đồ họa máy tính

Hình hiển thị