Đường viền 2D của phép chiếu lưới là tập con của phép chiếu các cạnh của nó.
Sử dụng quan sát này, người ta có thể xác định phác thảo 2D bằng cách sử dụng phương pháp sau đây:
- chiếu của mỗi cạnh thuộc chỉ có một khuôn mặt là một phần của phác thảo 2D,
- cho cạnh khác, xác định vector bình thường của các mặt liền kề của nó
- tính các sản phẩm chấm của các chuẩn đó với bình thường mặt phẳng chiếu
- phép chiếu cạnh này thuộc về phác thảo 2D nếu tất cả các dấu hiệu của các sản phẩm chấm không giống nhau (nghĩa là, một khuôn mặt đang hướng về phía mặt phẳng chiếu trong khi ít nhất một mặt khác không xác định cạnh là một phần của đường viền).
Lưu ý rằng phương pháp này sẽ báo cáo tất cả các cạnh mà là trực giao với mặt phẳng chiếu, ngay cả những người mà không nhìn thấy được từ quan điểm của mặt phẳng chiếu của xem. Ví dụ, với một hình xuyến, nó sẽ tìm thấy đường viền bên trong và bên ngoài, ngay cả khi hình xuyến được xoay theo cách mà lỗ bên trong của nó không thể nhìn thấy từ quan điểm của mặt phẳng chiếu. Để sắp xếp các cạnh nào hiển thị, bạn sẽ cần một số loại kiểm tra khả năng hiển thị. Nếu mục đích sử dụng là để hiển thị người dùng, bạn có thể sử dụng bộ đệm độ sâu được tính toán với ma trận chiếu trực giao để hiển thị hình học từ góc nhìn của mặt phẳng chiếu và thực hiện kiểm tra z để xác định các cạnh nào có thể nhìn thấy được từ mặt phẳng. Nếu bạn cần độ chính xác, bạn sẽ cần phải thực hiện giao điểm ray/tam giác để xác định khả năng hiển thị.
Nguồn
2014-03-23 18:58:47
Đường màu xanh dương không trông lồi ở đây. – Svante
Vâng, bạn nói đúng. Tôi nhanh chóng lấy trộm hình ảnh đó từ một trang web và vẽ một số đường màu đỏ trên đó để minh họa. Tôi vẫn hy vọng ý tưởng đó đã được thông qua :) – ralphtheninja
@MagnusSkog: Tôi cần phải làm chính xác điều này. Phương pháp nào phù hợp nhất với bạn? – PeteUK