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

(Nhờ Viết Lisp )Lisp Union Nhiều Đối Tượng

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

Chào các bạn !

Mình hay kéo dài các khối 3d trong cad nhưng cái này hơi bất tiện mỗi khi mình hợp nhiều đối tượng thành 1 khối phải uni từng cái khá là bất tiện và tốn thời gian.

Ví dụ : mình có 2 khối A và B song song và dài 500mm với 400mm. Mình muốn 2 khối đó dài thêm khối A là 600mm và khối B là 700 mm thì mình thường copy khối A thêm 100mm và khối B 300mm theo hướng mình cần. Rồi mới uni từng cái hơi mất công và tốn thời gian.

Nên mình muốn nhờ mấy bạn viết cho cái lisp mà khi mình copy đối tượng ra 1 đoạn mình cần rồi mình chỉ cần dùng lisp chọn hết các đối tượng thì các đối tượng giao nhau sẽ thành 1 khối ( các khối riêng lẻ ) chứ không như lệnh uni khi chọn hết các đối tượng  thì tất cả đối tượng sẽ thành 1 khối hết.

Cảm ơn mấy bạn nhiều !

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

Copy được cái nào thì union luôn, việc gì phải dùng lisp cho nó đang từ đơn giản trở thành phức tạp.

(defun c:test ()(command "copy" pause pause pause pause) (command "union" "p" "l" ""))

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

do mình làm có nhiều lúc copy nhiều cái ví dụ kéo dài 15 nan khe hở 2.5mm mà nó xiên 1 góc nào đó giờ muốn kéo dài nó mà vẫn giữ nguyên góc như cũ thì phải copy hết 15 nan ra 1 đoạn cố định rồi uni từng cái. Chứ nếu 1 hay 2 cái thì cũng đâu cần dùng lisp đâu. :(

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

Chào các bạn !

Mình hay kéo dài các khối 3d trong cad nhưng cái này hơi bất tiện mỗi khi mình hợp nhiều đối tượng thành 1 khối phải uni từng cái khá là bất tiện và tốn thời gian.

Ví dụ : mình có 2 khối A và B song song và dài 500mm với 400mm. Mình muốn 2 khối đó dài thêm khối A là 600mm và khối B là 700 mm thì mình thường copy khối A thêm 100mm và khối B 300mm theo hướng mình cần. Rồi mới uni từng cái hơi mất công và tốn thời gian.

Nên mình muốn nhờ mấy bạn viết cho cái lisp mà khi mình copy đối tượng ra 1 đoạn mình cần rồi mình chỉ cần dùng lisp chọn hết các đối tượng thì các đối tượng giao nhau sẽ thành 1 khối ( các khối riêng lẻ ) chứ không như lệnh uni khi chọn hết các đối tượng  thì tất cả đối tượng sẽ thành 1 khối hết.

Cảm ơn mấy bạn nhiều !

 

Anh có thể lựa chọn hai cách sau:

1/ Sử dụng lệnh: PRESSPULL

Command: PRESSPULL

Select object or bounded area:

Click a face, curve, or inside a bounded area

Select object or bounded area:

Specify extrusion height or [Multiple]:

Specify extrusion height or [Multiple]:

1 extrusion(s) created

Select object or bounded area:

 

11837_111a.gif

11837_untitled1.gif

 

(Lệnh Presspull có thể kéo mặt phẳng nào đó lên cao hoặc xuống thấp một giá trị  bất kỳ nào đó

hoặc trùng với một mặt phẳng có sẵn nào đó).

 

11837_2221k__copy.gif

 

(Lệnh Presspull "copy" được khối nhỏ của khối to được union từ nhiều khối nhỏ)

 

2/ Sử dụng lệnh Command: SOLIDEDIT

Command: SOLIDEDIT

Solids editing automatic checking:  SOLIDCHECK=1

Enter a solids editing option [Face/Edge/Body/Undo/eXit] <eXit>: f

Enter a face editing option

[Extrude/Move/Rotate/Offset/Taper/Delete/Copy/coLor/mAterial/Undo/eXit] <eXit>: o

Select faces or [undo/Remove]: 2 faces found.

Select faces or [undo/Remove/ALL]: 2 faces found, 1 removed.

Select faces or [undo/Remove/ALL]: 2 faces found, 0 removed.

Select faces or [undo/Remove/ALL]: 2 faces found, 0 removed.

Select faces or [undo/Remove/ALL]: 2 faces found, 0 removed.

Select faces or [undo/Remove/ALL]: 2 faces found, 0 removed.

Select faces or [undo/Remove/ALL]: 2 faces found, 0 removed.

Select faces or [undo/Remove/ALL]:

Specify the offset distance:  Specify second point:

Solid validation started.

Solid validation completed.

Enter a face editing option

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ảm ơn haanh.

Có thể bạn chưa hiểu ý mình. Ý mình là mình có nhiều vật thể 3d song song và có thể xiên 1 góc nào đó và muốn kéo dài chúng ra 1 khoảng nhất định sau đó mình muốn tất cả những đối tượng đó chỗ giao nhau thành 1 khối riêng lẻ. Bình thường mình phải copy tưng cái ra 1 khoản rồi copy từng cái rồi uni tưng cái rất là lâu. Mình muốn mấy bạn giúp viết 1 lisp khi mình đã kéo đối tượng ra 1 khoản nào đó chỉ cần dùng lisp chọn hết các đối tượng kéo dài đó là chúng thành các khối 3d và riêng lẻ với nhau ( giao với nhau thì tự động hợp thành 1 khối )

Mình có kèm hình ở dưới cho rõ hơn nhan.152285_untitled.png

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ảm ơn haanh.

Có thể bạn chưa hiểu ý mình. Ý mình là mình có nhiều vật thể 3d song song và có thể xiên 1 góc nào đó và muốn kéo dài chúng ra 1 khoảng nhất định sau đó mình muốn tất cả những đối tượng đó chỗ giao nhau thành 1 khối riêng lẻ. Bình thường mình phải copy tưng cái ra 1 khoản rồi copy từng cái rồi uni tưng cái rất là lâu. Mình muốn mấy bạn giúp viết 1 lisp khi mình đã kéo đối tượng ra 1 khoản nào đó chỉ cần dùng lisp chọn hết các đối tượng kéo dài đó là chúng thành các khối 3d và riêng lẻ với nhau ( giao với nhau thì tự động hợp thành 1 khối )

Mình có kèm hình ở dưới cho rõ hơn nhan.152285_untitled.png

 

Hơi  bị tiếc là anh không hiểu ý của em :) :) :)

Đây là sử dụng lệnh Presspull để co kéo theo chiều dài tùy ý:

Nhanh hơn copy và union là cái chắc!

11837_267.gif

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  

×