Đến nội dung


Hình ảnh
- - - - -

Lisp Chuyển Tất Cả Các Layer Leader Về Cùng Một Layer!


  • Please log in to reply
16 replies to this topic

#1 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 05 October 2016 - 09:28 PM

Như tiêu để em nhờ các anh chị em viết giúp em lisp chuyển tất cả các layer leader về cùng một layer ạ . Em xin chân thành cảm ơn 


  • 0

#2 Danh Cong

Danh Cong

    biết lệnh linetype

  • Members
  • PipPipPipPip
  • 242 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 06 October 2016 - 08:35 AM

Sao ko dùng lệnh "Filter" lọc ra tất cả Leader, rồi gán nó cho 1 layer nào đó !


  • 0

             ***  Vô lo - Vô nghĩ - Vô sầu hận  ***

***  Chẳng thương - Chẳng giận - Chẳng đau lòng  ***


#3 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 06 October 2016 - 10:04 PM

Vậy lâu bác ạ ! Em tìm ở cad viet có lisp làm được điều đó cho text dim block nhưng chưa có cho leader
  • 0

#4 Danh Cong

Danh Cong

    biết lệnh linetype

  • Members
  • PipPipPipPip
  • 242 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 07 October 2016 - 08:18 AM

Vậy lâu bác ạ ! Em tìm ở cad viet có lisp làm được điều đó cho text dim block nhưng chưa có cho leader

 

Thử viết 1 ít xem thế nào.    :D  :D  :D

Lệnh "FINDL" bác nhé, xem có đúng yêu cầu ko !

 

