GIỚI THIỆU LISP COPY NHIỀU LAYOUT – CMLAYOUT 🚀
CMLAYOUT là một Lisp hữu ích giúp sao chép và nhân bản nhiều layout trong AutoCAD một cách nhanh chóng. Thay vì phải tạo từng layout thủ công, Lisp này cho phép người dùng chọn số lượng layout cần tạo và tự động đặt tên theo thứ tự tăng dần.
TÍNH NĂNG CHÍNH:
✅ Chọn layout gốc cần sao chép.
✅ Nhập số lượng layout muốn nhân bản.
✅ Tự động tạo các layout mới với tên dựa trên layout gốc, kèm theo số thứ tự tăng dần (ví dụ: Layout1 → Layout1_1, Layout1_2, …).
✅ Tiết kiệm thời gian khi làm việc với nhiều bản vẽ có cấu trúc tương tự.
CÁCH SỬ DỤNG:
1️⃣ Gọi Lisp bằng lệnh CMLAYOUT.
2️⃣ Chọn tên layout gốc cần sao chép.
3️⃣ Nhập số lượng layout muốn tạo.
4️⃣ AutoCAD sẽ tự động nhân bản và đặt tên cho các layout mới.
Lisp này đặc biệt hữu ích cho kỹ sư và kiến trúc sư khi làm việc với bản vẽ có nhiều layout giống nhau. Với CMLAYOUT, bạn không cần lặp lại thao tác thủ công, giúp nâng cao hiệu suất làm việc đáng kể!
(defun c:CMLayout ( / *error* oCMDECHO ctab name namer namei nname n i x ) (defun *error* (errmsg) (if (not (wcmatch errmsg "Function cancelled,quit / exit abort,console break,end")) (princ (strcat "\nError: " errmsg))) (setvar 'CMDECHO oCMDECHO) (princ)) (setq oCMDECHO (getvar 'CMDECHO)) (setvar 'CMDECHO 0) ; -------------------------------------------------------------------------------------- (setq ctab (getvar "ctab")) (setq name (getstring (strcat "\nLayout to duplicate <" ctab ">: "))) (if (= name "") (setq name ctab)) (setq n (1+ (strlen name)) namei "") (while (and (> n 1) (wcmatch (setq x (substr name (setq n (1- n)) 1)) "#")) (setq namei (strcat x namei))) (setq namer (substr name 1 (- (strlen name) (strlen namei))) namei (atoi namei)) (initget 6) (setq n (getint "\nHow many copies: ") i (+ 1 namei n)) (repeat n (setq nname (strcat namer (itoa (setq i (1- i))))) (if (member nname (layoutlist)) (princ (strcat "\nLayout '" nname " ' already exists.")) (command "_.LAYOUT" "_Copy" name (strcat namer "a") "_.LAYOUT" "_Rename" (strcat namer "a") nname))) (setvar 'CMDECHO oCMDECHO) (princ "Author: ВeekeeCZ") (princ "Source: https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/lisp-script-in-copying-multiple-layout/td-p/7257265") (princ "www.lisp.vn") (princ) )
Không có nhận xét nào:
Đăng nhận xét