97夜夜,九月丁香激情综合婷婷玉立,久久精品国产福利国产秒,久久com,欧美色综合高清视频在线,久久www成人看片

  • Cehui8.com 測繪地理信息領域專業門戶
  • 首頁 > 測繪論文 > 基礎測繪

    兩種坐標系的平面坐標及高程換算方法

    2013-07-07 08:27:10 來源: 測繪論壇 作者:
    聊聊

      摘要:介紹利用AutoCAD內嵌語言AutoLISP的數據庫操作函數,實現測量坐標系與施工坐標的換算問題,并附上換算程序。
    關鍵詞:AutoCAD;Au toLISP;坐標系統換算

    一 、問題的提出
    總圖設計人員為便于設計,常常根據場地情況采用施工坐標系,以便使新設計建筑物的軸線平行于施工坐標軸。施工坐標系與測量坐標系的坐標換算公式:
    由AB換為XY
    X =X o +Ac osR O+BsinR O
    Y= Y o 一As inR O+BcosR O
    由 XY 換 為AB
    A= ( X 一XO)cosR O一(Y一YO)sinR O
    B= ( X一 XO)sinR O+(Y一YO)cosR O
    式中,Xo, Y。為施工坐標系原點在測量坐標系中的“坐標,R。為施工坐標系統A軸正方向與測量坐標系統X軸正方向的夾角,如圖1,圖1(a)中為正值,圖1(b)中為負值。

    二、 平面坐標的換算
    AutoCAD得以在世界范圍內流行的重要因素之一,是它的開放性,它將二次開發權交給了用戶,并提供了許多開發工具,特別是內嵌的AutoLISP
    語言簡單易學,且功能強大。筆者就是利用AutoLISP編程來簡化坐標系統換算的。下面介紹給大家,程序如下:
    (de fun c :x ths(/ald f m n o 禪wx 1Y O
    (set qa l (ge tdi st” n輸人0V ’”):“)
    x1( get d ist ” n 輸人 X o:”)
    yl( g etd ist ” n 輸 人 YO:”)
    n(g etd ist” n(X ,Y E A,B= 1)(A,B==>X,Y
    =2)}1}):”)
    o(ss get ") C) w(l ist 0 0 )p (ilstyl x l)
    d(f ix a l) a l (‘ (一 al d ) 10 0)f(fixa l)m(* 1 00
    (一alf) )
    al( +d (/ f 60 .0) (/ m 3 6 00.0))
    ) (斌 = nn il) (se tqn 1 ))
    (if (/ =n 1 )
    (por gn
    (set qa l (‘ 一 1 al ) )
    (co mm an d" orta te 'o' "w a l" mo ve 'o'"w p "
    zoom'"e )
    )
    (command"m oved'"p w 'ortate'o'"w a l"zood'
    ne)
    ) (princ)
    )
    在程序運行時,首先要求輸人兩坐標系統間的夾角Ro,角度按60進制輸人。按下來要求輸人Xo, Yo,只將它們的值輸人即可。此程序能夠完成兩個坐標系統的相互換算,按提示選擇字符1,2就行(缺省為1)。提示中的(X,Y =>A ,B )表示由測量坐標系統換算成施工坐標系統;(A,B=>X,川表示由施工坐標系統換算成測量坐標系統。

    三、高程的換算
    高程的換算需要如下程序:
    (de fun c :chtext(/a la 2b lb 2b 3b 4b 5b 8c lc 2c 3
    pl sl s2 s3 w)
    (set qp l(g e td ist” 、n兩高程系統間高差是多
    少?:‘今
    w(g ets trin g n 輸 人 要 處理 高程數據
    的層名:")w(strcease w)
    s3(g eti nt" n 處 理 后 高 程保 留的小數位
    數:'1)
    ) (se tq a l ( s s g e t" X "(l ist(c ons0" text")(c ons8w )))
    a2 (sslength al)n 0)
    (erp eat a2
    (set qb l(s sna me al n ) b2(entgetbl ) b3(cdr
    (, 1 b2))
    b4( cd r( , 10 b 2 )) b 8 (a sci ib 3) b 5
    (cdr(, 7 b2)
    )
    (if (4-b8 57)
    (por gn
    (set qc l (a tof be ) s2 (fix cl )s l (一 cl s2 )
    (if (/ =s l0 )
    (por gn (e n tde lb l ) (s e tqc 2 ( +c 1p l)
    c3(rt osc2 2 s3 ))
    (co mm and "l aye ''" 9 'w "” "te xt" "9 'b5
    b410c3
    )
    )(setq n(+n 1))
    高程 的 換 算需要如下程序:
    (de fun c :chtext(/a la 2b lb 2b 3b 4b 5b 8c lc 2c 3
    pl sl s2 s3 w)
    (set qp l(g e td ist” 、n兩高程系統間高差是多
    少?:‘今
    w(g ets trin g n 輸 人 要 處理 高程數據
    的層名:")w(strcease w)
    s3(g eti nt" n 處 理 后 高 程保 留的小數位
    數:'1)
    ) (se tq a l ( s s g e t" X "(l ist(c ons0" text")(c ons8w )))
    a2 (sslength al)n 0)
    (erp eat a2
    (set qb l(s sna me al n ) b2(entgetbl ) b3(cdr
    (, 1 b2))
    b4( cd r( , 10 b 2 )) b 8 (a sci ib 3) b 5
    (cdr(, 7 b2))
    )
    )
    )
    (if (4-b8 57)
    ) (re dra w) ( p r i nc )
    )
    此程序首先要求輸人兩個坐標系統間的高差值,然后要求輸人高程數據所在的層名,最后要求輸人高程處理后要保留的小數位數,一般情況下,控制點名由字母開頭并與控制點高程處于同一層。值得說明的是怎樣解決控制點名與控制點高程的判斷問題。大家知道,數字與字母的ASCII碼不同,本程序就利用這一點來解決這一問題的。只要判斷出得到的TEXT實體第一個字符的ASCII碼,即可分辨出是控制點名,還是控制點高程。分辨之后再分別處理,對控制點名不做處理,對控制點高程,先將實體從圖中刪除,然后再重新在原位置寫上換算后的高程。控制點若用自然數命名,本程序也能分辨出來。其方法是:先將所取得的高程字符用atof函數轉換成實數,然后再用fix函數取整。若此實數與取整后的差值為0,則說明此數字是控制點名,不做處理。

    四、結束語
    上述的平面坐標及高程換算程序,雖然是為換算控制點坐標而編寫的,但它們的用途不只于此。利用它們,可將不同坐標系的圖紙互相換算。在換算過程中不需任何計算,只需做出選擇,按提示輸人夾角Ro,X o,Y 。以及坐標系間的高差,即可完成圖紙的坐標系換算

      聲明①:文章部分內容來源互聯網,如有侵權請聯系刪除,郵箱 cehui8@qq.com

      聲明②:中測網登載此文出于傳遞更多信息之目的,并不意味著贊同其觀點或證實其描述,文章內容僅供參考。

      加群提示:我們創建了全國32個省份的地方測繪群,旨在打造本地測繪同行交流圈,有需要請聯系管理員測小量(微信 cexiaoliang)進群,一人最多只能進入一個省份群,中介人員勿擾

    主站蜘蛛池模板: 国产亚洲综合久久 | 色国产精品一区在线观看 | 国产成人精品一区二区 | 国产精品毛片一区二区三区 | 国产片a国产片免费看视频 国产拍在线 | 亚洲六月丁香婷婷综合 | 国内国语一级毛片在线视频 | 国产精品视频成人 | 精品毛片免费看 | 青青草直播 | 男人的天堂在线观看 | 亚洲国产天堂久久综合2261144 | 成人自拍网站 | 中国一级免费毛片 | 久久综合噜噜激激的五月天 | 欧美在线视频一区二区 | 都市激情男人天堂 | 久久精品在这里 | 片子免费在线观看 | 欧美日a| 亚洲六月丁香六月婷婷色伊人 | 国产成人亚洲综合在线 | 伊人久色| 国产精品网站在线观看 | 国产精品一区二区手机在线观看 | 日韩精品第一 | 欧美爱性 | 99综合在线| 精品亚洲成a人片在线观看 精品小视频在线 | 24小时最新更新免费观看片 | 国产一区二区久久久 | 欧美老女人bb | 国产成人一区二区三区在线播放 | 九九综合视频 | 国产天堂在线视频 | 久久精品国产亚洲高清 | 五月天丁香婷婷网 | 国产成人综合日韩精品婷婷九月 | 国产视频第二页 | 精品视频在线观看 | 国产99久久久国产精品免费直播 |