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

Chỉnh sửa dòng lệnh trong autoLisp

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

Chào mọi người, 

Chả là em mới dùng autoLisp nên chưa rành. 

Bữa trước có xin 1 Lisp rất bổ ích trên diễn dàn. 

Giờ em muốn đổi dòng lệnh TPL thành TPK để sử dụng cả hai mỗi lần in không cần chọn lại máy in mà không biết đổi thế nào

Giúp em với ah. 

TPK-DNM.zip

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

Chào mọi người, 

Chả là em mới dùng autoLisp nên chưa rành. 

Bữa trước có xin 1 Lisp rất bổ ích trên diễn dàn. 

Giờ em muốn đổi dòng lệnh TPL thành TPK để sử dụng cả hai mỗi lần in không cần chọn lại máy in mà không biết đổi thế nào

Giúp em với ah. 

TPK-DNM.zip

+ Không hiểu câu "Sử dụng cả hai mỗi lần in không cần chọn lại máy in" là như thế nào.

Tuy nhiên việc đổi dòng lệnh là không thể. Do file lisp là file .VLX đã bị mã hóa do người lập, chỉ người nào viết mới có code ! ---> Cam chịu thôi !

  • 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ữa mình xin của bạn nguyentuyen86 trên diễn đàn này ạ. 

ví dụ như trong 1 file cad có nhiều bản vẽ, mình dùng TPL để in ở máy in A, và cũng đoạn autoLIsp giống vậy nhưng dòng command khác TPL, ví dụ như TPK để in ở máy in B.

Mục đích là cũng đoạn autoLIsp giống nhau nhưng dòng command khác để in ở máy in khác nhau. Nếu in ở TPL muốn đổi máy in thì phải lấy lại dg dẫn máy in

 

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
Vào lúc 18/4/2018 tại 11:18, Danh Cong đã nói:

+ Không hiểu câu "Sử dụng cả hai mỗi lần in không cần chọn lại máy in" là như thế nào.

Tuy nhiên việc đổi dòng lệnh là không thể. Do file lisp là file .VLX đã bị mã hóa do người lập, chỉ người nào viết mới có code ! ---> Cam chịu thôi !

Theo mình thì có thể đổi tên gọi lệnh được đó, hình như cũng có nhiều người hỏi về việc đổi tên lệnh trong các file .VLX, .FAS ... 

mẹo nhỏ mình đã làm như sau : load các files .vlx, .fas như lệnh default của Cad (khi cad khởi động thì nó sẽ tự động load các files này luôn --> làm như thế nào thì tự tìm hiểu thêm nhé --> gợi ý : file acad*doc.lsp)

sau đó vào file acad.agp đặt tên lệnh mới là tên lệnh file .vlx, .fax ( tenmoi,   *tên .vlx)

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
Vào lúc 28/4/2018 tại 08:41, loopback127xyz đã nói:

Theo mình thì có thể đổi tên gọi lệnh được đó, hình như cũng có nhiều người hỏi về việc đổi tên lệnh trong các file .VLX, .FAS ... 

mẹo nhỏ mình đã làm như sau : load các files .vlx, .fas như lệnh default của Cad (khi cad khởi động thì nó sẽ tự động load các files này luôn --> làm như thế nào thì tự tìm hiểu thêm nhé --> gợi ý : file acad*doc.lsp)

sau đó vào file acad.agp đặt tên lệnh mới là tên lệnh file .vlx, .fax ( tenmoi,   *tên .vlx)

+ Sửa tên lệnh ko có nghĩa là tạo ra 1 lisp hoàn toàn mới, ko đúng yêu cầu của chủ thớt đâu. "Đường dẫn máy in" ví như rượu trong bình,  trút rượu từ bình này sang bình kia thì rượu vẫn là rượu, ko bị thay đổi. :)))

Lập trình nó oái oăm là thế đấy 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

Chào mọi người. Mọi người cho em hỏi cái lỗi như vậy  ( error: AutoCAD variable setting rejected: "DIMSCALE" "10"), thì khắc phục như thế nào ạ.

Em share doạn code bên dưới ạ.

Mong mọi người giúp đỡ.

Thân mến!

................................................................................................

(defun c:LSG (/ ss tl txt );;;CREAT DIM STYLE
  (command "-style" "ROMANS" "romans.shx" "0" "1.0" "0" "No" "No" "No")
  (setq ss  (ssget "x" '((0 . "TEXT") (8 . "Other object type") (62 . 3) (1 . "1:*")))
      txt (cdr (assoc 1 (entget (ssname ss 0))))
    tl  (substr txt 3 (- (strlen txt) 2))
      )
  (setvar "DIMSCALE" tl)
  (if (not (tblsearch "dimstyle" "TEKLA"))
   (command ".Dimstyle" "s" "TEKLA")
 (command ".Dimstyle" "s" "TEKLA" "y")
  )
  (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

Sửa dòng này:

(setvar "DIMSCALE" tl)

Thành dòng này:

(setvar "DIMSCALE" (atof tl))

Lý do bạn tự tìm hiểu. Một câu hỏi không nên quăng bom trên 2 topic như thế!

 

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  

×