Chuyển đến nội dung chính

Hướng dẫn cơ bản về Autolisp - phần 1

Đối với những người dùng AtoCAD chuyên nghiệp có lẽ cụm từ Autolisp đã quá quen thuộc. Autolisp đã trở thành 1 phần của AutoCAD, nó giúp người dùng tiết kiệm thời gian và công sức cho công việc mà vẫn mang lại những hiệu quả như mong đợi. Bài viết này sẽ chỉ đề cập đến những vấn đề cơ bản về autolisp, những vấn đề nâng cang và mở rộng sẽ đề cập trong các bài viết khác. Bài viết được tổng hợp từ nhiều nguồn và từ kinh nghiệm của những người đã từng sử dụng autolisp.
Mọi chi yêu cầu, thắc mắc các bạn có thể gửi tại diễn đàn xây dựng


 Autolisp là gì?
- AutoLisp là một ứng dụng của ngôn ngữ Lisp được sử dụng trong môi trường AutoCAD. LISP là ngôn ngữ lập trình thuộc nhóm trí tuệ nhân tạo do MacCarthy soạn thảo cuối những năm 50. Ngôn ngữ này xuất hiện lần đầu tiên vào năm 1960 trong số xuất bản tháng 4 của tạp chí The Communications of ACM. Vào những năm 60 các ngôn ngữ lúc đó đều đã lỗi thời, trừ Fortran và Cobol. LISP đã đem ngôn ngữ lập trình chuyển sang một kỉ nguyên mới và sau đó hàng chục ngôn ngữ lập trình đã ra đời dựa trên LISP như Common LISP, BYSCO LISP, ExpertLISP, Waltz LISP, XLISP...v...v... AutoLISP phát triển bởi Autodesk là sự hiện thực hóa của ngôn ngữ LISP. Từ bản AutoCAD 2.18 trở đi, AutoLISP trở thành ngôn ngữ của chương trình. Với AutoLisp người dùng có thể mở rộng và tuỳ biến các chức năng của AutoCad.
- AutoLisp là một ngôn ngữ lập trình thông dịch, nghĩa là dịch đến dòng nào thực hiện dòng đó và cho kết quả, không có trình biên dịch riêng. Một tập hợp các câu lệnh của AutoLisp được gọi là hàm Lisp và tệp (file) chứa các hàm gọi là tệp (file) Lisp có phần mở rộng là *.Lsp. 

 Lấy Autolisp ở đâu?
Hiện nay Autolisp được sử dụng khá phổ biến và được chia sẻ rất nhiều trên mạng, bạn có thể tìm và download Autolisp về sử dụng.
Các file Autolisp thường sẽ có phần mở rộng là *Lsp

Sử dụng Autolisp như thế nào?
Việt sử dụng Autolisp hết sức đơn giản.
- Bạn vào Tools => Load Application để load file lisp (lệnh tắt ap). Click vào ô contents trong phần Startup suite để AutoCad tự động load lisp này mỗi khi khởi động AutoCad.
- Tại dòng nhắc lệnh command của AutoCad gõ trực tiếp lệnh của lisp vào.

Nếu vẫn chưa rõ, hay xem video hướng dẫn sử dụng Autolisp

Làm sao biết lệnh của Autolisp
Lệnh của từng Autolisp là do người lập trình đặt và không có quy tắc chung. Khi chia sẻ các Autolisp họ sẽ chỉ dẫn cho bạn cách dùng các lệnh của nó.
Tuy nhiên, có nhiều trường hợp họ quên cho bạn biết hoạc bạn đã vô tình quên mất lệnh của nó. Bạn sẽ tìm thấy lệnh của nó hết sức đơn giản như sau:
Bạn mở file Autolisp (*.Lsp) bằng các trình soạn thảo như Notepad++ hoạc Editplus chẳng hạn. Sau khi mở ra, tên lệnh của Autolisp sẽ nằm ngay sau dòng mã defun C:

Ví dụ dưới đây là 1 đoạn code của 1 autolisp, bạn có thể copy đoạn code vào notepad rồi lưu lại dưới tên hinhin.lsp [Lưu ý: Encoding ANSI theo mặc định, không được save as dạng Unicode]

