我們歡迎您!! …社團法人臺灣省土木技師公會…

如無法檢視此頁面,請點選我

電子報 第 308 期 技師電子報於2000年9月21日創刊

本期編撰:徐適康
本期出刊:96年01月23日

臺灣省土木技師公會 發行

編者的話  

ㄧ年將近尾聲,工作還是忙不完,由於消化不良,似乎沒有可值得令人於此歲末年終ㄧ提的,來年希望不要再如此的忙了,多一點思考,讓工作能做的好一點,亦或許作業流程需要改造一下,以提昇工作效率。

技術交流

VBA在臨房沉陷分析上之應用,利用相對坐標繪圖程式,依據不同之開挖深度及建築物基腳(基礎)距離繪製影響圖,自動產生分析成果

以下為繪圖副程式,敬請各位先進參考指正 

(1)    Call dwgbase(x1, x2, y1, y2, ym, ym2, getlt, getpiz, getpizo, startvpoint, starthpoint, dwgscaleh, dwgscalev, vvv)

(2)    ii2 = i2 + 1

(3)   Sheets(“O”).Select

(4)     datalocatm = “a” & ii2   ‘datalocat

(5)          Range(datalocatm).Select

(6)          ActiveCell.FormulaR1C1 = getno

(7)           datalocatm = “b” & ii2   ‘datalocat

(8)          Range(datalocatm).Select

(9)          ActiveCell.FormulaR1C1 = footstyle(getfootstyle)

(10)        datalocatm = “c” & ii2   ‘datalocat

(11)          Range(datalocatm).Select

(12)          ActiveCell.FormulaR1C1 = getsf

(13)           datalocatm = “d” & ii2   ‘datalocat

(14)          Range(datalocatm).Select

(15)          ActiveCell.FormulaR1C1 = rfmax * 1000

(16)           If s1m > s2m Then

(17)          datalocatm = “e” & ii2   ‘datalocat

(18)          Range(datalocatm).Select

(19)          ActiveCell.FormulaR1C1 = s1m

(20)          Else

(21)          datalocatm = “e” & ii2   ‘datalocat

(22)          Range(datalocatm).Select

(23)          ActiveCell.FormulaR1C1 = s2m

(24)          End If

(25)          datalocatm = “f” & ii2   ‘datalocat

(26)          Range(datalocatm).Select

(27)          ActiveCell.FormulaR1C1 = smd

(28)          datalocatm = “g” & ii2   ‘datalocat

(29)          Range(datalocatm).Select

(30)          ActiveCell.FormulaR1C1 = ltmax * 1000

(31)           datalocatm = “h” & ii2   ‘datalocat

(32)          Range(datalocatm).Select

(33)          ActiveCell.FormulaR1C1 = ltmax2 * 1000

(34)          datalocatm = “i” & ii2   ‘datalocat

(35)          Range(datalocatm).Select

(36)          ActiveCell.FormulaR1C1 = nychk

(37)     nychk = “N”

(38)    i2 = i2 + 1

(39)   Loop

(40)   End Sub

(41)   

(42)    Sub dwgbase(x1, x2, y1, y2, ym, ym2, getlt, getpiz, getpizo, startvpoint, starthpoint, dwgscaleh, dwgscalev, vvv)

(43)   ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0), startvpoint + (dwgscalev * 0), starthpoint + (dwgscaleh * 3), startvpoint + (dwgscalev * 0)).Select

(44)   ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0), startvpoint + (dwgscalev * 0), starthpoint + (dwgscaleh * 0), startvpoint + (dwgscalev * 1)).Select

(45)   ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0), startvpoint + (dwgscalev * 1), starthpoint + (dwgscaleh * 3), startvpoint + (dwgscalev * 1)).Select

(46)      ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 3), startvpoint + (dwgscalev * 0), starthpoint + (dwgscaleh * 3), startvpoint + (dwgscalev * 1)).Select

(47)      

