2026年3月20日 星期五

[AutoTower] 自訂變數

    有別於 AutoCAD 變數,自訂變數對於自己寫的程式來說特別重要,尤其是要寫一整套的外掛(3rd Party Program)。

    AutoCAD 是一套通用型繪圖系統,它並沒有為使用者特別制定繪圖時的單位與比例,有的只是 1 單位,而這個「單位」可以是 1inch、1mm 或 1cm...。

    想要寫一整套的外掛程式,就得對圖紙單位和比例加以設定與管理,尤其是在一個模型空間中同時擁有不同繪圖單位與比例尺的圖面。每一張圖紙都有它自己的繪圖單位與比例尺,但模型空間只有一個,此時就需要自訂變數,好讓程式們在運作時畫出適當比例的圖形。

    在 AutoCAD 裡的自訂變數與一般程式 (例如 C 或 Python) 的變數大同小異,如果你會寫程式,那麼一些觀念都可以應用到這裡。


AutoCAD 變數類型

整數(Integers)
實數(reals)
字符串(Strings)
列表(lists)
選擇集(Selection sets)
實體名(entity names)
vla對象(VLA-objects)
文件描述符(file descriptors)
符號和變量(Symbols and Variables)


自訂變數類型

項目自然繼承自 AutoCAD,但似乎可以精簡一些。



預定義的常數

AutoCAD 常數 0 或 PI 可以用來表示 0度和 180度,但在程式裡使用到其他角度的機會也很多,例如 90 度、270度...之類的。你應該不會寫上數萬次諸如下列的語句吧?

(setq 90deg (* PI 0.5))

(setq 270deg (* PI 1.5))

此時你應該可以想到這麼做,在主程式裡寫上

(setq 90deg  (* PI 0.5))        

        270deg (* PI 1.5)

)

在啟用 AutoCAD 時順便將其載入到記憶體,然後你就可以用 90deg 和 270deg 來代表 90度和 270度了。


再例如,你也可以將所有角鋼規格設為預定義常數,例如

(setq StlAngle ("L45x4" "L60x5" "L75x6"...))


管理自訂變數

建立變數名稱的規則

像 AutoCAD 那樣擁有管理自訂變數的指令



沒有留言:

張貼留言