Đến nội dung


Hình ảnh
- - - - -

XIN LISP


  • Please log in to reply
2 replies to this topic

#1 anhhungxdddcnnb

anhhungxdddcnnb

    biết vẽ point

  • Members
  • PipPip
  • 95 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 08 September 2013 - 10:58 AM

Mình đang cần 1 lisp autocad khi chỉnh linewieght.

Nội dung của lisp như sau: Mình muốn khi đánh lệnh của lisp chỉ vào 1 nét vẽ (ví dụ nét tường màu 130) thì mình chỉ cần chỉ vào 1 nét vẽ của màu 130 sau đó chỉnh cho nó linewieght là 1 giá trị nào đó cho toàn bộ màu 130

Như 1 số lisp mình tìm hiểu như kk,ha,chlw thì lisp đó yêu cầu phải nhập đúng tên layer .C ái mình cần ở đây chỉ là 1 cú click rồi đặt nét.

Bạn nào có lisp tương tự hoặc đúng như thế cho mình xin với

Xin chân thành cám ơn


  • 0

#2 TaiNguyen79

TaiNguyen79

    biết vẽ ellipse

  • Members
  • PipPip
  • 51 Bài viết
Điểm đánh giá: 24 (tàm tạm)

Đã gửi 09 September 2013 - 12:38 AM

Mình đang cần 1 lisp autocad khi chỉnh linewieght.
Nội dung của lisp như sau: Mình muốn khi đánh lệnh của lisp chỉ vào 1 nét vẽ (ví dụ nét tường màu 130) thì mình chỉ cần chỉ vào 1 nét vẽ của màu 130 sau đó chỉnh cho nó linewieght là 1 giá trị nào đó cho toàn bộ màu 130
Như 1 số lisp mình tìm hiểu như kk,ha,chlw thì lisp đó yêu cầu phải nhập đúng tên layer .C ái mình cần ở đây chỉ là 1 cú click rồi đặt nét.
Bạn nào có lisp tương tự hoặc đúng như thế cho mình xin với
Xin chân thành cám ơn

Của bạn đây :
Chỉ cần chọn đối tượng mẫu là lw cả lớp đó sẽ giống như vậy

(defun c:lw_all (/ lw eg lay)
(if (= (getvar "lwunits") 0) (setvar "lwunits" 1))
(setq lw (cdr (assoc 370 (setq eg (entget (car (entsel "\nselect obj : ")))))) lay (cdr (assoc 8 eg)))
(cond ((null lw) (setq lw "bylayer")) ((= lw -2) (setq lw "Byblock")) ((= lw -3) (setq lw "default")) (T (setq lw (* 0.01 lw))))
(command ".change" (ssget "X" (list (cons 8 lay))) "" "P" "LW" lw ""))

  • 0

#3 TaiNguyen79

TaiNguyen79

    biết vẽ ellipse

  • Members
  • PipPip
  • 51 Bài viết
Điểm đánh giá: 24 (tàm tạm)

Đã gửi 09 September 2013 - 01:10 AM

Còn nếu muốn change theo màu thì dùng như vầy :

(defun c:lw_all (/ lw eg cor)
(if (= (getvar "lwunits") 0) (setvar "lwunits" 1))
(setq lw (cdr (assoc 370 (setq eg (entget (car (entsel "\nselect obj : ")))))) cor (cdr (assoc 62 eg)))
(if (null cor) (setq cor 256))
(cond ((null lw) (setq lw "bylayer")) ((= lw -2) (setq lw "Byblock")) ((= lw -3) (setq lw "default")) (T (setq lw (* 0.01 lw))))
(command ".change" (ssget "X" (list (cons 62 cor))) "" "P" "LW" lw ""))

  • 0