Phát triển AutoCAD bằng ActiveX & VBA - So sánh visual lisp và Activex / Vba

Hầu hết các khả năng của các giao diện Visual LISP

đều có trong giao diện của ActiveX/VBA. Bảng so

sánh trong chương này dùng để tham khảo cho

những người đã quen lập trình với Visual LISP tìm

kiếm các chức năng tương ứng trong AcitveX/VBA.

pdf 11 trang dienloan 4900
Bạn đang xem tài liệu "Phát triển AutoCAD bằng ActiveX & VBA - So sánh visual lisp và Activex / Vba", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Phát triển AutoCAD bằng ActiveX & VBA - So sánh visual lisp và Activex / Vba

Phát triển AutoCAD bằng ActiveX & VBA - So sánh visual lisp và Activex / Vba
 Phát triển ứng dụng ActiveX và VBA | 315 
SO SÁNH Visual LISP VÀ 
ActiveX/VBA 
A
Trong phụ lục này 
ƒ So sánh Visual LISP và 
ActiveX/VBA 
Hầu hết các khả năng của các giao diện Visual LISP 
đều có trong giao diện của ActiveX/VBA. Bảng so 
sánh trong chương này dùng để tham khảo cho 
những người đã quen lập trình với Visual LISP tìm 
kiếm các chức năng tương ứng trong AcitveX/VBA. 
 316 | Phụ lục A: So sánh Visual LISP và ActiveX/VBA 
1. So sánh Visual LISP và ActiveX/VBA 
Bảng sau đây liệt kê các so sánh tương đương giữa các hàm và các toán tử trong 
AutoLISP với ActiveX/VBA. Các ActiveX Automation tương đương được chỉ ra 
bằng cụm từ “AutoCAD.Application.” 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
+ (cộng) + (toán tử cộng) 
- (trừ) - (toán tử trừ) 
* (nhân) * (toán tử nhân) 
/ (chia) / (toán tử chia) 
= (bằng) = (toán tử so sánh bằng) 
/= (khác) (toán tử so sánh khác) 
< (nhỏ hơn) < (toán tử so sánh nhỏ hơn) 
<= (nhỏ hơn hoặc bằng) <= (toán tử so sánh nhỏ hơn hoặc bằng) 
> (lớn hơn) > (toán tử so sánh lớn hơn) 
>= (lớn hơn hoặc bằng) >= (toán tử so sánh lớn hơn hoặc bằng) 
~ (phủ định bit) Toán tử Not 
1+ (tăng) Dùng dấu + (toán tử cộng) 
1- (giảm) Dùng dấu - (toán tử trừ) 
abs Hàm Abs 
acad_colordlg Không có 
acad_helpdlg Tìm HELP trong mục online Help 
acad_strlsort Tìm SORT trong mục online Help 
action_tile Sử dụng Visual Basic Dialog Editor 
add_list Sử dụng Visual Basic Dialog Editor 
ads Phương thức AutoCAD.Application.ListADS 
alert Hàm MsgBox 
and Toán tử And 
 Phát triển AutoCAD bằng ActiveX và VBA | 317 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
angle Phương thức 
AutoCAD.Application.ActiveDocument.Utility.AngleFromXAxis 
angtof AutoCAD.Application.ActiveDocument.Utility.AngleToReal 
angtos AutoCAD.Application.ActiveDocument.Utility.AngleToString 
append Sử dụng các hàm xử lý mảng của Visual Basic 
apply Không có 
arx AutoCAD.Application.ListARX 
arxload AutoCAD.Application.LoadARX 
arxunload AutoCAD.Application.UnloadARX 
ascii Hàm Asc 
assoc Không có 
atan Hàm Atn 
atof Hàm CDbl 
atoi Hàm CInt 
atom Tìm kiếm IS trong mục online Help 
atoms-family Không có 
autoarxload Không có 
autoload Không có 
Boole Sử dụng phép toán logic của Visual Basic 
boundp Tìm kiếm IS trong mục online Help 
car/cdr Sử dụng các hàm xử lý mảng của Visual Basic 
chr Hàm Chr 
client_data_tile Sử dụng Visual Basic Dialog Editor 
close AutoCAD.Application.Documents.Close 
command AutoCAD.ActiveDocument.SendCommand 
 318 | Phụ lục A: So sánh Visual LISP và ActiveX/VBA 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
