intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Thuật toán vẽ Hyperbol

Chia sẻ: Pham Duy Dao | Ngày: | Loại File: DOC | Số trang:3

195
lượt xem
46
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tài liệu tham khảo về thuật toán vẽ Hyperbol

Chủ đề:
Lưu

Nội dung Text: Thuật toán vẽ Hyperbol

  1. Thu ật toán vẽ Hyperbol – = 1 (A < B) Pi+1 = 4 [B2 (xi+1 + 1/2)2 – A2(yi+1 + 1)2 – A2B2] B1: Thu hẹp vùng vẽ Xét hiệu Vẽ cung ở góc phần tư thứ I rồi lấy đối xứng qua trục tung, trục Pi+1 – Pi = 4 [B2 (xi+1 + 1/2)2 – A2(yi+1 + 1)2 – A2B2] hoành, gốc toạ độ được các phần còn lại – 4 [B2 (xi + 1/2)2 – A2(yi + 1)2 – A2B2] B2: Phân vùng vẽ. = 4 [B2 (xi+1 + 1/2)2 – A2(yi + 2)2 – A2B2] Xét cung ở góc phần tư thứ I có phương trình – 4 [B2 (xi + 1/2)2 – A2(yi + 1)2 – A2B2] y = = 4 [B2 ((xi+1)2 + xi+1 – (xi)2 – xi ) – A2(2yi + 3)] (2) A ≤x Biện luận theo dấu của Pi y’ = → y’ > 1 *Nếu Pi < 0 → F(x,y) < 0 → M nằm ngoài (H) → điểm Q gần điểm S Chọn điểm S để vẽ: Khi đó xi +1 = xi + 1 x A +∞ Thay vào (2) ta được +∞ Pi+1 – Pi = 4 [B2 ((xi +1)2 + (xi +1) – (xi)2 – xi ) – A2(2yi + 3)] y’ = 4 [B2 (2xi + 2) – A2(2yi + 3)] Pi+1 = Pi + 8 B2 xi + 8 B2 – 8A2yi – 12A2 (3) *Nếu Pi ≥ 0 → F(x,y) ≥ 0 → M nằm trong (H) → điểm Q gần điểm Suy ra có 1 vùng vẽ: P Vùng vẽ 1: A ≤ x; ứng với y’>1 Chọn điểm P để vẽ: Khi đó xi +1 = xi B 3.1 Vẽ vùng 1 Thay vào (2) ta được Đặt F(x,y) = B2x2 – A2y2 – A2B2 Pi+1 - Pi = 4[B2 ((xi )2 + xi – (xi)2 – xi ) – A2(2yi + 3)] Biết Mi(xi,yi) = 4[– A2(2yi + 3)] Xác định Mi+1(xi+1,yi+1) Pi+1 = Pi – 8A2yi – 8A2 (4) xi+1 Є { xi , xi+ 1} Tính P0 ứng với điểm ban đầu M0 (A,0) P M S yi+1 = yi + 1 yi+1 | Q P0 = 4 [B2 (A + 1/2)2 – A2(0 + 1)2 – A2B2] Nhật xét : x tăng chậm = 4AB2 – 4A + B2 y tăng đều Gọi M là trung điểm yi của SP Mi (xi + 1/2 , yi + 1) Đặt Pi = 4 F(x,y) xi xi+ 2 2 Pi = 4 [B (xi + 1/2) – A2(yi + 1)2 – A2B2] (1)
  2. BEGIN p = 4A2B - 4 A + B2 LƯU ĐỒ HYPERBOL x = A; y = 0; Put4pixel(x,y,color); No (A2-B2) x2 < A4 END Yes No p
  3. Thuật toán vẽ Hyperbol } #include void Hyperbol() #include { #include float a=70, b=60,p; #include float x,y; #include x=a;y=0; #include put4pixel(x,y); void InitGraph() p=4*a*b*b+b*b-a*a; { while((a*a-b*b)*x*x
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2