Tôi có một đường dẫn được tạo thành từ danh sách các điểm 2D. Tôi muốn biến chúng thành một dải hình tam giác để hiển thị một đường kết cấu với độ dày được chỉ định (và các thứ khác). Vì vậy, về cơ bản danh sách các điểm 2D cần phải trở thành một danh sách các đỉnh xác định đường viền của đa giác nếu kết xuất sẽ hiển thị dòng. Vấn đề là xử lý các góc tham gia, miters, mũ vv Các đa giác kết quả cần phải được "hoàn hảo" trong ý nghĩa của không overdraw, sạch tham gia, vv để nó có thể có thể được ép đùn hoặc nếu không toyed với.Làm cách nào để hiển thị các đường 2D dày như đa giác?
Có bất kỳ tài nguyên đơn giản nào xung quanh có thể cung cấp thông tin chi tiết về thuật toán, mã hoặc bất kỳ thông tin nào khác về cách thực hiện điều này một cách hiệu quả không?
Tôi hoàn toàn KHÔNG muốn thư viện vector 2D đầy đủ (cairo, antigrain, OpenVG, v.v.) với các đường cong, cung, dấu gạch ngang và tất cả các chuông và còi. Tôi đã đào sâu trong nhiều cây nguồn để triển khai OpenVG và những thứ khác để tìm thấy một số thông tin chi tiết, nhưng tất cả đều phức tạp khủng khiếp.
Tôi chắc chắn sẵn sàng tự viết mã, nhưng có nhiều trường hợp suy thoái (phân đoạn nhỏ + chiều rộng dày + góc nhọn) tạo ra tất cả các loại sự cố tham gia. Ngay cả một chút giúp đỡ cũng giúp tôi tiết kiệm được hàng giờ cố gắng đối phó với tất cả.
EDIT: Đây là một ví dụ về một trong những trường hợp thoái hóa gây ra sự xấu nếu bạn chỉ đơn giản là đi từ đỉnh đến đỉnh. Màu đỏ là đường dẫn ban đầu. Các khối màu cam là hình chữ nhật được vẽ theo chiều rộng được chỉ định căn chỉnh và căn giữa trên mỗi đoạn.
http://www.freeimagehosting.net/uploads/52dc639727.png
Tôi cũng muốn điều này. Tôi đã giả tạo nó trong nguyên mẫu với các hộp đơn giản giữa các điểm, nhưng nó sẽ phải được sửa cuối cùng. Hy vọng câu hỏi của bạn sẽ đưa ra câu trả lời đúng. Dù bằng cách nào, hãy liên hệ với chúng tôi và cho chúng tôi biết bạn đã làm gì. –
Để trả lời ảnh của bạn, Bạn không chia đôi các góc, bạn sẽ vuông góc với các đường thẳng của mình. –
Vâng, tôi biết. Đó là pre-whatever-join-algorithm-gets-apply. Tôi chỉ minh họa một trường hợp vấn đề, không phải điều gì sẽ xảy ra khi bạn thực sự áp dụng điều gì đó cho nó. –