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

Lisp đổi kiểu nét của Layer sang Hidden2 và Line type scale =0.25

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

Bác Pro viết júp em cái Lisp đổi kiểu nét của Layer CADViet ( Layer này đã có sẵn) sang Hidden2 và có Line type scale = 0.25 với !!! Em xin chân thành cảm ơn các 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
Bác Pro viết júp em cái Lisp đổi kiểu nét của Layer CADViet ( Layer này đã có sẵn) sang Hidden2 và có Line type scale = 0.25 với !!! Em xin chân thành cảm ơn các bác !

Đây bạn :

(Defun c:chuyen ()

(Command "layer" "m" "CADVIET" "L" "Hidden2" "" "LW" "0.25" "" "")

(Princ)

)

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
Bác Pro viết júp em cái Lisp đổi kiểu nét của Layer CADViet ( Layer này đã có sẵn) sang Hidden2 và có Line type scale = 0.25 với !!! Em xin chân thành cảm ơn các bác !

 

Chào bạn.

Line type scale hình như không đổi trực tiếp được nên mình gửi bạn lisp chuyển bằng cách chọn đối tượng. Mình mới vào nghề thôi, nhờ bác Tue NV chỉ giáo thêm về cái lisp mình mới viết nhe.

 

(defun c:chuyen ( )

(prompt "\nChon doi tuong: ")

(setq dt (ssget))

(command "chprop" dt "" "la" "cadviet" "s" "0.25" "lt" "hidden2" "")

(princ)

)

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 bạn.

Line type scale hình như không đổi trực tiếp được nên mình gửi bạn lisp chuyển bằng cách chọn đối tượng. Mình mới vào nghề thôi, nhờ bác Tue NV chỉ giáo thêm về cái lisp mình mới viết nhe.

 

(defun c:chuyen ( )

(prompt "\nChon doi tuong: ")

(setq dt (ssget))

(command "chprop" dt "" "la" "cadviet" "s" "0.25" "lt" "hidden2" "")

(princ)

)

Lisp của bác Tuệ chỉ đổi được kiểu nét sang Hidden2 thôi, chưa đổi được line type scale thành 0.25. Bác sửa lại giúp e vớ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
Lisp của bác Tuệ chỉ đổi được kiểu nét sang Hidden2 thôi, chưa đổi được line type scale thành 0.25. Bác sửa lại giúp e với !
Line type scale hình như không đổi trực tiếp được nên mình gửi bạn lisp chuyển bằng cách chọn đối tượng.

 

Tổng hợp 2 LISP của Tue_NV và tuan_thietkedien

(defun c:chuyen (/ dt )  
 (if (tblsearch "layer" "CADVIET")
   (progn
     (setq curLay (getvar "clayer"))
     (Command "layer" "m" "CADVIET" "L" "Hidden2" "" "")
     ;(prompt "\nChon doi tuong: ")
     (if (setq dt (ssget "X" (list (cons 8 "CADVIET"))))
(command "chprop" dt "" "s" "0.25" "")
(alert "Khong co doi tuong tren layer CADVIET !")
)
     (setvar "clayer" curLay)
     )
   (alert "Chua co Layer : CADVIET !")
   )
 (princ)
)

  • 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ổng hợp 2 LISP của Tue_NV và tuan_thietkedien

(defun c:chuyen (/ dt )  
 (if (tblsearch "layer" "CADVIET")
   (progn
     (setq curLay (getvar "clayer"))
     (Command "layer" "m" "CADVIET" "L" "Hidden2" "" "")
     ;(prompt "\nChon doi tuong: ")
     (if (setq dt (ssget "X" (list (cons 8 "CADVIET"))))
(command "chprop" dt "" "s" "0.25" "")
(alert "Khong co doi tuong tren layer CADVIET !")
)
     (setvar "clayer" curLay)
     )
   (alert "Chua co Layer : CADVIET !")
   )
 (princ)
)

Ok ! Cảm ơn bác Gia_Bach đã giải bài toán giúp em !

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 giờ trước, hung1608 đã nói:

Bạn nào sửa giúp mình lisp này thành : Chọn đối tượng bất kỳ thì đối tượng đó sẽ có linestype Scale = 0

Bạn thử cái này xem

(defun c:tt () (ssget) (setq tle 0) (command "change" "p" "" "p" "ltscale" tle ""))

 

  • 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

Bạn ơi. Lisp của bạn cần chọn tỷ lệ Linestyle Scale. Mình muôn khi dùng lisp thì đối tượng nào mình chọn thì Linestyle Scale = 0 luôn

Bạn giúp mình sửa lại lisp 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
20 phút trước, hung1608 đã nói:

Bạn ơi. Lisp của bạn cần chọn tỷ lệ Linestyle Scale. Mình muôn khi dùng lisp thì đối tượng nào mình chọn thì Linestyle Scale = 0 luôn

Bạn giúp mình sửa lại lisp nhé

Sr bạn, do bạn nói bằng 0 nên mình để số 0 luôn, sửa lại thành 1 là được 

(defun c:tt () (ssget) (setq tle 1) (command "change" "p" "" "p" "ltscale" tle ""))

 

  • 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

Sory lại làm phiên bạn 1 chút. Mình test thì nó chỉ bằng 1 được thôi

ở Layout khi Linestylen Scale = 1 thì nhiều lúc nó vẫn hiện nét đứt bạn ah. Bạn giúp mình nó =0 nhé

image.thumb.png.d52d80fde40de4e68598cbbdad6c33d2.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
3 phút trước, quocmanh04tt đã nói:

Hehehe... Người ta muốn 0, cho 0 không được thì cho 1. Thoáng quá!...

Hề hề, em mới học nên còn nhiều thiếu sót bác ạ. :D 

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

Sory lại làm phiên bạn 1 chút. Mình test thì nó chỉ bằng 1 được thôi

ở Layout khi Linestylen Scale = 1 thì nhiều lúc nó vẫn hiện nét đứt bạn ah. Bạn giúp mình nó =0 nhé

image.thumb.png.d52d80fde40de4e68598cbbdad6c33d2.png

(defun c:tt ()
  (vl-load-com)
  (setq ss (acet-ss-to-list (ssget)))
(foreach ent ss
  (vla-put-linetypescale (vlax-ename->vla-object ent) 0)))

Bạn thử xem đã đúng chưa

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

(defun c:tt ()
  (vl-load-com)
  (setq ss (acet-ss-to-list (ssget)))
(foreach ent ss
  (vla-put-linetypescale (vlax-ename->vla-object ent) 0)))

Bạn thử xem đã đúng chưa

+ Viết lisp nên khử các biến trong lisp cho người dùng. Vì khi sử dụng nó có thể gây lỗi cho nhiều lisp khá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
13 phút trước, Danh Cong đã nói:

+ Viết lisp nên khử các biến trong lisp cho người dùng. Vì khi sử dụng nó có thể gây lỗi cho nhiều lisp khác !

Cảm ơn bác đã nhắc nhở, e sẽ áp dụng trong những lần sau

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

×