(48)      ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0 * getpiz / getpizo), startvpoint + (dwgscalev * 0.5 * getlt / vvv), starthpoint + (dwgscaleh * 0.3 * getpiz / getpizo), startvpoint + (dwgscalev * 1 * getlt / vvv)).Select

(49)       ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0.3 * getpiz / getpizo), startvpoint + (dwgscalev * 1 * getlt / vvv), starthpoint + (dwgscaleh * 1 * getpiz / getpizo), startvpoint + (dwgscalev * 0.1 * getlt / vvv)).Select

(50)        ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 1 * getpiz / getpizo), startvpoint + (dwgscalev * 0.1 * getlt / vvv), starthpoint + (dwgscaleh * 2 * getpiz / getpizo), startvpoint + (dwgscalev * 0)).Select

(51)     For i = 1 To 10

(52)         ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0), startvpoint + (dwgscalev * i * 0.1), starthpoint + (dwgscaleh * 0.02), startvpoint + (dwgscalev * i * 0.1)).Select

(53)         xx1 = starthpoint - 22

(54)         yy1 = startvpoint + (dwgscalev * i * 0.1) - 8

(55)         textn = 50 / 10 * i & “mm”

(56)         Call putext(xx1, yy1, textn)

(57)     Next i

(58)          For i = 2.5 To 30 Step 2.5

(59)         ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * i * 0.1), startvpoint + (dwgscalev * 0), starthpoint + (dwgscaleh * i * 0.1), startvpoint + (dwgscalev * 0.02)).Select

(60)         xx1 = starthpoint + (dwgscaleh * i * 0.1) - 5

(61)         yy1 = startvpoint - 10

(62)         textn = getpizo / 10 * i & “m”

(63)         Call putext(xx1, yy1, textn)

(64)     Next i

(65)      

(66)      ‘ActiveSheet.Shapes.AddLine(243.6, 196.8, 379.2, 235.2).Select

(67)       ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * x1 * getpiz / getpizo), startvpoint + (dwgscalev * y1 * getlt / vvv), starthpoint + (dwgscaleh * x2 * getpiz / getpizo), startvpoint + (dwgscalev * y2 * getlt / vvv)).Select

(68)      

(69)      Selection.ShapeRange.Line.Weight = 2#

(70)      Selection.ShapeRange.Line.DashStyle = msoLineSolid

(71)      Selection.ShapeRange.Line.Style = msoLineSingle

(72)      Selection.ShapeRange.Line.Transparency = 0#

(73)      Selection.ShapeRange.Line.Visible = msoTrue

(74)      Selection.ShapeRange.Line.ForeColor.SchemeColor = 24

(75)      Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255)

(76)      Selection.ShapeRange.Line.BeginArrowheadLength= msoArrowheadLengthMedium

(77)      Selection.ShapeRange.Line.BeginArrowheadWidth= msoArrowheadWidthMedium

(78)      Selection.ShapeRange.Line.BeginArrowheadStyle= msoArrowheadDiamond

(79)      Selection.ShapeRange.Line.EndArrowheadLength= msoArrowheadLengthMedium

(80)      Selection.ShapeRange.Line.EndArrowheadWidth= msoArrowheadWidthMedium

(81)      Selection.ShapeRange.Line.EndArrowheadStyle= msoArrowheadDiamond

(82)         xx1 = starthpoint + (dwgscaleh * x1 * getpiz / getpizo) - 15

(83)         If y1 > 0.1 Then

(84)         yy1 = startvpoint + (dwgscalev * y1 * getlt / vvv) - 15

(85)         Else

(86)          yy1 = startvpoint + (dwgscalev * y1 * getlt / vvv) + 5

(87)         End If

(88)         textn = “s1max”

(89)         Call putext(xx1, yy1, textn)

(90)         xx1 = starthpoint + (dwgscaleh * x2 * getpiz / getpizo)

(91)         yy1 = startvpoint + (dwgscalev * y2 * getlt / vvv) + 5

(92)         textn = “s2max”

(93)         Call putext(xx1, yy1, textn)

