II I CÁC THUẬT TỐN TEST QUAN HỆ HÌNH HỌC
10- Kiểm tra tính lồi của đa giác
Cơ sơ tốn học:
-Nhận biết quay trái với quay phải:
Cĩ những thuật giải ta phải duyệt một đa giác, lần lượt thăm mỗi đỉnh hay cạnh. Ta xem như di chuyển theo một cạnh từ đỉnh này đến đỉnh kia và sau đĩ ra cạnh kế. Như vậy cần phải biết đi theo chiều phải hay trái.
Ví dụ, nếu P1, P2, P3 là ba cạnh kề nhau của đa giác, ta tạo vector cạnh a=P2- P1 và b=P3- P2. Hình (1) cho thấy trường hợp a và b nằm trong mặt xy và quay trái khi đi từ a đến b. Cịn hình (2) là quay phải.
b b
a a
Hình 1 Hình 2
Giả sử dùng hệ tay phải ở hình 1 và hình 2 nên trục z (hay chiều k) hướng ra ngồi từ trang sách tới chúng ta. Dùng quy tắc tay phải, tích a x b chỉ ra ngồi với thành phần k dương. Nếu lập tích vơ hướng vector này với chính k, sẽ được một đại lượng mà dấu của nĩ cho biết chiều quay, dương nếu quay trái và âm nếu quay phải.
Cho vector a và b trong mặt xy, quay từ a đến b sẽ là dương nếu T= k.(a x b) >= 0
và âm nếu ngược lại (Kết quả khơng đổi đối với hệ tay trái).
-Với đa giác lồi, mọi phép quay cĩ cùng chiều, như đa giác A. Nếu đa giác khơng lồi, như trường hợp B, gồm cả hai phép quay. Như vậy, đa giác đơn là lồi nếu và chỉ nếu mọi phép quay cĩ cĩ cùng dấu khi được duyệt.
Giải thuật:
-Duyệt đa giác theo thứ tự các đỉnh để xét việc quay từ cạnh a đến cạnh b tại mỗi đỉnh là quay phải hay quay trái.
.Tính tọa độ theo hướng oz của tích vector a x b T= k(a x b) = ax*by – ay*bx
-Nếu mọi phép quay đều như phép quay tại đỉnh thứ nhất, đa giác lồi. - Nếu cĩ một phép quay khác phép quay tại đỉnh thứ nhất, đa giác lõm.