Acad轉GoogleEarth程式

Acad轉GoogleEarth程式

Acad轉Earth程式採用基於AutoCAD的VBA編寫,能夠將CAD對象轉換成GoogleEarth所需的KML檔案。免費軟體,無任何功能和時間上的限制。

基本介紹

  • 中文名:Acad轉GoogleEarth程式
  • 外文名:Acad GoogleEarth program
  • 基礎:AutoCAD的VBA編寫
  • 適用版本:AutoCAD R2000以上版本
  • 類型:免費軟體
  • 作用:將CAD對象轉換成GoogleEarth
初始化,操作,

初始化

1、本程式適用於AutoCAD R2000以上
版本
2、本站程式可能用到的控制項comdlg32.ocx、xpcmd.ocx,如位於程式資料夾請複製到windows\system32或winnt\system32。
3、如程式啟動出現系統錯誤,可下載安裝VB6運行庫 ,如仍出錯,可點擊windows開始-運行,輸入regsvr32.exe C:/Windows/System32/comdlg32.ocx和regsvr32.exe C:/Windows/System32/xpcmd.ocx類似語句。

操作

1、 打開CAD,運行本程式。
2、 經緯度修正計算
修正原因:GoogleEarth採用的是WGS84坐標系統,WGS84坐標和北京54、西安80坐標之間是不存在一套轉換參數可以全國通用的,它們是兩個不同的橢球基準。
修正方法:可採用七(三)參數法,參數需測繪院提供或自行采點計算,本程式採用多點北京54或西安80坐標計算出的經緯度和同一點的WGS84經緯度計算平均差值進行修正,經測試,能夠滿足CAD圖形轉到GoogleEarth的精度要求。
操作方法:
(1)找出CAD圖與GoogleEarth中同一點,建立如下檔案示例格式,選取3點或更多。
修正檔案格式:
;;標識 X坐標 Y坐標 84緯度(度分秒) 84經度(度分秒)
1 3402917.0506 562267.5588 30.443882 111.390380
2 3384673.0591 554926.8618 30.344747 111.342492
3 3367259.4966 551614.9128 30.252232 111.321695
檔案格式說明:
X、Y坐標:平面坐標,與CAD中X、Y坐標相反,X坐標為7位、Y坐標為6位,可通過命令ID獲取。
84緯度(度分秒)、84經度(度分秒):GoogleEarth中與CAD圖中同一點的經緯度,可採用選單-添加-地標來獲取,獲取前需確認選單-工具-選項-3D視圖-顯示經緯度為度分秒格式,經緯度數值用小數表示,如:140.022866為140°02′28.66″。
(2)設定坐標系,給定中央子午線,中央子午線可以採用CAD圖對應的子午線也可隨意給定,但修改後需重新修正計算,對最終導入GoogleEarth結果沒有影響;點擊修正計算後選取該檔案,程式將生成【檔案名稱_計算結果】檔案 並自動打開檔案以方便檢查是否存在誤差較大的點,結果檔案格式如下。
計算結果檔案格式:
標識 緯度修正(分) 緯度修正(分)
1 0.00664 0.03826
2 0.00617 0.03773
3 0.00750 0.03858
4 0.22911 -0.20751
----------------------------
緯度修正平均:0.06236
經度修正平均:-0.02324
如存在相對誤差較大的點(如上述第4點),修改原檔案捨棄該點或重新選取相對點後重新計算修正值 ,修正值單位為分。有的點相對誤差加大可能是由於GoogleEarth的衛星圖片精度不夠,如下圖所示中GoogleEarth新老衛片接頭存在較大誤差,對這種情況可以對CAD圖形分段進行操作。 3、生成KML檔案
Acad轉GoogleEarth程式
A、設定坐標系統、中央子午線及參數,點擊轉換按鈕,給定保存的KML檔案名稱,程式將切換到CAD,選取 需轉換對象,程式將自動生成GoogleEarth所需的KML檔案,生成的KML格式為UTF-8以支持中文顯示,無需採用記事本另外儲存為UTF-8格式。
B、程式支持文本、直線、多段線、三維多段線、圓、圓弧。
C、中央子午線用°′″表示,如:111.15為111°15′。
D、對於【多段線存在圓弧部分】選項,一般情況不勾選,確實存在可勾選,勾選後將對每條多段線進行判斷並處理,影響轉換速度,特別是EICAD的緩和曲線由很多段小圓弧組成,如緩和曲線和圓未合併,可不勾選。
4、切換到GoogleEarth。
直接雙擊KML檔案切換到GoogleEarth或在GoogleEarth中用選單-檔案-打開KML檔案。
5、測試結果:
(1)麻陽高速
高速公路140km南北向,導入GoogleEarth,公路與地圖相對位置基本吻合。如下兩張圖位置相差約100km,從圖中原有道路可以看出,導入線形與地圖相應位置基本重合。 (2)大隨高速
Acad轉GoogleEarth程式
Acad轉GoogleEarth程式
高速公路東西向約80km,導入GoogleEarth線形與施工時的衛片基本吻合。
Acad轉GoogleEarth程式
Acad轉GoogleEarth程式
6、CAD坐標不是真實坐標如何操作?
CAD坐標不是真實坐標即為相對坐標時,可採取坐標轉換計算得到CAD相對真實坐標,然後進行操作。
(1)GoogleEarth中獲取相對點經緯度。
(2)採用坐標轉換程式將相對點經緯度轉換成平面坐標,坐標轉換程式可到網上搜尋下載,多為免費版,記住轉換採用的坐標系及中央子午線。
(3)將CAD圖以相對點為參照移至計算後的平面坐標處。
(4)運行本程式,設定轉換採用的坐標系及中央子午線,經緯度修正設為0,然後進行轉換操作。
7、關於坐標系(大地坐標、平面坐標、投影、北京54、西安80、WGS84)的一些理解
先從簡單說起,假設地球是正圓的,地球表面上的一點可以用經緯度來表示,這時的經緯度是唯一的。那什麼情況下是不唯一的呢,就是地球不是正圓的時候。實際也是如此,地球本來就不是圓的,而是一個橢圓。關於這個橢圓並不是唯一的,比如克拉索夫斯基橢球,1975國際橢球等等。橢球的不同主要由兩個參數來體現,一個是長半軸、一個是扁率。之所以會有不同的橢球體出現,是因為地球太大了,地球不是一個正橢球體,一個橢球體不可能都滿足地球每個角落的精度要求,在一些邊緣地帶誤差會很大,在赤道附近有適合赤道使用的橢球體,在極圈附近有適合極圈的橢球地,一切都是為了符合當地的精度需要。如果你有足夠的需求也可以自定義一個橢球體。基於以上原因,這時經緯度就不是唯一的了,這個應該很好理解,當你使用克拉索夫斯基橢球體時是一對經緯度,當使用另外一個橢球體時又是另外一對經緯度。
用經緯度表示的是地理坐標系,也稱大地坐標系。有時候用地理坐標系不夠方便,人們比較習慣於使用平面坐標系,平面坐標系用xy表示。
把球體表面的坐標轉成平面坐標需要一定的手段,這個手段稱為投影。投影方法也不是唯一的,還是為了一個目的,務求使當地的坐標最準確。所以目前就存在了好多投影方法,比如高斯投影、墨卡托投影等。誰有本事而且有那方面的需求也可以自創一套投影方法。
接下來是關於WGS84、北京54、西安80的概念:
首先有WGS84、北京54、西安80大地坐標系,是用經緯度表示的,也有WGS84、北京54、西安80平面坐標系,使用xy表示的。WGS84的橢球採用國際大地測量與地球物理聯合會第17屆大會測量常數推薦值; 北京54採用的是克拉索夫斯基橢球;西安80採用的是1975國際橢球,所以地球表面上一點的這三者大地坐標是不一樣的,即經緯度是不一樣的。
目前比較流行的是高斯- 克呂格投影和墨卡托投影,當然也可以用別的投影,看實際需要了。
涉及到不同坐標系,就會有坐標轉的問題。關於坐標轉換,首先要搞清楚轉換的嚴密性問題,即在同一個橢球里的坐標轉換都是嚴密的,而在不同的橢球之間的轉換這時不嚴密的。例如,由1954北京坐標系的大地坐標轉換到1954北京坐標系的高斯平面直角坐標是在同一參考橢球體範疇內的坐標轉換,其轉換過程是嚴密的。由1954北京坐標系的大地坐標轉換到WGS-84的大地坐標,就屬於不同橢球體間的轉換。
不同橢球體間的坐標轉換在局部地區的採用的常用辦法是相似變換法,即利用部分分布相對合理高等級公共點求出相應的轉換參數。一般而言,比較嚴密的是用七參數的相似變換法,即X平移,Y平移,Z平移,X旋轉,Y旋轉,Z旋轉,尺度變化K。要求得七參數就需要在一個地區需要3個以上的已知點,如果區域範圍不大,最遠點間的距離不大於30Km(經驗值),這可以用三參數,即X平移,Y平移,Z平移,而將X旋轉,Y旋轉,Z旋轉,尺度變化K視為0,所以三參數只是七參數的一種特例。
如果不考慮高程的影響,對於不同橢球體下的高斯平面直角坐標可採用四參數的相似變換法,即四參數(x平移,y平移,尺度變化m,旋轉角度α)。如果用戶要求的精度低於20米,在一定範圍(2'*2')內,就直接可以用二參數法(ΔB,ΔL)或(Δx,Δy)修正。但在實際操作中,這也取決於選取的公共點是否合理,並保證其足夠的精度。

相關詞條

熱門詞條

聯絡我們