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

[Đã xong] Lisp hide & show object

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

Mọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

  • Vote tăng 49

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ọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn ọbect

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

Trong diễn đàn này không có nút "thank" để cảm ơn cái nhỉ.

  • Vote tăng 5

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ọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

Tiện ích thật tuyệt vời! Đồng chí có thể bổ sung thêm lựa chọn là: chọn đối tượng ở lớp trên cùng(dùng select object chứ không pick chọn từng đối tượng)khi có nhiều đối tượng đè lên nhau.

Tôi lấy ví dụ như ở bản vẽ sau:

http://www.fileden.com/files/2007/6/1/1135...61206-1-500.zip

Trong bản vẽ dùng lệnh misert nhiều đối tượng block đè lên nhau.Mình đã dùng lệnh invis để tắt đối tượng lớp trên cùng, rồi xoá tất cả các đối tượng nằm dưới, nhưng phải dùng lệnh invis mà pick chọn từng đối tượng thì lâu quá!

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
Tiện ích thật tuyệt vời! Đồng chí có thể bổ sung thêm lựa chọn là: chọn đối tượng ở lớp trên cùng(dùng select object chứ không pick chọn từng đối tượng)khi có nhiều đối tượng đè lên nhau.

Tôi lấy ví dụ như ở bản vẽ sau:

http://www.fileden.com/files/2007/6/1/1135...61206-1-500.zip

Trong bản vẽ dùng lệnh misert nhiều đối tượng block đè lên nhau.Mình đã dùng lệnh invis để tắt đối tượng lớp trên cùng, rồi xoá tất cả các đối tượng nằm dưới, nhưng phải dùng lệnh invis mà pick chọn từng đối tượng thì lâu quá!

Cám ơn!

 

 

 

 

Các bác ơi em thấy cái này rất hay nhưng em không down đc, bác nào đã có lisp này rồi thì cho em xin được không?

Em Thank các bác 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
Các bác ơi em thấy cái này rất hay nhưng em không down đc, bác nào đã có lisp này rồi thì cho em xin được không?

Em Thank các bác trước


;======================Bemove====================================
; Hide & Show 

(defun c:InVis (/ SSet Count Elem)

 (defun Dxf (Id Obj)
   (cdr (assoc Id (entget Obj)))
 );end Dxf

 (prompt "\nSelect object(s) to hide: ")
 (cond
   ((setq SSet (ssget))
    (repeat (setq Count (sslength SSet))
      (setq Count (1- COunt)
     Elem (ssname SSet Count))
      (if (/= 4 (logand 4 (Dxf 70 (tblobjname "layer" (Dxf 8 Elem)))))
 (if (Dxf 60 Elem)
   (entmod (subst '(60 . 1) (assoc 60 (entget Elem)) (entget Elem)))
   (entmod (append (entget Elem) (list '(60 . 1))))
 )
 (prompt "\nEntity on a locked layer. Cannot hide this entity. ")
      );end if
    );end repeat
   )	 	
 );end cond
 (princ)
);end c:InVis



(defun c:Vis (/ WhatNextSSet Count Elem)

 (defun Dxf (Id Obj)
   (cdr (assoc Id (entget Obj)))
 );end Dxf

(cond
 ((setq SSet (ssget "_X" '((60 . 1))))
  (initget "Yes No")
  (setq WhatNext (cond
	   ((getkword "\nAll hidden entities will be visible. Continue? No, : "))
	   (T "Yes")))
  (cond
  ((= WhatNext "Yes")
   (prompt "\nPlease wait...")
    (repeat (setq Count (sslength SSet))
      (setq Count (1- COunt)
     Elem (ssname SSet Count))
      (if (/= 4 (logand 4 (Dxf 70 (tblobjname "layer" (Dxf 8 Elem)))))
 (entmod (subst '(60 . 0) '(60 . 1) (entget Elem)))
 (prompt "\nEntity on a locked layer. Cannot make visible this entity. ")
      );end if
    );end repeat
   (prompt "\nDone...")
   )
  );end cond
 )
 (T (prompt "\nNo objects was hidden. "))

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ác bác ơi em thấy cái này rất hay nhưng em không down đc, bác nào đã có lisp này rồi thì cho em xin được không?

Em Thank các bác trước

Đợt này mạng nó hơi chập chờn. Ban cho email di minh gui cho

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ọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

 

Lisp này tuyệt vời, cảm ơn bạn rất nhiều.

 

Mình hỏi thêm 1 chút, có thể edit lisp này để có thêm lệnh isolate objects đc không bạn nhỉ

 

cảm ơn bạn rất 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
Mọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

Cảm ơn bạn nhé. Rất hay và hiệu quả

Have fun

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ọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

 

Lệnh này mình cũng rất cần, cám ơn bác nhé. Mà bác có thể làm icon để click vào là sử dụng lệnh không hả bá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
Mọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

Thank you very much

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

anh bemove ơi! em thấy lisp này tuyệt vời rồi! rất hữu ích! nhưng anh có thể thêm vào nó 1 lệnh nữa là lệnh "show only select" ko ạ! nếu được thì ko biết nói j hơn :X

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
anh bemove ơi! em thấy lisp này tuyệt vời rồi! rất hữu ích! nhưng anh có thể thêm vào nó 1 lệnh nữa là lệnh "show only select" ko ạ! nếu được thì ko biết nói j hơn :X

Đã có lisp này rồi. Mình nhớ không nhầm thì nó nằm ở mục viết lisp theo yêu cầu

  • 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
Đã có lisp này rồi. Mình nhớ không nhầm thì nó nằm ở mục viết lisp theo yêu cầu

 

Em đã cố seach nhưng có lẽ từ ngữ ko chính xác nên ko có, anh cố nhớ lại xem nó ở đâu hộ em, thks 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

hi ! Mình vừa xin được cai lisp để in tất cả các bản vẽ trong layuot một ượt mà đỡ tốn công pick nhiều lần,ai cần thi liên hệ nhé tyvcctgmail.com .minh không post lên vì mình thấy trên diễn dàn đã có lisp của anh Hoành rất hay roà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

trên cả tuyệt vời! cám ởn bác nataca nhiêu lắm ạ! em biết post này là thừa nhưng đúng là em rất cảm ơn bác, phải viết thành bài mới được, rất mong bác có thêm nhiều đóng góp cho anh em

 

cám ơn và chúc bác thành công trong cuộc sống!

  • 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

Mình muốn hỏi có lisp để khóa và mở khóa (chứ k phải ẩn) những đối tượng được chọn không các bạ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
Mọi người tự hỏi tại sao không có lệnh ẩn từng đối tượng mà không phải ẩn cả layer hay freeze cả layer. lisp đây

Invis: ẩn object

vis: hiện object

http://www.cadviet.com/upfiles/hideshow.lsp

cho mình hỏi sao mình dùng invis thì đc mà dùng vis thì autocad ko hiểu, bạn xem lại giùm mình chỗ này với nha, cám ơn bạn nhiều !

Tiện cho mình hỏi làm sao hiện lại đc đối tượng vừa ẩn bằng invis.

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


×