Để thực hiện việc hiển thị một đối tượng ba chiều, ta phải xử lí dữ liệu nhập thông qua một quy trình gồm nhiều bước. Trong một số bước này, đôi khi ta cần thông tin vềđịnh hướng của đối tượng và cả thông tin về định hướng của từng mặt của đối tượng trong không gian. Những thông tin này có thể lấy được thông qua tọa độ của các đỉnh và phương trình mô tả các mặt đa giác của đối tượng.
Phương trình biểu diễn mặt phẳng có dạng: (6.1)
trong đó(x,y,z) là một điểm bất kì của mặt phẳng và A, B, C, D là các hằng số diễn tả thông tin không gian của mặt phẳng. Nhưđã biết, để xác định phương trình mặt phẳng, ta chỉ cần biết ba điểm không thẳng hàng trên mặt phẳng này. Như vậy, để xác định phương trình mặt phẳng qua một đa giác, ta sẽ sử dụng tọa độ của ba đỉnh đầu tiên
, , , trong đa giác này. Từ (5.1) ta có: (6.2)
Dùng quy tắc Cramer, ta có thể xác định A, B, C, D theo công thức:
(6.3)
Hướng của mặt phẳng thường được xác định thông qua vector pháp tuyến của nó. Vector pháp tuyến , trong đó A, B, C là các hệ số của phương trình mặt phẳng ta vừa tính trong (5.4).
Hình 6.2 – Vector pháp tuyến của mặt phẳng
Vì ta thường làm việc với các mặt bao quanh đối tượng nên ta cần phân biệt hai mặt của mặt phẳng. Mặt tiếp giáp với phần bên trong của đối tượng ta gọi là mặt trong, mặt kia là mặt ngoài. Nếu các cạnh của đa giác được mô tả theo chiều ngược chiều kim đồng hồ, vector pháp tuyến của mặt phẳng sẽ hướng từ trong ra ngoài (giả sử hệ tọa độ biểu diễn đối tượng là hệ tọa độ bàn tay phải). Ví dụ, trong hình 6.3, vector pháp tuyến của mặt phải của khối lập phương đơn vị (mặt được tô) có phương trình mặt phẳng là x-1=0 và có vector pháp tuyến tương ứng là (1,0,0);
Hình 6.3– Vector pháp tuyến hướng từ trong ra ngoài
Phương trình mặt phẳng còn có thể dùng để xác định vị trí tương đối giữa một điểm trong không gian với mặt phẳng. Nếu điểm P(x,y,z) không nằm trên mặt phẳng, lúc đó ta có:
Ta có thể xác định P nằm ở phía trong hay nằm phía ngoài của mặt phẳng nhờ vào dấu của biểu thức Ax + By + Cz + D:
• Nếu Ax + By + Cz + D < 0, điểm P(x,y,z) nằm trong. • Nếu Ax + By + Cz + D > 0, điểm P(x,y,z) nằm ngoài.
Dấu hiệu kiểm tra trên đúng cho hệ tọa độ bàn tay phải và phương trình mặt phẳng được tính từ tọa độ các đỉnh đa giác cho theo chiều ngược chiều kim đồng hồ.
Đôi khi, sẽ rất hữu ích nếu ta khảo sát các đường và mặt thông qua phương trình tham số của nó.
Phương trình tham số của một mặt là một phương trình có hai tham số u, v. Một điểm bất kì trên mặt sẽ có tọa độ được biểu diễn dưới dạng vector tham số : p(u, v) = (x(u, v), y(u, v), z(u, v)). Với mỗi cặp giá trị (u, v) ta sẽ có một bộ các tọa độ (x, y, z) biểu diễn một điểm trên bề mặt đã cho. Các mặt sẽđược phân biệt với nhau bằng các bộ hàm x(), y(), z() khác nhau.
Để giới hạn không gian của các mặt, thông thường người ta định lại các tọa độ biên sao cho u, v tương ứng biến đổi trong đoạn [0, 1]. Ví dụ, một mặt cầu với bán kính r, tâm tại gốc tọa độ có thể biểu diễn bằng các phương trình sau :
x(u, v) = r sin(p u) cos(2p v) y(u, v) = r sin(p u) sin(2p v) z(u, v) = r cos(p u)
Trong đó u, v thay đổi trong đoạn [0, 1].
Một mặt phẳng có thểđược xác định bằng một điểm với vector vị trí c và hai vector a, b không cùng phương (xem hình 6.4).
Nhận xét rằng bất kì điểm nào trên mặt phẳng cũng có thể được biểu diễn bằng một vector tổng sau : p(u, v) = c + au + bv. Đây chính là phương trình tham số của mặt phẳng.
Trong phương trình trên u, v có thể biến đổi trong khoảng , do đó mặt phẳng sẽ trải dài đến vô tận. Tuy nhiên trong các trường hợp cụ thể ta chỉ muốn dùng một phần của mặt phẳng, một hình bình hành thôi chẳng hạn. Các phần như vậy được gọi là planar patch, lúc đó ta có thể tưởng tượng mặt phẳng như là sự ghép nối của các planar patch này.
Một planar patch được xác định bằng cách giới hạn khoảng biến đổi của các tham số u, v trong phương trình trên. Ví dụ nếu cho u, v biến đổi trong đoạn [0, 1] ta sẽ có một patch như hình vẽ 6.5.
Trong hình vẽ này u, v được biến đổi trong một khoảng không gian gọi là không gian tham số (parametric space), việc ánh xạ tương ứng các giá trị u, v đã được giới hạn trên sẽ tạo ra một patch trong không gian tương ứng gọi là không gian đối tượng.
Hình 6.5 – Cách tạo ra một patch