Đưa ra các giá trị trên một lưới, tôi có thể sử dụng thuật toán nào để xây dựng các đường viền thiết lập mức hiệu quả?


9

Tôi có một lưới, các mặt , các cạnh E và các đỉnh V và tôi có một danh sách các đường viền đặt mức được xác định trước.FEV

Thuật toán nào tôi có thể sử dụng để xây dựng các đường viền theo cách hiệu quả nhất?

nhập mô tả hình ảnh ở đây

Một âm mưu của đường viền được hiển thị ở trên. Các dòng có cùng màu có cùng giá trị .z


1
Tại sao các downvote?
Graviton

1
không chắc chắn, nó có vẻ như một câu hỏi có liên quan đến tôi. Downvoter? Một vấn đề là các phân lập dường như không được xác định rõ ràng cho dữ liệu lưới. Có lẽ bạn có thể đưa ra một ví dụ đồ họa về vấn đề bạn đang cố gắng giải quyết?
Aron Ahmadia

Câu trả lời:


4

Nó có thể được thực hiện bằng một vòng lặp trên mỗi phần tử và sau đó cho mỗi phần tử một vòng lặp trên các cạnh. Sau đó, cho mỗi cạnh xác định tọa độ cho một đường viền đã cho nếu nó đi qua cạnh đó, tức là kiểm tra xem đường viền có lấy một giá trị trong khoảng thời gian được kéo dài bởi các giá trị đỉnh không. Nếu đường viền đi qua hai cạnh, sau đó vẽ một đường thẳng giữa tọa độ giữa các điểm giao nhau được phát hiện ở các cạnh.

Làm điều này cho tất cả các yếu tố sẽ tạo ra các đường viền. Nó cũng là một tùy chọn để tinh chỉnh lưới mịn hơn thông qua phép nội suy trên mỗi tam giác và sau đó sử dụng tam giác delaunay của lưới tinh chế và sau đó áp dụng quy trình như mô tả ở trên để đạt được độ phân giải đủ tốt.


Ôi(F*n)Fn

@Graviton: Tôi không nghĩ bạn có thể mong đợi sẽ tốt hơn nhiều so với quy mô tuyến tính với quy mô vấn đề ...
Allan P. Engsig-Karup
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.