12 Lisp AutoCAD Nhỏ Mà Có Võ Cho Kiến Trúc Sư: Tự Động Hóa Việc Lặp Lại

12 Lisp AutoCAD nhỏ mà có võ trên nền bản vẽ kiến trúc và mã tự động hóa
1 lượt xem

Một Lisp tốt không cần dài hàng nghìn dòng. Đôi khi chỉ một tiện ích giải quyết đúng thao tác bạn lặp lại 50 lần mỗi ngày đã đủ tiết kiệm hàng giờ trong một dự án.

Thay vì đưa ra một thư mục tải xuống khó kiểm soát, bài viết này chọn 12 tác vụ AutoLISP đáng tự động hóa nhất trong quy trình kiến trúc. Bạn sẽ biết mỗi Lisp nên giải quyết vấn đề gì, dùng lúc nào, rủi ro ở đâu và cách đặt lệnh sao cho không đè lên lệnh mặc định của AutoCAD.

AutoLISP là gì và khi nào nên dùng?

AutoLISP là ngôn ngữ tự động hóa tích hợp trong AutoCAD. Một file .lsp có thể đọc lựa chọn hiện tại, gọi lệnh AutoCAD, thay đổi thuộc tính đối tượng hoặc xử lý nhiều phần tử theo một quy tắc. Nó đặc biệt hiệu quả với công việc có ba đặc điểm:

  • Lặp lại nhiều lần: đổi layer, xoay block, khóa viewport hoặc cộng số liệu.
  • Có quy tắc rõ: mọi DIM phải về layer A-DIM, mọi HATCH phải về A-HATCH.
  • Dễ kiểm tra kết quả: người dùng có thể nhìn, đo hoặc Undo ngay sau khi chạy.

Cách cài file LSP an toàn trước khi đưa vào Startup Suite

File LSP là mã có thể thực thi trong AutoCAD. Vì vậy, đừng tải về rồi cho tự chạy cùng AutoCAD ngay lập tức. Quy trình an toàn nên gồm sáu bước:

  1. Kiểm tra nguồn: ưu tiên tác giả có thông tin rõ ràng, hướng dẫn sử dụng và lịch sử cập nhật.
  2. Mở file bằng trình soạn thảo văn bản: xem tên lệnh sau defun c:; cảnh giác với đoạn gọi shell, tải URL, sửa Registry hoặc xóa file không liên quan.
  3. Lưu vào thư mục riêng: ví dụ D:\CAD-Tools\Lisp; chỉ người quản trị thư viện nên có quyền sửa.
  4. Thêm thư mục vào TRUSTEDPATHS: giữ SECURELOAD ở mức 1 hoặc 2. Không tắt bảo vệ chỉ để chạy một file không rõ nguồn.
  5. Dùng APPLOAD để thử một lần: chạy trên bản sao DWG, kiểm tra Layer, Block, Undo và kết quả số liệu.
  6. Chỉ thêm vào Startup Suite sau khi đã thử: không nên tự động load mọi Lisp bạn từng tải.

Nhóm 1: Đo lường và thống kê

01

Cộng diện tích Polyline

Chọn nhiều đường bao kín, cộng tổng diện tích và đặt kết quả thành MText. Hữu ích khi thống kê diện tích sàn, lát gạch hoặc cảnh quan.

Lệnh gợi ý
ADSA
Cần kiểm tra
Polyline phải kín; thống nhất mm² → m².
02

Cộng chiều dài tuyến

Tổng hợp chiều dài polyline cho len chân tường, đường ống, bó vỉa hoặc dây LED mà không phải mở Properties từng đối tượng.

Lệnh gợi ý
ADSL
Cần kiểm tra
Đơn vị bản vẽ và hệ số đổi mm → m.
03

Đếm Block theo tên

Thống kê nhanh số lượng cửa, thiết bị hoặc ký hiệu cùng tên block; có thể xuất kết quả ra bảng để kiểm tra trước khi bóc khối lượng.

