Hàm (sslength )

Một phần của tài liệu giáo trình tự học Ngôn ngữ lập trình AutoLISP (Trang 34 - 37)

Chức năng: Trả ra số nguyên là số các đối t-ợng có trong tập các đối t-ợng Cú pháp:

(sslength ss) Giải thích:

ss: Tên tập đối t-ợng có trong bản vẽ

d. Hàm (ssdel...)

Chức năng: Loại bỏ một đối t-ợng ra khỏi tập đối t-ợng Cú pháp:

(ssdel ename ss) Giải thích:

ename: Chuỗi ký tự chứa mã tên đối t-ợng cần loại bỏ. Nếu đối ename này đã có trong tập đối t-ợng, thì nó bị loại bỏ, nếu không có trả nguyên tập đối t-ợng

ss: Tên tập đối t-ợng có trong bản vẽ

e. Hàm (ssname...)

Chức năng: Trả về ename của một đối t-ợng có trong tập các đối t-ợng Cú pháp:

(ssname ss index) Giải thích:

ss: Tên tập đối t-ợng có trong bản vẽ

IV> HÀM DO NGƯỜI LẬP TRèNH ĐỊNH NGHĨA

Các hàm này t-ơng tự nh- hàm (Function) trong ngôn ngữ lập trình C và C++, thủ tục (Procedure) trong Pascal, hoặc hàm con (Subroutine) trong Fortran

Cú pháp chung của hàm do ng-ời dùng định nghĩa: Cú pháp:

(defun tên_hàm (tham_số/ biến_số_riêng) ...; Thân hàm ...; Thân hàm ) Hoặc: (defun tên_hàm () ...; Thân hàm ...; Thân hàm ) Giải thích:

defun: Hàm định nghĩa của AutoLisp

Tên_hàm: Do ng-ời lập trình đặt, tên hàm nên viết bằng chữ hoa và không có khoảng trống Thâm hàm: là các lệnh xử lý của AutoLisp. Một hàm có thể triệu gọi nhiều hàm khác Trong thân hàm bao gồm có các tham số, biến_số_riêng, biến_số_chung

tham số: Là một hoặc nhều biến hình thức, các biến này chung cho cả ch-ơng trình, tham gia vào các biểu thức trong thân hàm và đ-ợc tồn tại khi thoát ra khỏi AutoCad

Khi đ-ợc triệu gọi, các biến hình thức này đ-ợc thay bằng các giá trị Trong hàm có thể không có tham số

biến_số_riêng: Trong hàm có thể có một hay nhiều biến số riêng, đ-ợc phân cách nhau bằng dấu trống

Các biến số này nhận giá trị hoặc định nghĩa và chỉ tồn tại bên trong hàm, khi ra khỏi hàm, giá trị các biến này sẽ đ-ợc xoá khỏi bộ nhớ

biến_số_chung: Khi hàm không có cả tham số lẫn biến riêng, thì các biến số của nó mặc nhiên là biến chung

Ví dụ: a. Ví dụ về tham số: (defun VD1(x y) ...; Thân hàm ...; Thân hàm )

Hàm này có 2 tham số x và y. Hàm đ-ợc triệu gọi nh- sau: (VD1 x y) b. Ví dụ về biến số riêng: (defun VD2(/ x y) ...; Thân hàm ...; Thân hàm )

Hàm này có 2 biến số riêng x và y. Hàm đ-ợc triệu gọi nh- sau: (VD2) c. Ví dụ về biến số chung: (defun VD3() ...; Thân hàm ...; Thân hàm )

Hàm này không có tham số và biến riêng. Hàm đ-ợc triệu gọi nh- sau:

(VD3)

d. Tên hàm là một lệnh của AutoCad: (defun C:VD4()

...; Thân hàm ...; Thân hàm )

Khi ch-ơng trình AutoLisp chứa hàm trên đ-ợc gọi vào AutoCad thì ‘vd4” là một lệnh của AutoCad, có thể gọi trên dòng lện Command: vd4

Một phần của tài liệu giáo trình tự học Ngôn ngữ lập trình AutoLISP (Trang 34 - 37)