(94)        If ym > 0 Then

(95)      ActiveSheet.Shapes.AddShape(msoShapeDonut, starthpoint + (dwgscaleh * 0.3 * getpiz / getpizo) - 4, startvpoint + (dwgscalev * ym * getlt / vvv) - 4, 7#, 8).Select

(96)      Selection.ShapeRange.Fill.Visible = msoTrue

(97)      Selection.ShapeRange.Fill.Solid

(98)      Selection.ShapeRange.Fill.Transparency = 0#

(99)      Selection.ShapeRange.Line.Weight = 1

(100)             Selection.ShapeRange.Line.DashStyle = msoLineSolid

(101)             Selection.ShapeRange.Line.Style = msoLineSingle

(102)             Selection.ShapeRange.Line.Transparency = 0#

(103)             Selection.ShapeRange.Line.Visible = msoTrue

(104)             Selection.ShapeRange.Line.ForeColor.SchemeColor = 17

(105)             Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255)

(106)              ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 0.3 * getpiz / getpizo), startvpoint + (dwgscalev * ym * getlt / vvv), starthpoint + (dwgscaleh * 0.3 * getpiz / getpizo), startvpoint + (dwgscalev * 1 * getlt / vvv)).Select

(107)             xx1 = starthpoint + (dwgscaleh * 0.3 * getpiz / getpizo) - 5

(108)                yy1 = startvpoint + (dwgscalev * (ym + (1 - ym) / 2) * getlt / vvv)

(109)                textn = “Δ1max”

(110)                Call putext(xx1, yy1, textn)

(111)             End If

(112)              If ym2 > 0 Then

(113)             ActiveSheet.Shapes.AddShape(msoShapeDonut, starthpoint + (dwgscaleh * 1 * getpiz / getpizo) - 4, startvpoint + (dwgscalev * ym2 * getlt / vvv) - 4, 7#, 8).Select

(114)             Selection.ShapeRange.Fill.Visible = msoTrue

(115)             Selection.ShapeRange.Fill.Solid

(116)             Selection.ShapeRange.Fill.Transparency = 0#

(117)             Selection.ShapeRange.Line.Weight = 1

(118)             Selection.ShapeRange.Line.DashStyle = msoLineSolid

(119)             Selection.ShapeRange.Line.Style = msoLineSingle

(120)             Selection.ShapeRange.Line.Transparency = 0#

(121)             Selection.ShapeRange.Line.Visible = msoTrue

(122)             Selection.ShapeRange.Line.ForeColor.SchemeColor = 17

(123)             Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255)

(124)              ActiveSheet.Shapes.AddLine(starthpoint + (dwgscaleh * 1 * getpiz / getpizo), startvpoint + (dwgscalev * ym2 * getlt / vvv), starthpoint + (dwgscaleh * 1 * getpiz / getpizo), startvpoint + (dwgscalev * 0.1 * getlt / vvv)).Select

(125)             xx1 = starthpoint + (dwgscaleh * 1 * getpiz / getpizo) - 5

(126)                yy1 = startvpoint + (dwgscalev * (0.1 + (ym2 - 0.1) / 2) * getlt / vvv) - 5

(127)                textn = “Δ2max”

(128)                Call putext(xx1, yy1, textn)

(129)             End If

(130)             

(131)         End Sub

(132)         Sub chky(xx, yy)

(133)         If xx < 0.3 Then yy = 0.5 + xx * 0.5 / 0.3

(134)         If (xx > 0.3 Or xx = 0.3) And xx < 1 Then yy = 1 - (xx - 0.3) * 0.9 / 0.7

(135)         If (xx > 1 Or xx = 1) And xx < 2 Then yy = 0.1 - (xx - 1) * 0.1 / 1

(136)         If xx > 2 Then yy = 0

(137)         End Sub

(138)         Sub chkym(x1, x2, y1, y2, ym)

(139)          m = (y2 - y1) / (x2 - x1)

(140)         ym = y1 + (0.3 - x1) * m

