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

Lisp chọn tất cả các đối tượng thuộc 1 layer !

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

Vào lúc 24/12/2011 tại 12:47, Doan Van Ha đã nói:

Ketxu hướng dẫn cho bạn nhưng bạn vẫn chưa hiểu. Tôi diễn tả cụ thể như sau:

- Load lisp.

- Đánh lệnh CHON vào command.

- Sau đó chọn đối tượng. Bạn có thể lấy vùng chọn tuỳ ý, nhưng chỉ những layer "0" nằm trong vùng mới được chọn.

- Chọn xong, lisp trả về tên tập hợp chọn, đồng thời grip lên các đối tượng để bạn dễ thấy.

 


(defun c:chon()
(cadr (sssetfirst nil (ssget '((8 . "0"))))))
 

 

Nếu mình muốn chỉ click chọn vào đối tượng mẫu xong lisp sẽ tự động chọn tất cả các đối tượng cùng layer với đối tượng được chọn mà ko cần chọn vùng bao thì sao hả bạn

  • Vote tăng 1
  • Vote giảm 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

nếu bạn quay tất cả thì sao ta, nghĩa là mỗi đối tượng đều có góc quay chứ.

 

Xin lỗi, mình định trả lời ở đây "Không bạn :) Vì bạn phải biết bạn định chọn đối tượng nào, mới có định nghĩa GÓC QUAY bạn định nói đến :)" nhưng nhầm, bỏ qua 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

em có câu hỏi về LISP này.

Có cách nào khi nhập lệnh, lisp hỏi tên Layer cần chọn.

Sau đó kiểm tra layer đó có tồn tại ko, nếu có thì chọn tất cả các đối tượng thuộc layer vừa nhập ạ.

 

Em cảm ơ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
2 giờ trước, saycaphe đã nói:

em có câu hỏi về LISP này.

Có cách nào khi nhập lệnh, lisp hỏi tên Layer cần chọn.

Sau đó kiểm tra layer đó có tồn tại ko, nếu có thì chọn tất cả các đối tượng thuộc layer vừa nhập ạ.

 

Em cảm ơn ạ!

  • Like 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
48 phút trước, saycaphe đã nói:

trả lời chất quá bác :).

Bác cho em xin mấy cái lisp như vậy với ạ ;)

 

Em cảm ơn!

(defun C:thich69 (/ a b)
(setq a (getstring T "nhap ten layer:"))
(if (tblsearch "layer" a)
(progn
(setq b (cons 8 a))
(sssetfirst nil (ssget "x" (list b)))
);progn
(alert "khong co layer")
);if
)

layer có dấu cách thì nhập cả dấu cách vào bạn ạ. mà mìn có 1 cái này thôi chứ viết nhiều cái để phục vụ cùng 1 mục đích thì thấy ngu ngu sao ấy.

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
15 phút trước, dungpham01 đã nói:

(defun C:thich69 (/ a b)
(setq a (getstring "nhap ten layer:"))
(if (tblsearch "layer" a)
(progn
(setq b (cons 8 a))
(sssetfirst nil (ssget "x" (list b)))
);progn
(alert "khong co layer")
);if

layer có dấu cách thì nhập cả dấu cách vào bạn ạ. mà mìn có 1 cái này thôi chứ viết nhiều cái để phục vụ cùng 1 mục đích thì thấy ngu ngu sao ấy.

Ý của bạn Nhân trên kia là hàm getstring của bạn không nhập được tên layer có khoảng trắng (space).

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
10 phút trước, Doan Van Ha đã nói:

Ý của bạn Nhân trên kia là hàm getstring của bạn không nhập được tên layer có khoảng trắng (space).

à thôi chết. em không tính đến nước ấy. trường hợp này nghĩ nhanh thì em sẽ giải quyết vấn đề bằng cách nhập vào hộp thoại. tuy nhiên để nhập dc vào hộp thoại thì cần phải cài expresstool.

à có cách rồi. lúc đó hãy nhập là "lop ten duong" là ok. hehehe

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

Mình muốn nhờ các bạn am hiểu list viết hộ mình List tạo layer Text_200, Text style Arial - Font Arial và Text dạng Dtext cao 200 thuộc lớp Text_200 vừa tạo.

Cảm ơn anh hỗ trợ.

 

  • Vote giảm 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

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  

×