(defun c:findl ()
  (command "cmdecho" 0)
  (setq sleader (ssget "X" '((0 . "LEADER"))))
  (setq slayer (getstring "Moi Dai Ca nhap ten New Layer : \n"))
  (command "-layer" "n" slayer "c" "1" slayer "" )
  (command ".change" sleader "" "p" "la" slayer "" )
  (princ)
  )
 
Số "1" là màu layer, bác có thể thay đổi cho phù hợp.

  • 0

             ***  Vô lo - Vô nghĩ - Vô sầu hận  ***

***  Chẳng thương - Chẳng giận - Chẳng đau lòng  ***


#5 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5678 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 07 October 2016 - 10:37 AM

Quét chọn, Ctrl +1 -> CHọn leader -> Tick layer = 5s, tại sao lại lâu nhỉ ??
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#6 VUVUZELA

VUVUZELA

    biết lệnh chamfer

  • Members
  • PipPipPipPip
  • 210 Bài viết
Điểm đánh giá: 97 (tàm tạm)

Đã gửi 13 October 2016 - 11:02 AM

Gửi bạn

(defun c:fl (/)
(print "\nChon LEADER de chuyen layer ")
(setq ss (ssget '((-4 . "<AND") (0 . "LEADER") (-4 . "AND>"))) ;_ ssget
) ;_ setq
(setq ent (entget (car (entsel "\nChon 1 Layer de Set Current: "))) ;_ entget
) ;_ setq
(if ent
(progn (setq lay (cdr (assoc 8 ent)))
(command "change" ss "" "p" "LA" lay "")
(print (strcat "\nDa chuyen "
(itoa (sslength ss))
" doi tuong LEADRER ve layer : "
lay
) ;_ strcat
) ;_ print
) ;_ progn
) ;_ if
)
  • 1

Hệ thống Liên Kết, Thiết Kế Tự Động

ttps://www.facebook...etThietKeTuDong


#7 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 02:36 PM

Gửi bạn

(defun c:fl (/)
(print "\nChon LEADER de chuyen layer ")
(setq ss (ssget '((-4 . "<AND") (0 . "LEADER") (-4 . "AND>"))) ;_ ssget
) ;_ setq
(setq ent (entget (car (entsel "\nChon 1 Layer de Set Current: "))) ;_ entget
) ;_ setq
(if ent
(progn (setq lay (cdr (assoc 8 ent)))
(command "change" ss "" "p" "LA" lay "")
(print (strcat "\nDa chuyen "
(itoa (sslength ss))
" doi tuong LEADRER ve layer : "
lay
) ;_ strcat
) ;_ print
) ;_ progn
) ;_ if
)

em cảm ơn ạ !


  • 0

#8 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 02:42 PM

Gửi bạn

(defun c:fl (/)
(print "\nChon LEADER de chuyen layer ")
(setq ss (ssget '((-4 . "<AND") (0 . "LEADER") (-4 . "AND>"))) ;_ ssget
) ;_ setq
(setq ent (entget (car (entsel "\nChon 1 Layer de Set Current: "))) ;_ entget
) ;_ setq
(if ent
(progn (setq lay (cdr (assoc 8 ent)))
(command "change" ss "" "p" "LA" lay "")
(print (strcat "\nDa chuyen "
(itoa (sslength ss))
" doi tuong LEADRER ve layer : "
lay
) ;_ strcat
) ;_ print
) ;_ progn
) ;_ if
)

bác ơi lisp báo lỗi bác ạ 


  • -2

#9 VUVUZELA

VUVUZELA

    biết lệnh chamfer

  • Members
  • PipPipPipPip
  • 210 Bài viết
Điểm đánh giá: 97 (tàm tạm)

Đã gửi 13 October 2016 - 03:38 PM

Lỗi gì vậy bạn?
Bạn copy đoạn mã trên bằng Ctrl+C
vào autocad, gõ lệnh vlide
dán vào = Ctrl+V, save as thành 1 file *.lsp
apload file trên
gõ lệnh FL là xong
(nếu bạn muốn chọn DIMENSION thì thay dòng lệnh trên từ LEADER sang DIMENSION)
  • 0

Hệ thống Liên Kết, Thiết Kế Tự Động

ttps://www.facebook...etThietKeTuDong


#10 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 04:30 PM

Lỗi gì vậy bạn?
Bạn copy đoạn mã trên bằng Ctrl+C
vào autocad, gõ lệnh vlide
dán vào = Ctrl+V, save as thành 1 file *.lsp
apload file trên
gõ lệnh FL là xong
(nếu bạn muốn chọn DIMENSION thì thay dòng lệnh trên từ LEADER sang DIMENSION)

khi em chọn leader để chuyển layer thì báo không có đối tượng được chọn ạ !


  • 0

#11 quocmanh04tt

quocmanh04tt

    biết lệnh imageclip

  • Members
  • PipPipPipPipPipPipPip
  • 665 Bài viết
Điểm đánh giá: 312 (khá)

Đã gửi 13 October 2016 - 04:59 PM

khi em chọn leader để chuyển layer thì báo không có đối tượng được chọn ạ !

 

Chứng tỏ: các đối tượng có ý định chọn không phải là Leader.

Chẩn đoán lâm sàng, hoặc:

- Leader bị explode.

- Bị group , block...

- MULTILEADER

*** Thử dùng lệnh LIST rồi pick vào đối tượng xem CAD nó báo là gì!


  • 0

#12 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 09:40 PM

leader của em vẫn còn nguyên em chưa phá khối , em có hình minh họa nhưng không up được lên cad viet


  • 0

#13 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 10:04 PM

JjoLbC.jpg


  • 0

#14 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 10:08 PM

EShgur.jpg


  • 0

#15 quocmanh04tt

quocmanh04tt

    biết lệnh imageclip

  • Members
  • PipPipPipPipPipPipPip
  • 665 Bài viết
Điểm đánh giá: 312 (khá)

Đã gửi 13 October 2016 - 10:11 PM

Chứng tỏ: các đối tượng có ý định chọn không phải là Leader.

Chẩn đoán lâm sàng, hoặc:

- Leader bị explode.

- Bị group , block...

- MULTILEADER

*** Thử dùng lệnh LIST rồi pick vào đối tượng xem CAD nó báo là gì!

Nó nằm ở trường hợp màu đỏ là Multileader không phải leader, trong lsp trên bạn có thể thay LEADER bởi MULTILEADER

Chẩn đoán không sai nhỉ! hehe...Lần sau nhớ đọc kỹ hướng dẫn trước khi sử dung.


  • 1

#16 ginger

ginger

    biết lệnh move

  • Advance Member
  • PipPipPip
  • 121 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 13 October 2016 - 10:16 PM

khi chọn leader vẫn báo là chưa chọn đối tượng nào các anh ạ !

6jE4dq.jpg


  • 0

#17 Danh Cong

Danh Cong

    biết lệnh linetype

  • Members
  • PipPipPipPip
  • 242 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 14 October 2016 - 08:07 AM

bác ơi lisp báo lỗi bác ạ 

Thay chút xíu đoạn code của bác VUVUZELA:  

 

(setq ss (ssget '((-4 . "<AND") (0 . "LEADER") (-4 . "AND>"))) ;_ ssget

Bằng: 

(setq ss (ssget '((-4 . "<or") (0 . "LEADER") (0 . "MULTILEADER") (-4 . "or>"))) ;_ ssget

 

  ;)  ;) Rồi chạy lại coi kết quả nhé  ;) ;)


  • 0

             ***  Vô lo - Vô nghĩ - Vô sầu hận  ***

***  Chẳng thương - Chẳng giận - Chẳng đau lòng  ***