• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 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ì)小半徑曲線橋受力性能影響的研究
    哈密市| 绍兴市| 噶尔县| 平谷区| 普兰店市| 赤壁市| 日喀则市| 屯留县| 嘉祥县| 余干县| 汨罗市| 司法| 社会| 彭阳县| 满城县| 寿阳县| 云和县| 定陶县| 通渭县| 金秀| 突泉县| 大同市| 南投市| 镇坪县| 砚山县| 靖西县| 长武县| 璧山县| 襄樊市| 昂仁县| 达孜县| 渝北区| 惠州市| 房山区| 巩义市| 吉木萨尔县| 白水县| 皮山县| 定安县| 泌阳县| 锡林浩特市|