(141)         End Sub

(142)         Sub chkym2(x1, x2, y1, y2, ym2)

(143)          m = (y2 - y1) / (x2 - x1)

(144)         ym2 = y1 + (1 - x1) * m

(145)         End Sub

(146)         Sub putext(xx1, yy1, textn)

(147)          ActiveSheet.Shapes.AddLabel(msoTextOrientationHorizontal, xx1, yy1, 0# , 0#).Select

(148)             Selection.ShapeRange(1).TextFrame.AutoSize = msoTrue

(149)             Selection.Characters.Text = textn & Chr(10) & “”

(150)            With Selection.Characters(Start:=1, Length:=20).Font

(151)                 .Name = “標楷體

(152)                 .FontStyle = “標準

(153)                 .Size = 8

(154)                End With

(155)         End Sub

(156)         Sub check45(a, b)

(157)         “ check45巨集表

(158)         ‘ MAX1998/12/21錄製的巨集

(159)         c = a * 100 - Int(a * 100)

(160)         If c = 0 Then b = a

(161)         If c > 0.45 Then b = Int(a * 100 + 1) / 100

(162)         If c <= 0.45 Then b = Int(a * 100) / 100

(163)         End Sub

技師投稿

基隆美景鐵三角(3/3)【外木山景點】

(圖文 : 賴景鎔)  

結合大武崙砲台、情人湖及外木山的美麗海岸, 形成了基隆最佳的旅遊鐵三角區【地圖01】. 在這三角區除了享受基隆外木山古道的嚮宴外, 還可登山、遊湖、觀海【地圖02】、造訪砲台古蹟【地圖03】, 來到基隆鐵三角區將是您最佳的旅遊踏青地.

 ( 前2期分別介紹大武崙砲台及情人湖, 本期再介紹外木山景點, 並附上登山資訊, 希望大家能喜愛, 謝謝 ! ) 

   (三) 外木山海岸美景

是基隆另一個迷你『碧砂漁港』,龍蝦麻糬也獲饕客愛

外木山漁港分為內港及外港, 內港主要是颱風來襲時作為所有漁船避風處, 整個漁港內停放多艘海釣船是其特色圖301, 只要漁獲一到, 漁港邊的住戶們就積極分裝處理圖302, 準備出售, 路過的遊客也可零買. 漁港邊就是觀光魚市場, 平常沒開張, 假期市場小販盡出, 相當熱鬧. 外木山漁港規模雖小, 無法與碧砂漁港相題並論, 但也是基隆市除了碧砂漁港外, 還可提供海鮮供遊客品嚐的地方, 值得到此一遊

    外木山這裡有一個天然的海水游泳池---海興游泳池圖303, 提供泳客免費的游泳運動, 一整年都有早泳隊的隊員在此游泳, 即使在嚴寒的冬天他們也不會缺席. 海興游泳池是由海蝕平台與岸邊之間的『內海』所形成, 提供了最佳的海水游泳區. 這裡也訓練出不少的救生員, 提供夏日北海沿岸戲水泳客安全的保障. 海興游泳池旁的堤防步道長達500公尺, 以前沒有這條步道時, 走在海堤上戰戰兢兢唯恐掉下摔傷, 但這個海堤步道完成後在這附近賞海景就沒有安全的威脅了

外木山海岸線最近幾年也因龍蝦麻糬而招來很多食客, 位於協和街221號的一家名為『益心居』的飲食店老闆突發奇想, 創造出包龍蝦的麻糬, 大概是味道特殊再加上媒體的報導, 居然造成很多遊客來這裡享用龍蝦麻糬圖304305, 隨後商家又研發龍蝦元宵, 每次假日經過這裡總會看到一些人在這裡排隊購買. 技師若有興趣, 何妨來此嘗嘗

美麗海岸搭配人行步道,已成世界級景觀

    外木山海岸線最著名的就是長達1,500公尺的自行車及人行步道, 城垣式的道路緣石造型, 再加上步道邊的美麗海岸線, 使得這條紅磚步道成為基隆最美的濱海步道圖306307308, 這裡的海景無疑是世界級的, 筆者曾在紐西蘭自助旅遊29, 看到紐西蘭南島有很多漂亮的海岸線, 但站在外木山濱海步道, 所看到的海岸美景似乎也不會比紐國遜色, 只是這裡的漂浮物稍微多了一點, 如果能積極的清除, 肯定可以晉升世界級的海景

    外木山海邊步道終點緊鄰著大武崙澳仔漁村的金色海水浴場圖320321, 早期這裡金砂一片, 但自從大武崙漁港建成後被掏掉的金砂不容易再被海浪沖上來, 只有不斷的流失. 後來靠和平島運來的海砂才將大武崙海水浴場回復以前的面貌. 基隆市三面環海卻只有這麼一小片的海砂浴場, 實在有待改進

『古道』及『新道』,條條越嶺通砲台

喜愛登山的人隨時可以從步道旁的登山口越嶺上大武崙砲台及情人湖, 以前這裡有兩條山路可以越嶺, 分別稱為中山峽谷森林步道圖309310311海興路步道圖312313314. 但最近台灣掀起『古道熱』, 只要過去有人走過, 稍加整修後就稱為『古道』. 因此有人就把這兩條步道稱為『中山峽谷古道』及『海興路古道』. 不管怎麼稱呼都無所謂, 只要大家高興就好. 基隆市政府最近在這附近又開闢一條新的越嶺步道, 我個人就把它稱為『新道』, 以別於舊有的古道. 前兩條古道都行走在森林間, 比較涼爽; 『新道』則無遮陰而且非常陡峭, 但『新道』的視野最好, 最富青春氣息圖315316317318319. 其實以一天的時間就可輕鬆暢遊這3條步道, 享受海景、湖景、山景及大武崙古砲台, 據說政府計畫將這個鐵三角區更進一步的提升位階, 強化全區的整體建設, 讓更多的國人可以來此享受美景, 把這裡推薦給外國人也會覺得與有榮焉.                   

全文完  謝謝!

【登山資訊】

(1)開車:

一、由中山高速公路到基隆

  1. 如果由中山高速公路到基隆, 出大業隧道後一路直行開車(不要轉彎)到港口前的路底(忠一路),

  2. 左轉進入忠一路後往基隆火車站的方向前進, 到車站前右轉進入港西街. 前行約9百公尺後左轉穿過鐵路平交道, 遇到中山路二段.

  3. 右轉進入中山路二段後一直前進(只有這麼一條路), 在中山路二段終點與中山路三段起點的銜接處左轉(這裡稱為流浪頭, 有很明顯的三叉路、平交道及道路指標)進入中華路.

  4. 沿中華路一路前進, 會再穿過平交道, 經過協和發電廠後第1個十字路右轉就進入協和街, 進入協和街後沿著該道路慢慢開車, 外木山及沿岸的風景據點就在協和街上, 外木山濱海道路是一般的稱呼, 該條濱海道路的路名就叫協和街.

二、由第二高速公路到基隆

由台北往基隆方向, 在第二高速公路德安路出口下來後, 接復興路左轉, 繼續前進銜街文化路後直行, 在中山國中旁邊的道路(路名叫文明路)左轉, 沿著文明路開車前進會接上協和街.

(2)乘車:

 搭車的技師可在基隆火車站對面的公車總站搭乘公車, 往中山國中的公  車班次密集, 在中山國中站下車, 然後沿文明路步行. 大約20 ~ 25分就到外木山漁港, 然後展開鐵三角之旅

(3)登山路線:

 中山峽谷步道的登山口(A)(15) 德安路(產業道路)(20) 大武崙砲台(10) 情人湖(10) 海興路步道(15)   海興路步道的登山口(B)(5) 越嶺新道的登山口(C)(20) 越嶺新道與情人湖外環步道交接處(D)(15) 越嶺新道的登山口(C)(5) →中山峽谷步道的登山口(A).

  【時間】

(1)從中山峽谷步道的登山口(A)步行15分鐘抵達德安路(產業道路), 沿德安產業道路前進, 20分鐘抵達大武崙砲台, 中山峽谷森林步道大部份都行走在樹蔭下, 夏天時非常涼爽, 參考地圖01.

(2)參觀大武崙砲台約30分

(3)大武崙砲台有階梯步道可通情人湖, 需時10分鐘.

(4)遊情人湖(包括環湖、外環步道及湖區設施)走路約50

(5)情人湖到海興路步道的起點10分鐘

(6)海興路步道長950公尺, 該步道去年在志工同心協力下, 整條山路已全面舖上碎石子, 即使下雨天也不再泥濘, 非常好走. 下山只要15分鐘即可輕鬆回到海興路步道的登山口(B), 完成『O形』的登山健行.

(7)若想再嘗試越嶺新道, 由海興路步道的登山口沿濱海自行車道(人行步道)5分鐘後抵自行車道的終點(C), 這裡也是越嶺新道的登山口.

(8)越嶺新道很陡峭, 但視野最好(前述的兩條步道都在森林內穿梭, 雖然涼爽但較無視野), 20分鐘後抵情人湖外環步道觀景台, 在道觀景台上不但可看到大武崙海水浴場及漁港, 還可以眺望萬瑞快速道路的雄姿(D).

(9)以上所提到的均為步行時間, 不包括休息時間. 以一天的時間遊這個鐵三角區綽綽有餘, 若有時間回程時還可到基隆廟口大快朵頤. 基隆廟口位於市區中心, 停車不易. 技師可開車至信二路的立體停車場(位於基隆中正公園正門的對面, 基隆消防隊的隔壁), 再走路10分鐘可到基隆廟口, 飽餐一頓後必定讓人回味無窮.

   

【地圖01基隆鐵美景三角區地圖                【地圖02外木山漁港---分裝到岸的小卷

   

【地圖03大武崙砲台地圖                【照片301外木山漁港一字排開的海釣船

   

【照片302外木山漁港---分裝到岸的小卷                【照片303協和街的海興水游泳池

   

【照片304協和街的『益心居』是龍蝦麻糬及龍蝦元宵的專賣店  【照片305龍蝦麻糬的旗幟   

   

【照片306海邊步道旁的停車場(自行車道及人行步道的起點)  【照片307基隆市最美的自行車道及人行步道(2之1)

   

【照片308基隆市最美的自行車道及人行步道(2之2)  【照片309中山峽谷森林步道登山口(3 之 1)

   

【照片310中山峽谷步道(3 之 2)                【照片311中山峽谷步道(3 之 3)

   

【照片312海興路步道登山口(3 之 1)                    【照片313海興路步道林木蓊鬱,小溪澗裡有很多的樹蛙(3 之 2)

   

【照片314海興路古道林木蓊鬱,全程都鋪設碎石(3 之 3)  【照片315越嶺新道的登山口

   

【照片316越嶺新道                                                【照片317越嶺新道在3條步道中最為陡峭(3之1)

   

【照片318越嶺新道在3條步道中最為陡峭(3之2)  【照片319越嶺新道在3條步道中最為陡峭(3之3)

   

【照片320越嶺新道上遠眺大武崙海水浴場及大武崙漁港  【照片321大武崙海水浴場是基隆唯一的海水浴場, 目前的白沙有很一部分是從和平島運來的

   

 【照片322從情人湖外環觀景台上俯瞰大武崙海水浴場及大武崙漁港(左上為萬里快速道路)  

【照片323只要天氣放晴, 釣客自然就來外木山沿岸釣魚

   

【照片324外木山海岸的美景(3之1)               【照片325外木山海岸的美景(3之2)              

【照片326外木山海岸的美景(3之3)

回頁首▲
 

版權所有,未經確認授權,請勿轉貼節錄

    Top   Back