Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
akita13

xấp xỉ đường biên bằng một đường polyline

Các bài được khuyến nghị

Chào các bác!

Em có một tập hợp các đường rời rạc như trong file cad kèm them.Em muốn xấp xỉ nó bằng một đường polyline.Các bác có thuật toán nào giải quyết bài toán này xin chỉ giúp.

Đây là file cad đính kèm:

duongbao

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hờ hờ, cái này dùng phần mềm được rồi.

 

1. Dùng phần mềm xử lý ảnh (như ACDSee) detect edge or find contour

2. Dùng Img2CAD để chuyển ảnh thành vector là xong.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Phương án sơ qua là như thế này.

- Bạn cho 1 đường thẳng chạy từ trên xuống dưới hoặc từ trái sang phải, bước nhảy delta.

- Mỗi lần như thế bạn lấy tập giao nonExtend với các đối tượng, từ list đó lọc ra 2 điểm khoảng cách xa nhất (2 điểm này đã có cùng x hoặc cùng y r nhé, so sánh cái còn lại thôi).

- Tách 2 thằng này thành 2 list riêng biệt.(1 điểm thuộc list 1, 1 điểm thuộc list 2).

- Mỗi bước nhảy lại lặp lại và append 2 điểm đó vào list1, 2 tương ứng.

- Sau khi xong, kẻ Pline qua các point list1 và reverse list 2

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

nhưng sẽ tồn tại những vị trí mà đuờng thẳng của bạn không cắt tập hợp kia nhát nào. hoặc tất cả các vị trí cắt cùng nằm về 1 phía của đuờng bao.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Đấy là e sơ bộ trên thực tế đa giác ví dụ thế, còn giải quyết triệt để thì chưa được.trường hợp bác nêu đều k vấn đề gì mấy, vì khi k cắt cũng chính là lúc kết thúc while ^^ E chỉ lo trường hợp cắt qua đa giác ở nhiều điểm đều thuộc biên bao, điển hình của các đa giác bao có trọng tâm nằm ngoài đa giác

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×