Lệnh gợi ý
ADBC
Cần kiểm tra
Dynamic Block có thể dùng Effective Name khác tên hiển thị.

Nhóm 2: Block và Layer

04

Tạo Block nhanh với basepoint ở tâm

Gom lựa chọn thành block, sinh tên không trùng và đặt basepoint theo tâm bounding box. Phù hợp khi chuẩn hóa thư viện đồ rời.

Lệnh gợi ý
ADB
Cần kiểm tra
Tâm hình học không phải lúc nào cũng là điểm chèn hợp lý.
05

Đưa hình học trong Block về Layer 0

Chuẩn hóa linework bên trong block để block nhận màu và linetype theo layer đặt nó. Nên giới hạn vào các block được chọn.

Lệnh gợi ý
ADL0
Cần kiểm tra
Không phá các sub-layer có chủ ý trong block phức tạp.
06

Chuẩn hóa Layer theo loại đối tượng

Đưa HATCH, TEXT/MTEXT và DIMENSION về các layer tiêu chuẩn của văn phòng trong một lượt, thay vì lọc thủ công nhiều lần.

Lệnh gợi ý
ADANN
Cần kiểm tra
Tạo layer thiếu trước khi đổi và bỏ qua layer bị khóa.

Nhóm 3: Chữ, kích thước và trình bày ký hiệu

07

Lấy Dimstyle từ một kích thước mẫu

Chọn một DIM đúng, đặt Dimstyle tương ứng thành current và chuyển sang layer của DIM mẫu. Rất hữu ích khi nhận file từ đối tác.

Lệnh gợi ý
ADDS
Cần kiểm tra
Không tự sửa override sai bên trong từng DIM.
08

Căn hàng loạt điểm neo Text

Đổi justification của nhiều TEXT/MTEXT sang Left Center, Middle Center hoặc Right Center mà vẫn giữ nguyên vị trí nhìn thấy.

Lệnh gợi ý
ADTXT
Cần kiểm tra
Phân biệt insertion point và alignment point.
09

Xoay hoặc reset góc Block/Text

Xoay lựa chọn theo 45°/90° quanh tâm, hoặc đưa rotation về 0. Tác vụ này đặc biệt nhanh với ký hiệu và đồ nội thất.

Lệnh gợi ý
ADR
Cần kiểm tra
Block có scale âm hoặc annotative cần thử riêng.

Nhóm 4: Cảnh quan, Viewport và kiểm soát file

10

Random Rotate/Scale cho cây và người

Tạo biến thiên nhẹ cho block cảnh quan để tránh cảm giác lặp. Nên cho người dùng nhập khoảng góc và scale thay vì hard-code.

Lệnh gợi ý
ADLAND
Cần kiểm tra
Giữ scale trong khoảng hợp lý, ví dụ 0,9–1,1.
11

Khóa hoặc mở khóa toàn bộ Viewport

Duyệt các Layout và đổi trạng thái Display Locked của viewport. Hữu ích trước khi in để tránh lỡ tay thay đổi tỷ lệ.

Lệnh gợi ý
ADVP
Cần kiểm tra
Bỏ qua viewport đặc biệt và báo số lượng đã xử lý.
12

Audit nhanh trước khi bàn giao

Kiểm tra layer lạ, block trùng tên, text rỗng, polyline hở hoặc đối tượng ngoài vùng làm việc rồi xuất báo cáo—không tự xóa khi chưa xác nhận.

Lệnh gợi ý
ADQC
Cần kiểm tra
Ưu tiên “report first”, cho phép Undo từng thay đổi.

Nên tự động hóa từng bước hay viết một “siêu Lisp”?

Với văn phòng nhỏ, nhiều Lisp đơn nhiệm thường an toàn hơn một công cụ làm mọi thứ. Khi lỗi xảy ra, bạn biết chính xác lệnh nào đã thay đổi file. Lisp nhỏ cũng dễ kiểm thử trên nhiều phiên bản AutoCAD và dễ thay alias nếu xung đột.

