Chuyển đến nội dung
Diễn đàn CADViet
vbao

Chia 1 đa giác thành 2 diện tích khác nhau theo yêu cầu

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

Xin các anh trong diễn đàn giúp tôi file lisp tiện ích chia 1 tứ giác hoặc đa giác thành 2 phần P1 và P2 có diện tích khác nhau theo yêu cầu với đường ranh giới cho trước. Thanks

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
Xin các anh trong diễn đàn giúp tôi file lisp tiện ích chia 1 tứ giác hoặc đa giác thành 2 phần P1 và P2 có diện tích khác nhau theo yêu cầu với đường ranh giới cho trước. Thanks

"theo yêu cầu" tức là thế nào?

anh Bảo hãy giải thích rõ hơn!

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
"theo yêu cầu" tức là thế nào?

anh Bảo hãy giải thích rõ hơn!

 

có 1 thửa đất (hình tứ giác hoặc đa giác) nay tôi cần chia theo yêu cầu thành 2 phần khác nhau, P1 có diện tích = x, P2 có diện tích = y theo 1 đường ranh giới bất kỳ chỉ định cho trước (đường ranh giới này sẽ tịnh tiến khi thỏa điều kiện P1= x, P2= y) với autolisp có thuật toán nào để thực hiện việc này không anh Hoành

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
có 1 thửa đất (hình tứ giác hoặc đa giác) nay tôi cần chia theo yêu cầu thành 2 phần khác nhau, P1 có diện tích = x, P2 có diện tích = y theo 1 đường ranh giới bất kỳ chỉ định cho trước (đường ranh giới này sẽ tịnh tiến khi thỏa điều kiện P1= x, P2= y) với autolisp có thuật toán nào để thực hiện việc này không anh Hoành
theo 1 đường ranh giới bất kỳ chỉ định cho trước?

Đã bất kỳ rồi sao lại chỉ định cho trước?

 

Có phải là đường ranh giới sẽ song song với một đường thẳng cho trước không?

Có phải bài toán: Cho một đa giác, hãy cắt đa giác này bằng một đường thẳng song song với một đường thẳng cho trước. Sao cho tỷ lệ diện tích của hai miền sau khi cắt là k? Nếu như thế thì đây cũng là một bài toán khó.

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
Đã bất kỳ rồi sao lại chỉ định cho trước?

 

Có phải là đường ranh giới sẽ song song với một đường thẳng cho trước không?

Có phải bài toán: Cho một đa giác, hãy cắt đa giác này bằng một đường thẳng song song với một đường thẳng cho trước. Sao cho tỷ lệ diện tích của hai miền sau khi cắt là k? Nếu như thế thì đây cũng là một bài toán khó.

 

vâng đúng như anh diễn giải

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
vâng đúng như anh diễn giải

 

Đây là một bài tóan cực khó nhưng không phải là không thể làm được.

1. Cần biết thửa đất được border theo lọai đường nào?

2. Xác định 2 giao điểm của đường thẳng chia đôi thửa đất với đường border (theo một quan hệ...)

3. Tính lại Diện tích hai thửa...

Dự đóan bài này 3 man-days (đã có thuật tóan)

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
vâng đúng như anh diễn giải

 

Đây là một bài tóan cực khó nhưng không phải là không thể làm được.

1. Cần biết thửa đất được border theo lọai đường nào (đề nghị chuyển thành PolyLine)?

2. Xác định 2 giao điểm của đường thẳng chia đôi thửa đất với đường border (theo một quan hệ...)

3. Tính lại Diện tích hai thửa...

Dự đóan bài này 3 man-days (đã có thuật tóan)

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à một bài tóan cực khó nhưng không phải là không thể làm được.

1. Cần biết thửa đất được border theo lọai đường nào (đề nghị chuyển thành PolyLine)?

2. Xác định 2 giao điểm của đường thẳng chia đôi thửa đất với đường border (theo một quan hệ...)

3. Tính lại Diện tích hai thửa...

Dự đóan bài này 3 man-days (đã có thuật tóan)

 

cảm ơn các anh đã quan tâm.

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
(vbao @ Sep 16 2007, 09:44 PM)

Xin các anh trong diễn đàn giúp tôi file lisp tiện ích chia 1 tứ giác hoặc đa giác thành 2 phần P1 và P2 có diện tích khác nhau theo yêu cầu với đường ranh giới cho trước. Thanks

 

 

Dùng thuật toán tìm kiếm nhị phân. Ví dụ Chia đa giác lồi DGL thành hai miền có tỉ lệ diện tích cho trước theo đường thẳng đứng với sai số cho trước (ds)

Xác định điểm nằm trong đa giác.

Tính diện tích đa giác với điểm trong đa giác đó(Tham khảo lisp tính dt đa giác bằng cách pick)

Từ tỷ lệ dt => dt S1: phía trái đường thẳng đứng.

 

Gọi diện tích phía trái đường thẳng đứng là S1p.

Tìm hai đỉnh đa giác có Xmin và Xmax(hai điểm có khoảng cách xa nhất về hai phía của đường chia đa giác).

Vòng lặp:

B1:Tạo đường ranh giới X = 1/2(Xmin+Xmax).

B2:Xác định điểm nằm trong đa giác về phía trái đường ranh giới.

B3:Tính diện tích S1p.

-Nếu S1p < S1 và |S1p - S1| > ds:

Thiết lập lại Xmin là đường phân tách đa giác, trở về B1

-Nếu S1p > S1 và |S1p - S1| > ds:

Thiết lập lại Xmax là đường phân tách đa giác, trở về B1

-Trường hợp còn lại |S1p - S1| <= ds:

Thoát vòng lặp.

X:chính là đường phân tách thẳng thẳng đứng chia đa giác thành hai miền có tỷ lệ cho trướ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


×