• 
    

    
    

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

      為AutoCAD新增三種畫圓弧的方式

      2010-04-19 03:19:27楊雙富
      城市勘測(cè) 2010年3期
      關(guān)鍵詞:弦長(zhǎng)弧長(zhǎng)圓心角

      楊雙富

      (云南一九八煤田地質(zhì)勘探隊(duì),云南昆明 650208)

      為AutoCAD新增三種畫圓弧的方式

      楊雙富?

      (云南一九八煤田地質(zhì)勘探隊(duì),云南昆明 650208)

      在AutoCAD中,利用Visual LISP作為二次開發(fā)工具,為其增加已知弧長(zhǎng)及弦長(zhǎng)、已知弦長(zhǎng)及弓高、已知弧長(zhǎng)及弓高繪制圓弧的3種方式,解決了這3種已知條件下求圓弧半徑及畫圓弧的難題。

      Visual LISP;圓??;非線性方程;牛頓迭代法;二次開發(fā)

      1 前 言

      已知弧長(zhǎng)及弦長(zhǎng)、已知弦長(zhǎng)及弓高、已知弧長(zhǎng)及弓高求圓弧半徑不僅是計(jì)算幾何的問題,也是工程設(shè)計(jì)和施工中常遇到的問題,由于列出求解的方程中含有三角函數(shù),為非線性方程,采用常規(guī)算法很難求解。AutoCAD是目前使用率最高的計(jì)算機(jī)輔助設(shè)計(jì)軟件之一,它根據(jù)圓弧的起點(diǎn)、終點(diǎn)、圓心、半徑、圓心角等基本參數(shù)有效組合,一共提供了10種不同繪制圓弧的方式,基本滿足用戶的需求,但其中卻沒有上述3種已知條件下繪制圓弧的方法,為此文中利用Visual LISP作為二次開發(fā)工具,按非線性方程的牛頓迭代法編程解算出圓心角、半徑,并實(shí)現(xiàn)了圓弧的高精度繪制。

      2 圓弧半徑求解數(shù)學(xué)模型

      2.1 根據(jù)已知條件,求解半徑方程

      任取一圓弧如圖1所示,P1、P2為圓弧的起點(diǎn)和止點(diǎn),P1、P2間的弧長(zhǎng)為L(zhǎng),弦長(zhǎng)為C,圓弧的弓高為h,設(shè)圓弧的半徑為R,所對(duì)應(yīng)的圓心角為x,根據(jù)已知弧長(zhǎng)L及弦長(zhǎng)C、弧長(zhǎng)L及弓高h(yuǎn)、弦長(zhǎng)C及弓高h(yuǎn)三個(gè)條件,則求半徑及圓心角的相應(yīng)方程組見表1第2行,因圓心角x在0~2π之間,為方便后述選取迭代初值,故按消元法消去半徑R,得到以圓心角為未知數(shù)的一元非線方程列入表1中的第3行。

      圖1 圓弧示意圖

      求解圓心角方程式 表1

      2.2 圓心角、半徑求解

      由于列出求解圓心角的方程中含有三角函數(shù),為非線性方程,根據(jù)牛頓迭代法,其求解的迭代計(jì)算式如下:

      式中的f(xi)、f′(xi)見表1,迭代精度取ε=10-10,當(dāng)?shù)Y(jié)束后,按表1中最后一行計(jì)算半徑。

      2.3 迭代初值選取

      根據(jù)牛頓迭代法解非線性方程初值選取規(guī)則[f(x0)f″(x0)〉0],經(jīng)分析和測(cè)試,初值選取表中倒數(shù)第二行的數(shù)據(jù)時(shí),迭代均收斂,可較為精確地解算出圓心角,從而精確地計(jì)算出半徑。

      3 實(shí)現(xiàn)畫圓弧方的步驟和Visual LISP程序

      3.1 畫圓弧的步驟

      (1)由已知數(shù)據(jù),按牛頓迭代法解算出圓弧的圓心角,并計(jì)算出半徑;

      (2)任選一點(diǎn)P1作為圓弧的起點(diǎn),根據(jù)已知數(shù)據(jù)和已解算出圓心角、半徑,按圓弧起點(diǎn)至止點(diǎn)的角度為0、距離為弦長(zhǎng)計(jì)算出止點(diǎn)P3,再由P1點(diǎn)、P3點(diǎn)及弓高計(jì)算圓弧的中點(diǎn)P2;

      (3)以三點(diǎn)畫圓弧命令繪出圓弧,并以P1點(diǎn)為旋轉(zhuǎn)中心,動(dòng)態(tài)將圓弧旋轉(zhuǎn)到指定的止點(diǎn)方向。

      3.2 Visual LISP程序

      4 應(yīng)用實(shí)例

      (1)將上述Visual LISP程序以文件名arc1.lsp保存;

      (2)啟動(dòng)AutoCAD,將arc1.lsp加載;

      (3)在命令行鍵入arc1并回車,按照提示輸入數(shù)據(jù)就可進(jìn)行計(jì)算和繪制圓弧,如表2為圓弧的已知數(shù)據(jù),表3為計(jì)算出的圓弧半徑;

      圓弧已知數(shù)據(jù) 表2

      計(jì)算出的圓弧半徑 表3

      (4)以下為YH3按弧長(zhǎng)弓高繪制圓弧的操作過程及所繪圓弧與原圓弧特性截圖。

      圖2 圓弧特性截圖

      5 結(jié) 語

      (1)在已知弧長(zhǎng)及弦長(zhǎng)、已知弦長(zhǎng)及弓高、已知弧長(zhǎng)及弓高以及選擇適當(dāng)初值的條件下,以Visual LISP作為開二次發(fā)工具,按非線性方程的牛頓迭代法編程解算圓心角并計(jì)算出半徑的方法,不但收斂速度很快而且準(zhǔn)確,從而實(shí)現(xiàn)了圓弧的高精度繪制,是對(duì)Auto-CAD圓弧繪制功能的有益補(bǔ)充。

      (2)限于篇幅,程序中未對(duì)輸入的數(shù)據(jù)有效性(即能否組成圓弧)、繪制圓弧的順或逆時(shí)針方向等細(xì)節(jié)進(jìn)行處理,請(qǐng)讀者自行完善。另外,也可為這種繪制圓弧方法創(chuàng)建菜單或工具欄按鈕,以方便操作,提高效率和精度。

      [1]翟瑞彩,謝偉松.數(shù)值分析[M].天津:天津大學(xué)出版社,2000

      [2]段紅梅,周明,胡仁喜等.AutoCAD 2000(中文版)自學(xué)教程[M].北京:清華大學(xué)出版社,2000

      [3]孫江宏,丁立偉,米潔.Visual LISP R14~2000編程與應(yīng)用[M].北京:科學(xué)出版社,1999

      AutoCAD Drawing for the New Arc Three Kinds of Ways

      Yang ShuangFu
      (198 coal geological exploration teams in Yunnan,Yunnan 650208,China)

      In the AutoCAD,using Visual LISP as a secondary development tools,known for its increase in arc length and chord length,chord length and arch of known high,known to draw the circular arc and bow-h(huán)igh three ways,resolved under the conditions of these three are known to seek arc radius and arc drawing problems.

      Visual LISP;arc;non-linear equations;Newton's iterative method;secondary development

      1672-8262(2010)03-113-03

      P209

      B

      2009—10—16

      楊雙富(1967—),男,高級(jí)工程師,主要從事工程測(cè)量工作。

      猜你喜歡
      弦長(zhǎng)弧長(zhǎng)圓心角
      求弧長(zhǎng)和扇形面積的方法
      利用問題鏈導(dǎo)向深度學(xué)習(xí)的設(shè)計(jì)與實(shí)施
      三角函數(shù)的有關(guān)概念(弧長(zhǎng)、面積)
      各種各樣的扇形
      淺談圓錐曲線三類弦長(zhǎng)問題
      三角函數(shù)的有關(guān)概念(弧長(zhǎng)、面積)
      弦長(zhǎng)積分的極限性質(zhì)與不等式
      弦長(zhǎng)積分的極限性質(zhì)與不等式
      “圓心角”度數(shù):弧長(zhǎng)計(jì)算的關(guān)鍵點(diǎn)
      不同圓心角對(duì)小半徑曲線橋受力性能影響的研究
      黔江区| 宜君县| 浦北县| 宁海县| 嘉善县| 阳山县| 弥勒县| 克山县| 东乡| 海阳市| 修文县| 彝良县| 海门市| 营口市| 乌什县| 许昌市| 新邵县| 资中县| 随州市| 贵阳市| 若羌县| 砚山县| 河间市| 金寨县| 扎兰屯市| 莲花县| 罗城| 都兰县| 西华县| 马鞍山市| 武冈市| 安吉县| 玛纳斯县| 正阳县| 灯塔市| 永昌县| 常德市| 太康县| 芦山县| 辛集市| 弥勒县|