Tiêu chíLisp đơn nhiệm“Siêu Lisp” nhiều chức năng
Học cách dùngNhanh, một lệnh–một kết quảCần menu hoặc tài liệu riêng
Kiểm tra lỗiDễ cô lậpKhó biết bước nào gây lỗi
Triển khai nhómChọn đúng công cụ cần thiếtĐồng bộ thuận tiện nhưng rủi ro rộng hơn
Bảo trìNhiều file nhỏMột codebase lớn cần quản lý phiên bản

Checklist 8 điểm trước khi dùng một Lisp tải từ Internet

  • Có tên tác giả, nguồn tải và mô tả chức năng rõ ràng.
  • Alias không đè lệnh mặc định hoặc lệnh nội bộ của công ty.
  • Không tự ý tắt SECURELOAD hay thêm thư mục tin cậy quá rộng.
  • Không gọi chương trình ngoài, URL, PowerShell hoặc shell nếu chức năng không cần.
  • Có xử lý khi người dùng nhấn Esc hoặc không chọn đối tượng.
  • Có lưu và khôi phục biến hệ thống đã thay đổi.
  • Có thể Undo kết quả theo một nhóm thao tác hợp lý.
  • Được thử trên bản sao DWG và đúng phiên bản AutoCAD của nhóm.

Quy trình triển khai Lisp cho một nhóm thiết kế

  1. Chọn 3–5 tác vụ gây tốn thời gian nhất thay vì cài hàng chục file cùng lúc.
  2. Đặt prefix alias thống nhất, ví dụ AD + tên chức năng.
  3. Lưu source trong Git hoặc kho nội bộ; mỗi thay đổi có phiên bản và người duyệt.
  4. Đặt thư mục triển khai ở Trusted Location chỉ đọc đối với người dùng thường.
  5. Ghi một trang hướng dẫn gồm: mục đích, alias, đầu vào, đầu ra, Undo và giới hạn.
  6. Đánh giá lại sau một dự án: Lisp nào thực sự tiết kiệm thời gian thì giữ, phần còn lại loại bỏ.

Câu hỏi thường gặp

AutoCAD LT có chạy AutoLISP không?

Các phiên bản AutoCAD LT hiện đại trên Windows có hỗ trợ AutoLISP, nhưng một số API và Express Tools có giới hạn theo nền tảng hoặc sản phẩm. Hãy kiểm tra tài liệu Autodesk và thử chính file của bạn trước khi triển khai cả nhóm.

Tại sao APPLOAD báo file không đáng tin cậy?

AutoCAD đang áp dụng Secure Mode. Hãy di chuyển file vào một thư mục chuyên dụng, kiểm tra source rồi thêm đúng thư mục đó vào TRUSTEDPATHS. Không nên đặt cả thư mục Downloads hoặc ổ đĩa rộng vào danh sách tin cậy.

Có nên cho mọi Lisp chạy khi AutoCAD khởi động?

Không. Startup Suite chỉ nên chứa công cụ đã kiểm thử và dùng thường xuyên. Với lệnh ít dùng, cơ chế autoload giúp chỉ nạp file khi người dùng gọi lệnh, giảm thời gian khởi động và phạm vi lỗi.


Kết luận: giá trị của AutoLISP không nằm ở số lượng file bạn sưu tầm, mà ở việc mỗi công cụ giải quyết đúng một nút thắt trong quy trình. Bắt đầu nhỏ, kiểm thử trên bản sao, giữ bảo mật mặc định và quản lý source như một sản phẩm kỹ thuật.

Nếu bạn đang tối ưu quy trình từ AutoCAD sang SketchUp, hãy xem thêm hệ sinh thái plugin AD Studio và bài 40 lệnh tắt AutoCAD kiến trúc sư nên nhớ.

Nguồn tham khảo

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *