正確的斜率可以將空間中鐵塔側面 '攤平' 在地表或是 2D 繪圖面,以利於放樣出實際長度。
基線是鐵塔放樣的依據,一切尺寸都從這裡開始,基線一旦錯了就一切前功盡棄。
鐵塔設計資料
梯形有上寬、下寬、垂高、主柱彎曲點偏移距離,就可以計算出斜率。
若像是繼塔或塔腳,只知道梯形上寬和垂高,該如何計算出下寬和斜率?
由基點的塔體部位屬性值,就可知道這個基點是UPPER、LOWER、幾米塔身或幾米繼塔!
問AI:
輸配電鐵塔的塔身是一個3D楔形體,然而在AutoCAD實施鐵塔放樣時需要把這個楔形體的立面側邊「放倒貼平」到地面,才能進行2D放樣。
我需要你幫我寫一個Autolisp DCL程式,可以輸入塔身資料,例如
頂部偏移
垂直高度
底部偏移
頂部寬度
底部寬度
鐵塔斜率(button)+(editbox)
程式產生之資料
以下由程式產生之所有圖形物件皆放置於圖層「基線」。
基線名稱
一次斜率
基準點
中軸線
上寬線
下寬線
左斜線
右斜線
名稱唯一與多個名稱之間的關聯性
一個基線梯形一個唯一的名稱。
上塔身、下塔身、繼塔們與塔腳們都有其各自的基線梯形。
需要定義他們之間的關聯性。
作用基線
雖然有多個基線,但「作用」基線只有1個。
基線與 'Handle'
記住基線的每一根線的 Handle,有利於讓程式運算相對位置。
變數 at$BLHandle
值 '(("基線名稱" "N/A")
(" 一次斜率" "1000.438")
("基準點Handle" "N/A")
("中軸線Handle" "N/A")
("上寬線Handle" "N/A")
("下寬線Handle" "N/A")
("左斜線Handle" "N/A")
("右斜線Handle" "N/A"))
節號、節距與節型
多種高度的下塔身
多種高度的繼塔
多種高度的塔腳
塔腳的節型與塔身不同,需要另外處理。
鐵塔的戶口名簿
鐵塔各部位的組合關係應該可以參考戶口名簿記載的方式來處理。上下位置可視為兄弟姊妹關係,內外位置可視為父母子女關係。
本人姓名
父母姓名
兄姊姓名
子女姓名
弟妹姓名
在圖塊屬性內有一欄位「關係」,其值為 "本人姓名,父母姓名,兄/姊姓名,子/女姓名,弟/妹姓名"
上述概念是否適合於用來表述塔體各部位之關係?
塔體圖塊 BlockName = "BasePoint_Body" (圖層 = "基線")
屬性名稱 值 (圖層 = "Defpoints")
鐵塔名稱 = "PP-4JP"
塔體名稱 = "Lower"
接續自 = "Upper"
居內於 = " "
低降垂距 = " "
梯形資料 = "頂端寬度, 底端寬度, 垂直高度, 彎曲偏移, 一次斜, 二次斜"
基線Handle = "中軸線, 頂端線, 底端線, 左端線, 右端線"
節距 = "起始編號, 節距1, 節距2, 節距3, ..."
節型 = " "
主柱規格 = "L90x7,L100x7..."
接續方式 = "(無),外搭,外搭,內搭,對接..."
塔腳圖塊 BlockName = "BasePoint_Foot" (圖層 = "基線")
屬性名稱 值 (圖層 = "Defpoints")
鐵塔名稱 = "PP-4JP"
塔體名稱 = "10M FT"
接續自 = " "
梯形資料 = "頂端寬度, 底端寬度, 垂直高度, 彎曲偏移, 一次斜, 二次斜"
左米數 = "3,4,5,6"
左基線Handle = "中軸線, 頂端線, 左端線, 右端線"
右米數 = "4,5,6,7,8"
右基線Handle = "中軸線, 頂端線, 右端線, 左端線"
================================================
我們來一步步推導這個「放倒貼平」的幾何公式。為了方便討論,我們假設鐵塔的這個節間(Section)是一個正方形截面的對稱截角方錐體。
1. 定義已知變數(來自圖面上的資訊)
在看鐵塔的正視圖或側視圖時,我們通常能直接取得以下數據:
$H$:該節間的垂直高度 (Vertical Height)。
$W_b$:該節間的底部寬度 (Bottom Width)。
$W_t$:該節間的頂部寬度 (Top Width)。
從這些已知數據,我們可以先算出單側的水平內縮量 ($\Delta W$):
在傳統的正立面圖上,主腳材的投影斜率 ($m_{proj}$) 就是水平內縮量與垂直高度的比值:
2. 計算關鍵轉換參數:斜面實高 ($H_s$)
這是「放倒貼平」最核心的一步。
鐵塔的側立面是一個向內傾斜的等腰梯形。當你把它以底邊為軸心,往下「放倒」並與地面平行時,這個梯形的底邊 $W_b$ 和頂邊 $W_t$ 長度都不會改變。唯一改變的是這個梯形的「高度」。
在 3D 空間中,這個面的實際高度(也就是沿著傾斜面量測的中心線長度,我們稱為斜高 $H_s$)會大於垂直高度 $H$。根據畢氏定理,斜面實高是由垂直高度與單側內縮量構成的:
3. 推導「放倒貼平」後的 2D 幾何公式
現在,我們已經把那個傾斜的 3D 側面,轉換成了一個平躺在 2D 平面上的等腰梯形。
在這個放平的梯形中:
底邊寬度 = $W_b$
頂邊寬度 = $W_t$
梯形高度 = $H_s$
單側水平內縮量 = $\Delta W$ (放平後,橫向的內縮量並未改變)
這時候,我們就可以推導出放樣所需要的實面斜率與真實夾角了:
A. 實面放樣斜率 ($m_{true}$)
在 2D 放樣圖面上,主腳材的斜率變成了橫向內縮量與「斜高」的比值:
(你會發現,$m_{true}$ 必定小於立面圖上的 $m_{proj}$,這代表放倒後的主腳材看起來會「稍微沒那麼斜」)
B. 主腳材與垂直中心線的真實夾角 ($\theta_{true}$)
這決定了斜材與主材交會時的真實角度:
C. 主腳材與水平構件的真實夾角 ($\alpha_{true}$)
這通常用於角鋼端部的切角加工:
💡 驗證:這樣推導出來的主腳材長度是對的嗎?
我們可以用 3D 空間的距離公式來驗證這個 2D 推導是否正確。
在 3D 空間中,鐵塔角落的主腳材會同時在 X 軸和 Y 軸內縮 $\Delta W$,並在 Z 軸上升 $H$。所以主腳材的 3D 空間實長 ($L_{3D}$) 為:
現在看我們剛剛「放倒貼平」的 2D 梯形。這個梯形的斜邊(也就是主腳材)長度 ($L_{2D}$),是由水平內縮量 $\Delta W$ 和梯形高度 $H_s$ 構成的直角三角形斜邊:
把前面推導的 $H_s = \sqrt{H^2 + \Delta W^2}$ 代入:
$L_{2D} = L_{3D}$!
數學完美地吻合了。這證明了只要把原本立面圖的高度 $H$ 替換成斜高 $H_s$,畫出來的 2D 梯形,其斜邊長度就是主腳材真正的長度,而在這個 2D 梯形裡面畫出的任何斜材(Diagonal members),量出來的長度與角度,也都會是百分之百準確的加工實長與實角。
有了這些公式,下一步無論你是要在 AutoCAD 裡手動輸入相對座標畫圖,還是準備寫 Python 腳本讓它自動讀取 $W_b$、$W_t$、$H$ 然後生成 2D 展開圖,邏輯都已經打通了!