cond Câu lệnh Select Case 
cons Sử dụng hàm xử lý mảng hoặc phương thức 
AutoCAD.Application.collection.Add 
cos Hàm Cos 
cvunit Sử dụng các hàm đảo 
defun Từ khoá của Visual Basic: Function và End Function 
dictadd AutoCAD.Application.ActiveDocument.Dictionaries.Add 
dictnext AutoCAD.Application.ActiveDocument.Dictionaries.Item 
dictremove AutoCAD.Application.ActiveDocument.Dictionaries.Dictionary.Delet
e 
dictrename AutoCAD.Application.ActiveDocument.Dictionaries.Dictionary.Rena
me 
dictsearch AutoCAD.Application.ActiveDocument.Dictionaries.Dictionary.GetN
ame and GetObject 
dimx_tile và 
dimy_tile 
Sử dụng Visual Basic Dialog Editor 
distance Sử dụng phương thức tương tác 
AutoCAD.Application.Utility.GetDistance. Tham khảo thêm phần 
“Tính khoảng cách giữa hai điểm”. 
distof Không có 
done_dialog Sử dụng Visual Basic Dialog Editor 
end_image Sử dụng Visual Basic Dialog Editor 
end_list Sử dụng Visual Basic Dialog Editor 
entdel AutoCAD.Application.ActiveDocument.collection_object.Delete 
entget AutoCAD.Application.ActiveDocument.collection_object.property 
entlast AutoCAD.Application.ActiveDocument.Modelspace.Item(count-1) 
entmake AutoCAD.Application.ActiveDocument.Modelspace.Add<tên thực 
thể> 
entmakex AutoCAD.Application.ActiveDocument.Modelspace.Add<entitynam
 Phát triển AutoCAD bằng ActiveX và VBA | 319 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
e> 
entmod Sử dụng bất kỳ thuộc tính đọc-ghi nào của đối tượng 
entnext AutoCAD.Application.ActiveDocument.collection.Item 
entsel AutoCAD.Application.ActiveDocument.SelectionSets đối 
tượng/phương thức/thuộc tính 
entupd AutoCAD.Application.ActiveDocument.Modelspace.object.Update 
eq Không có 
equal Toán tử Eqv 
*error* đối tượng/phương thức/thuộc tính Error 
eval Không có 
exit AutoCAD.Application.Quit 
exp Hàm Exp 
expand Không có 
expt ^ (Phép toán lấy luỹ thừa) 
fill_image Sử dụng Visual Basic Dialog Editor 
findtệp Hàm Dir 
fix Hàm Fix, Int, Cint 
float Hàm CDbl 
foreach Câu lệnh For Each...Next 
gc AutoCAD.Application.ActiveDocument.PurgeAll 
gcd Không có 
get_attr Sử dụng Visual Basic Dialog Editor 
get_tile Sử dụng Visual Basic Dialog Editor 
getangle AutoCAD.Application.ActiveDocument.Utility.GetAngle 
getcfg AutoCAD.Application.Preferences.property 
getcname Không có 
 320 | Phụ lục A: So sánh Visual LISP và ActiveX/VBA 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
getcorner AutoCAD.Application.ActiveDocument.Utility.GetCorner 
getdist AutoCAD.Application.ActiveDocument.Utility.GetDistance 
getenv AutoCAD.Application.Preferences.property 
gettệpd Sử dụng hộp thoại tệp của Visual Basic 
getint AutoCAD.Application.ActiveDocument.Utility.GetInteger 
getkword AutoCAD.Application.ActiveDocument.Utility.GetKeyword 
getorient AutoCAD.Application.ActiveDocument.Utility.GetOrientation 
getpoint AutoCAD.Application.ActiveDocument.Utility.GetPoint 
getreal AutoCAD.Application.ActiveDocument.Utility.GetReal 
getstring AutoCAD.Application.ActiveDocument.Utility.GetString 
getvar AutoCAD.Application.GetVariable 
graphscr AppActivate AutoCAD.Application.Caption 
grclear Hàm Obsolete (Hàm không còn được sử dụng) 
grdraw Không có 
grread Không có 
grtext AutoCAD.Application.ActiveDocument.Utility.Prompt 
grvecs Không có 
handent AutoCAD.Application.ActiveDocument.ModelSpace.object.Handle 
help Tìm HELP trong mục online Help 
if Câu lệnh If Then Else 
initget AutoCAD.Application.ActiveDocument.Utility.InitializeUserInput 
inters AutoCAD.Application.ActiveDocument.Modelspace.object.Intersect
With 
itoa Hàm Str 
lambda Không có 
 Phát triển AutoCAD bằng ActiveX và VBA | 321 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
last Tên mảng(UBound(ten_mang)) 
length Hàm Ubound 
list Câu lệnh ReDim 
listp Hàm IsArray 
load_dialog Sử dụng Visual Basic Dialog Editor 
load AutoLISP không được hỗ trợ qua Automation 
log Hàm Log 
logand Hàm And 
logior Hàm Or 
lsh Hàm Imp 
mapcar Không có 
max Hàm Max 
mem Không có 
member Sử dụng tập hợp 
menucmd Đối tượng AutoCAD.Application.MenuBar 
menugroup Đối tượng AutoCAD.Application.MenuGroup 
min Hàm Min 
minusp Dùng cú pháp < 0 
mode_tile Sử dụng Visual Basic Dialog Editor 
namedobjdict AutoCAD.Application.ActiveDocument.Dictionaries 
nentsel AutoCAD.Application.ActiveDocument.SelectionSets.SelectionSet.S
electAtPoint 
nentselp AutoCAD.Application.ActiveDocument.SelectionSets.SelectionSet.S
electAtPoint 
new_dialog Sử dụng Visual Basic Dialog Editor 
not Sử dụng phép toán logic 
 322 | Phụ lục A: So sánh Visual LISP và ActiveX/VBA 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
