• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      非對稱緩和曲線在AutoCAD 中的開發(fā)與實現(xiàn)

      2010-01-01 01:46:54潘曉明
      圖學學報 2010年3期
      關鍵詞:非對稱切線繪制

      潘曉明 , 張 勇, 孔 娟

      (1.同濟大學地下建筑與工程系,上海 200092; 2.同濟大學巖土及地下工程教育部重點實驗室,上海 200092; 3.濟南鐵路局工務處,山東 濟南 250001)

      在山嶺重丘區(qū)的公路建設中,以及既有線鐵路改造過程中,由于地形條件的限制,路線線形常常采用增長或縮短切線長度的方法來滿足規(guī)范中對于曲線間直線長度的要求。這樣,在鐵路、公路設計中往往會出現(xiàn)不對稱緩和曲線廣泛使用。由于緩和曲線上各點的曲率半徑及圓心均為變數(shù),所以在繪制線路平面圖時,利用繪圖工具無法準確、有效地繪制出緩和曲線。利用AutoLISP 對AutoCAD 進行二次開發(fā)可以實現(xiàn)用戶快速、高效制圖的目的。如邱榮茂等[1]提出了對稱緩和曲線在AutoCAD 中的開發(fā)與實現(xiàn)。本文以AutoLISP 語言為基礎,開發(fā)實現(xiàn)了非對稱緩和曲線在AutoCAD 中的自動繪制。所編寫的程序可為非對稱曲線的選線、設計、計算和施工提供了較完整的方法,具有一定的實用價值。

      1 AutoCAD 的二次開發(fā)環(huán)境

      AutoLISP 是由Autodesk 公司開發(fā)的一種采用 LISP 程序語言的編程工具(LISP 是LISTProcessor 的縮寫)。AutoLISP 的解釋器內嵌在AutoCAD 軟件包中。AutoLISP 不需要任何特定的硬件設備,只要一個系統(tǒng)能夠運行AutoCAD就能運行AutoLISP。它是一種唯一的解釋型語言。Visual LISP 是為AutoLISP 提供的一個完整 的開發(fā)環(huán)境,從R14版開始,AutoCAD支持Visual LISP 開發(fā)工具。Visual LISP 是一個可視化的AutoLISP 語言開發(fā)環(huán)境,它是AutoLISP 語言的擴展和延伸。

      Visual LISP 具有以下特性:

      (1) 在完全可視化的開發(fā)環(huán)境下編寫、調試程序。

      (2) Visual LISP 程序經過編譯后,提高了運行性能和保密性。

      (3) LISP 代碼通過AutoCAD R14 的ObjectARX 接口,提高了程序的運行速度。

      (4) Visual LISP 是一個被建立并裝載的ObjectARX 應用程序,因而可以在AutoCAD 部裝載和更新。

      2 非對稱緩和曲線的公式

      2.1 非對稱緩和曲線的曲線要素的計算

      如圖1 所示,設曲線要素兩端緩和曲線長分 別為 L1、 L2,圓曲線半徑為R,偏角α 為已知,其它曲線要素如 p1、 p2、 q1、 q2均可通過一般 的公式計算。由于兩緩和曲線的長度不一樣,因而設置緩和曲線后圓曲線半徑的內移值不同,此時的圓心不可能像對稱型布置時一樣,落在內夾角的平分線上,圓心到兩導線的垂直距離分別為 R + p1, R + p2。通過幾何關系不對稱緩和曲 線兩端切線長為[2]

      圖1 非對稱緩和曲線要素

      其中

      由此可知,對稱緩和曲線的切線長是公式(1)的一個特例。

      2.2 緩和曲線上任意一點的計算公式

      如圖2 所示,將坐標原點位于ZH 點(或HZ點),x 軸與切線重合時,由輻射螺旋線的關系, 由C = ρ× l的必要條件可以得出

      其中 C = R × L1( L2)

      圖2 緩和曲線上任一點的坐標

      3 非對稱緩和曲線的自動繪制的開發(fā)

      3.1 非對稱緩和曲線的程序流程

      根據(jù)式(1)~式(3),圖3 給出了非對稱緩和曲線AutoLISP 的程序流程??梢钥闯觯绦蛑黧w是緩和曲線與圓曲線的繪制。

      3.2 非對稱緩和曲線的編程要點

      本程序可在直接在AutoCAD 繪圖模塊中, 選取兩直線段的起點( pt1)、交點( pt)、終點( pt2),輸入非對稱緩和曲線要素 L1、R、 L2, 可直接在當前繪圖板中生成非對稱緩和曲線。為 使得自動生成非對稱緩和曲線,編寫的函數(shù)如下:

      (defun fwj(pt pt1));計算任意兩點的坐標方位角 的子函數(shù)。

      圖3 非對稱緩和曲線程序流程圖

      (defun readlh( / txt len n l-lh l-n txt1 txt_1 num1 num2 num))和(defun C:TAB());該子函數(shù)用于讀 取字符串,用來 L1、R、 L2的輸入。

      (defun c:hh());實現(xiàn)非對稱緩和曲線的自動生成的主函數(shù)。

      編程主要要點:

      (1) 首先讀入起始數(shù)據(jù)

      (2) 繪制緩和曲線

      由于非對稱緩和曲線,左右兩側不等長,程序實現(xiàn)過程中,要分別繪制兩側緩和曲線。利用自定義函數(shù)fwj(pt pt1),計算兩直線的坐標方位角、以及確定兩直線間的夾角。計算左緩和曲線 要素 T1、 p1、 q1。由得到的 T1,將用戶坐標系 設置在ZH 點上,坐標系如圖4 所示。 由公式(3)計算緩和曲線上當前坐標系下的等分點x、y 值,連接各段的直線,即可自動繪出左側緩和曲線。

      圖4 非對稱緩和曲線用戶坐標系

      右側緩和曲線的坐標系為圖4 中右側所示,此用戶坐標系可用于最后所有曲線的連接,否則,會認為各條曲線不在同一坐標系下,最后無法進行多義線連接。同樣利用上面的程序繪出右側緩和曲線。

      (3) 繪制圓曲線

      由上面保存的圖名s1,分別提取出左側與右側緩和曲線最后一點的坐標,也就是圓曲線的兩端坐標點,利用arc 命令可以繪出圓曲線。

      同理提取右側緩和曲線端點坐標(end)。

      (command "arc" begin "e" end "r" r) ;繪出圓曲線

      最后恢復到世界坐標系下,將兩側緩和曲線與圓曲線用多義線連接,即可生成非對稱緩和曲線。

      4 結 論

      按上述方法編制的程序已經在AutoCAD 2002,AutoCAD 2004 上調試通過,并經實踐證明,用上述方法繪制圓曲線加非對稱緩和曲線具有方便、高效、準確的優(yōu)點。本文給出的基本步驟和編程要點,為其他用戶進行AutoLISP 二次開發(fā)提供了借鑒和參考。

      [1] 邱榮茂, 王大鳴, 周喬勇. 基于AutoCAD 的線路緩和曲線的自動繪制[J]. 工程圖學學報, 2005, 26(1): 30-35.

      [2] 王曉光. 不對稱曲線的計算方法[J]. 公路交通科技, 2000, (增1): 25-27.

      猜你喜歡
      非對稱切線繪制
      Art on coffee cups
      圓錐曲線的切線方程及其推廣的結論
      切線在手,函數(shù)無憂
      非對稱Orlicz差體
      放學后
      童話世界(2018年17期)2018-07-30 01:52:02
      過圓錐曲線上一點作切線的新方法
      點數(shù)不超過20的旗傳遞非對稱2-設計
      非對稱負載下矩陣變換器改進型PI重復控制
      電測與儀表(2015年4期)2015-04-12 00:43:04
      在轉變中繪制新藍圖
      VBA在宗地圖繪制中的應用
      文昌市| 措勤县| 古交市| 同仁县| 桦甸市| 广南县| 林州市| 凌源市| 灌阳县| 马尔康县| 依安县| 阿拉善左旗| 革吉县| 金沙县| 昌乐县| 东台市| 蓝田县| 平泉县| 盖州市| 广饶县| 兴宁市| 岐山县| 洛宁县| 清丰县| 信阳市| 孟州市| 湘阴县| 海丰县| 仁化县| 安阳市| 保亭| 禄丰县| 织金县| 兰西县| 新余市| 政和县| 虹口区| 迁安市| 永顺县| 南岸区| 安康市|