Code:
(
defun C:hinhin(/ W H1 H2 p1 p2 p3 p4 p5 OldOs)
;;;Nhap so lieu
(setq
 W (getreal "\nChieu rong nha W = ")
 H1 (getreal "\nChieu cao nha H1 = ")
 H2 (getreal "\nChieu cao chop nha H2 = ")
 p1 (getpoint "\nDiem chuan: ")
;;;----------------------------------------------------------
;;;Tinh toa do
 p2 (polar p1 0.0 W)
 p3 (polar p2 (/ pi 2) H1)
 p4 (polar p3 pi W)
 p5 (list (+ (car p4) (/ W 2)) (+ (cadr p4) H2))
)
;;;----------------------------------------------------------
;;;Luu bien osmode
(setq OldOs (getvar "osmode"))
;;;----------------------------------------------------------
;;;Set object snap OFF
(setvar "osmode" 0)
;;;----------------------------------------------------------
;;;Goi lenh AutoCAD
(command "line" p1 p2 p3 p4 "c")
(command "line" p3 p5 p4 "")
;;;----------------------------------------------------------
;;;Tai lap osmode
(setvar "osmode" OldOs)
;;;----------------------------------------------------------
(princ)
)
;;;----------------------------------------------------------
;;;SUMMARY: setq, getreal, getpoint, polar, list, car, cadr, caddr,
+ - * /, command, comment, getvar, setvar, princ
Trong đoạn code trên bạn để ý dòng ngay đầu có dạng
( defun C:hinhin(/ W H1 H2 p1 p2 p3 p4 p5 OldOs)
Như vậy, lệnh của autolisp trên chính là hinhin

Cơ bản về Autolisp là như vậy. Chúng tôi sẽ trở lại với các bạn với vào phần 2

Nhận xét

Bài đăng phổ biến từ blog này

Download AutoCAD 2012 Full + Crack, AutoCAD 2012 Full,

Update: More on AutoCAD would be available on Mastering AutoCAD 2012 The next release of AutoCAD is in development & codenamed “Ironman”. If you are interested to be part of the testing team for AutoCAD 2012., register at https://beta.autodesk.com/signup/ AutoCAD 2012 | CAD Professor: The next release of AutoCAD is in development & codenamed Ironman. If you are inte... http://bit.ly/ezBIRD

Lệnh DR (draworder) đảo 2 đối tượng xếp chồng lên nhau trong CAD

Bạn có 2 đối tượng, VD: 1 đường thẳng và 1 hình tròn. Hình tròn của bạn đang đè lên (che khuất) đường thẳng. Bạn muốn đảo ngược lại tức là cho đường thẳng đè lên hình tròn. Bạn dùng Lệnh DR (draworder) để đảo 2 đối tượng xếp chồng lên nhau trong CAD Các bước: DR (draworder): Enter Lựa chọn đường thẳng: Enter Gõ tiếp A (Above objects): Enter Chọn đường tròn: Enter

DOWNLOAD AutoCad 2013 (32&64bit) Full Crack

DOWNLOAD AutoCad 2013 (32&64bit) Full Crack TỔNG QUAN VỀ AUTODESK AUTOCAD Autodesk AutoCad cho phép bạn để giải quyết những vấn đề thiết kế phức tạp nhất. Phương tiện của việc tạo ra các hình dạng tùy ý mô phỏng theo một loạt các cơ quan thẩm định thiết kế bề mặt và thời gian sẽ giảm đáng kể; bản vẽ tham số giúp đỡ để giữ trên tay tất cả các thông tin có ích. ý tưởng dự án có thể được hình tượng trong PDF, cũng như trong thực hiện mô hình, thu được bằng 3D in. Ngay cả khi không có những ý tưởng không được biến thành hiện thực để nhanh chóng. Hơn nữa bạn là một kỹ sư, kiến trúc sư thiết kế quan tâm nhiều đến AutoCAD, công cụ hỗ trợ chính cho công việc của mình, thì hẳn bạn cũng sẽ rất quan tâm đến sự phát triển của AutoCad qua các phiên bản phát triển CAD của hãng Autodesk. Qua mỗi phiên bản phát triển, hãng Autodesk đều mang lại cho người dùng những sự ngạc nhiên , bất ngờ bởi những công cụ hỗ trợ bổ xung, các tính năng mới giúp cho công việc đồ hoạ, thiết kế vốn đã rất khó k...