nth Sử dụng cú pháp doi_tuong(n) 
null Hàm IsNull 
numberp Hàm TypeName 
open Hàm Open 
or Sử dụng phép toán logic 
osnap Không có (Có thể dùng phương thức SetVariable để điều khiển 
biến hệ thống OSMODE.) 
polar AutoCAD.Application.ActiveDocument.Utility.PolarPoint 
prin1 AutoCAD.Application.ActiveDocument.Utility.Prompt 
princ AutoCAD.Application.ActiveDocument.Utility.Prompt 
print AutoCAD.Application.ActiveDocument.Utility.Prompt 
progn Không có 
prompt AutoCAD.Application.ActiveDocument.Utility.Prompt 
quit AutoCAD.Application.Quit 
quote Không có 
read Không có 
read-char Hàm Input 
read-line Hàm Line Input 
redraw AutoCAD.Application.ActiveDocument.Modelspace.object.Update 
regapp AutoCAD.Application.ActiveDocument.RegisteredApplications.Add 
rem Hàm Mod 
repeat ForEach, While, 
reverse Không có 
rtos AutoCAD.Application.ActiveDocument.Utility.RealToString 
set Hàm Set 
 Phát triển AutoCAD bằng ActiveX và VBA | 323 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
set_tile Sử dụng Visual Basic Dialog Editor 
setcfg AutoCAD.Application.Preferences.property 
setfunhelp Không có 
setq Hàm Set 
setvar AutoCAD.Application.SetVariable method 
sin Hàm sin 
setview AutoCAD.Application.ActiveDocument.Viewports.Viewport.SetView 
slide_image Sử dụng Visual Basic Dialog Editor 
snvalid Không có 
sqrt Hàm Sqr 
ssadd AutoCAD.Application.ActiveDocument.SelectionSets.Add 
ssdel AutoCAD.Application.ActiveDocument.SelectionSets.SelectionSet.D
elete 
ssget AutoCAD.Application.ActiveDocument.SelectionSets.SelectionSet.S
electOnScreen 
ssgetfirst Không có 
sslength AutoCAD.Application.ActiveDocument.SelectionSets.SelectionSet.C
ount 
ssmemb So sánh ID của đối tượng với các đối tượng trong SelectionSet 
ssname AutoCAD.Application.ActiveDocument.SelectionSets.SelectionSet.N
ame 
ssnamex Không có 
sssetfirst AutoCAD.Application.ActiveDocument.PickfirstSelectionSet 
Startapp` Hàm Shell 
start_dialog Sử dụng Visual Basic Dialog Editor 
start_image Sử dụng Visual Basic Dialog Editor 
start_list Sử dụng Visual Basic Dialog Editor 
 324 | Phụ lục A: So sánh Visual LISP và ActiveX/VBA 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
strcase Hàm StrConv 
strcat Phép toán & 
strlen Hàm Len 
subst Không có 
substr Hàm Mid 
tablet Không có 
tblnext AutoCAD.Application.ActiveDocument.collection_object.Item 
tblobjname AutoCAD.Application.ActiveDocument.collection_object.Name 
tblsearch AutoCAD.Application.ActiveDocument.collection_object.Name 
term_dialog Sử dụng Visual Basic Dialog Editor 
terpri Không có 
textbox AutoCAD.Application.ActiveDocument.space.object.GetBoundingBo
x 
textpage Không có 
textscr Không có 
trace Không có 
trans AutoCAD.Application.ActiveDocument.Utility.TranslateCoordinates 
type Hàm TypeName 
unload_dialog Sử dụng Visual Basic Dialog Editor 
untrace Không có 
vector_image Sử dụng Visual Basic Dialog Editor 
ver AutoCAD.Application.Version 
vports Tập đối tượng AutoCAD.Application.ActiveDocument.Viewports 
wcmatch Phép toán Like 
while WhileWend 
 Phát triển AutoCAD bằng ActiveX và VBA | 325 
Các thiết lập cho Paper space, model space và TILEMODE 
Hàm của AutoLISP Tương đương trong ActiveX/Visual Basic 
write-char Hàm Print 
write-line Hàm Print 
xdroom Không có 
xdsize Không có 
zerop Sử dụng cú pháp = 0 

File đính kèm:

  • pdfphat_trien_autocad_bang_activex_vba_so_sanh_visual_lisp_va_a.pdf