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

[nhờ viết lisp] đổi màu block reference và file xref

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

Nhờ các cao thủ viết dùm em lisp có thể đổi màu của block reference / file xref: có thể đổi màu toàn bộ block reference / file xref hoặc là chọn cái nào thì đổi màu cái đó.

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

Nhờ các cao thủ viết dùm em lisp có thể đổi màu của block reference / file xref: có thể đổi màu toàn bộ block reference / file xref hoặc là chọn cái nào thì đổi màu cái đó.

Cám ơn

Hề hề hề,

Hãy post bản vẽ chứa các đối tượng cần đổi màu của bạn lên và nói cho rõ là đổi màu như thế nào nghen. gì chứ mấy thằng này nó chứa hầm bà lằng xắng cấu các đồi tượng con bên trong nó. vậy bạn muốn đổi tất cả các đối tượng này về cùng một màu hay là mỗi thằng một màu cho nó ..... thêm lòe loẹt?????

Hề hề hề

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ờ các cao thủ viết dùm em lisp có thể đổi màu của block reference / file xref: có thể đổi màu toàn bộ block reference / file xref hoặc là chọn cái nào thì đổi màu cái đó.

Cám ơn

 

Lisp sau có chức năng Đổi màu Block (Cái này mình tham khảo lisp từ đâu đó và thêm tí mắm tí muối thôi). Hi vọng đúng ý bạn

Mbl.gif

(defun err-ubc (s)
(if (/= s "Function cancelled")
(princ (strcat "\nError: " s))
)
(setq *error* olderr)
(princ)
)
(DEFUN C:mbl (/ BLK CBL CBL2 C ACL ALY NLY NCL)
(setq olderr *error* *error* err-ubc)
(setq C (acad_colordlg 1))      
(PROMPT "\n >Chon Blocks se thay doi mau: ")
(SETQ SS (SSGET '((0 . "INSERT"))))
(SETQ K 0)
(WHILE (< K (SSLENGTH SS))
	(setq CBL (tblsearch "BLOCK" (CDR (ASSOC 2 (ENTGET (SETQ BLK (SSNAME SS K)))))))
	(SETQ CBL2 (CDR (ASSOC -2 CBL)))
 (WHILE (BOUNDP 'CBL2)
  (SETQ EE (ENTGET CBL2))
(SETQ NCL (CONS 62 C))
  (SETQ ACL (ASSOC 62 EE))
  (IF (= ACL nil)
(SETQ NEWE (APPEND EE (LIST NCL)))
(SETQ NEWE (SUBST NCL ACL EE))
  )
  (ENTMOD NEWE)
  (SETQ CBL2 (ENTNEXT CBL2))
 )
 (ENTUPD BLK)
 (SETQ K (1+ K))
)
(setq *error* olderr)
)

  • 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

Cám ơn các Bác đã nhanh chóng hỗ trợ.

Ý em là như thế này: em có 1 bản vẽ đã có chèn nhiều block, file xref và cũng đã có vẽ một số đối tượng rồi. Em cần lisp có thể đổi màu toàn bộ (hoặc 1 vài) block reference/ file xref này (các đối tượng đã vẽ không bị đổi màu) trước khi em vẽ thêm các đối tượng khác (để đánh dấu nổi lên khi convert qua PDF,..). Mong các Bác giúp đỡ thêm.

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

 

Lisp sau có chức năng Đổi màu Block (Cái này mình tham khảo lisp từ đâu đó và thêm tí mắm tí muối thôi). Hi vọng đúng ý bạn

Mbl.gif

(defun err-ubc (s)
(if (/= s "Function cancelled")
(princ (strcat "\nError: " s))
)
(setq *error* olderr)
(princ)
)
(DEFUN C:mbl (/ BLK CBL CBL2 C ACL ALY NLY NCL)
(setq olderr *error* *error* err-ubc)
(setq C (acad_colordlg 1))      
(PROMPT "\n >Chon Blocks se thay doi mau: ")
(SETQ SS (SSGET '((0 . "INSERT"))))
(SETQ K 0)
(WHILE (< K (SSLENGTH SS))
	(setq CBL (tblsearch "BLOCK" (CDR (ASSOC 2 (ENTGET (SETQ BLK (SSNAME SS K)))))))
	(SETQ CBL2 (CDR (ASSOC -2 CBL)))
 (WHILE (BOUNDP 'CBL2)
  (SETQ EE (ENTGET CBL2))
(SETQ NCL (CONS 62 C))
  (SETQ ACL (ASSOC 62 EE))
  (IF (= ACL nil)
(SETQ NEWE (APPEND EE (LIST NCL)))
(SETQ NEWE (SUBST NCL ACL EE))
  )
  (ENTMOD NEWE)
  (SETQ CBL2 (ENTNEXT CBL2))
 )
 (ENTUPD BLK)
 (SETQ K (1+ K))
)
(setq *error* olderr)
)

 

Bác cho em xin thêm các lisp như trong link này nha.

http://www.cadonline.duyxuyen.vn/modules.php?name=Forums&file=viewtopic&t=17&postdays=0&postorder=asc&start=0

Cám ơn bác 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

Cái đó bạn chờ thêm vài hôm nữa nhé. Mình đang tạo file Setup. Vài hôm nữa bạn vào www.cadonline.duyxuyen.vn để tải

Hề hề hề,

Bạn có thể cho xin file .lsp và .dcl của những ứng dụng này được không nhỉ??? Quả thật là mình cũng muốn mót tí ti từ mấy cái ông tây này, nhất là cái mảng tạo hộp thoại bạn ạ.

Xin chân thành cám ơn 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
Hề hề hề, Bạn có thể cho xin file .lsp và .dcl của những ứng dụng này được không nhỉ??? Quả thật là mình cũng muốn mót tí ti từ mấy cái ông tây này, nhất là cái mảng tạo hộp thoại bạn ạ. Xin chân thành cám ơn trước.

Bác PTB ơi! Cái này không tạo dialoge mà chỉ là dùng 1 dòng lệnh để lấy dialoge của Cad, đó là hàm bên dưới, nó trả về number của màu được chọn.

Thân thương!

(setq C (acad_colordlg 1))

  • 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

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  

×