運(yùn)行autocad,創(chuàng)建一個(gè)新文件,Alt+F11(或者在菜單欄點(diǎn)“工具”→“宏”→“Visual Basic 編輯器”),在新出現(xiàn)的窗口菜單欄點(diǎn)“插入”→“模塊”,輸入下面的代碼:

Sub 我的第一個(gè)程序()
    Dim 直線1 As AcadLine
    Dim 起點(diǎn)(2) As Double
    Dim 端點(diǎn)(2) As Double
   
    起點(diǎn)(0) = 10
    起點(diǎn)(1) = 20
    端點(diǎn)(0) = 80
    端點(diǎn)(1) = 100
   
    Set 直線1 = ThisDrawing.ModelSpace.AddLine(起點(diǎn), 端點(diǎn))
End Sub

檢查一下,確信沒有問題后按F5
回到autocad窗口,看見了嗎?一條直線,起點(diǎn)坐標(biāo)(10,20),端點(diǎn)坐標(biāo)(80,100)

這個(gè)程序的第一行里,“SUB”和“()”是必須有的(人家微軟就是這么規(guī)定的,我也沒辦法),“我的第一個(gè)程序”是這個(gè)程序的名字(如果你不喜歡也可以改個(gè)別的名字,我無所謂)。
第二行里,“Dim”是定義一個(gè)變量,“直線1”是要畫的直線的名字(隨便改,中英文都行),后面的英文必須有,意思是說:這是一條autocad直線。
第三行里,“起點(diǎn)(2)”是一個(gè)數(shù)組(因?yàn)槲乙盟o直線賦予起點(diǎn),所以取了個(gè)直觀的名字,又因?yàn)辄c(diǎn)的坐標(biāo)是三維的,所以必須用能容納三個(gè)數(shù)據(jù)的數(shù)組),后面的英文意思是“這個(gè)數(shù)據(jù)是雙精度類型”。
第四行和第三行差不多,是用來給直線賦予端點(diǎn)的。
第五行和第六行是分別賦值給起點(diǎn)的x和y坐標(biāo)(因?yàn)槠瘘c(diǎn)的z坐標(biāo)是0,而定義這個(gè)數(shù)組的時(shí)候,默認(rèn)數(shù)據(jù)就是(0,0,0),所以就不用管z坐標(biāo)了)。
第七行、第八行賦值給端點(diǎn)x和y坐標(biāo)。
第九行畫直線,在“當(dāng)前文件”的“模型空間”“畫直線(按起點(diǎn)和端點(diǎn))”。
第十行,完事了。

有的網(wǎng)友一看見英文,頭就會(huì)變大。別怕,如果你是用“復(fù)制/粘貼”把這段代碼拷貝到VB編輯器里,就不會(huì)知道autocad有多么友善。試試用鍵盤把這段代碼輸入進(jìn)去,你會(huì)發(fā)現(xiàn),每到關(guān)鍵時(shí)刻,VBA就會(huì)提醒你下面該做什么了。
別聽旁人瞎說autocad這不行、那不行,那是因?yàn)閍utocad的兩個(gè)萬能命令(一個(gè)是VBA,一個(gè)是lisp)你還沒學(xué)會(huì)。這兩個(gè)命令你只要學(xué)會(huì)一個(gè)(不用太精通,差不多就行),就沒人敢說你不是高手。