道路標線標註彙總VBA
前言
道路標線,乃依據道路交通標誌標線號誌設置規則所繪製而成,於CAD上常用聚合線、陣列、圖塊來呈現,平面圖上繪製、標註、數量彙總,最後讓施工廠商據以施工,,無論是標線或圖塊皆需要換算其施作面積(m2)計價。
操作對象
- 聚合線
- 路面邊線、禁止臨時停車線、禁止停車線...等
- 陣列
- 枕木紋行人穿越線、路口行車引導線...等
- 圖塊
- 右轉箭頭、左轉箭頭、機車停等區...等
工作流程中最繁瑣的步驟針對每個標線標示其線名及長度,再根據各個不同線名登打數量公式,本篇文章介紹如何透過AutoCAD VBA的方式,將各個操作對象原先的工作流程進行簡化。
預期成果

繪製方式
線段繪製
線、聚合線都是屬於線段的一種,但對於VBA而言,他們的座標物件不同,線的座標為StartPoint及EndPoint,聚合線的座標為Coordinates,建議在使用上都用聚合線(指令為PL)作為畫線的方式。
圖層設定
VBA中可以透過SelectionSet框選CAD物件,並針對各個物件進行屬性讀取,包含圖層、座標、長度...等等,如果將所有的物件都拉進來,在計算上會較難處理,因此要讓使用者在繪製線段的過程,將圖層名稱設置前綴以利程式判讀,再將操作對象設定為此圖層名。
舉例: 長度_禁止停車線 舉例: 陣列_枕木紋行穿線
執行步驟
- 確認操作對象為聚合線,並且圖層名稱為長度_{線名}
- 確認操作對象為陣列部分,其圖層名稱為陣列_{線名}
- 點選按鈕長度標示
- 移動至CAD框選所有長度內容
- 由下而上依序點選標線文字出現位置
- 點選按鈕長度彙總
- 移動至CAD點選長度彙總出現位置