日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MapX的坐标问题

發布時間:2024/7/19 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MapX的坐标问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們知道,一個GIS開發包或者GIS平臺,和一般的圖形系統的差別就在于其管理的對象都是有空間參考(或者叫地理參考)的,簡而言之,空間參考就是坐標系,但坐標系不是簡單的笛卡爾坐標系,因為地球是圓的。有關的文獻可以參考一般的地圖學教材。

對 于GIS系統,坐標系是和每個對象對應的,也就是說,任何一個空間對象(Feature)都必須有一個空間參考,但在實現中,一般是一個圖層對應一個空間 參考,也就是坐標系。而整個地圖也有一個空間參考,并且有的系統,這個參考還分為實際內部數據的和顯示的(例如MapX)。

MapX的空 間參考可以通過CoordSys object來設置。設置的類型包括平面坐標(笛卡爾坐標,Non-Earth),經緯度以及各類投影坐標系統。然后這個CoordSys對象可以和圖 層、Map對象關聯,或者說,每個Layer對象和Map對象都有自己的空間參考。

在MapX中,圖層的空間參考可以通過Layer.CoordSys屬性來獲取或者設置。

MapX 的Map對象的空間參考則可以通過Map.DisplayCoordSys和Map.NumericCoordSys屬性來設置,前者是顯示的坐標,后者 是實際的坐標。如果你把前者設置為經緯度,后者設置為投影坐標,那么通過Map的工具量測得到就是前者的坐標單位,而通過FeatureFactory對 象添加屬性,使用的坐標就是后者。

那么對應層和Map對象空間參考不一致的情況,顯示的時候就要實時(onfly)變換。

在我們使用FeatureFactory添加坐標的時候,一定要清楚當前地圖的NumericCoordSys屬性的設置。

而創建一個Point的對象的時候,使用的也是NumericCoordSys這個坐標體系。

對于一個沒有添加任何數據的MapX控件,其Map的NumericCoordSys屬性為平面坐標,如果使用Layers.Add添加圖層,這個屬性就自動變為添加的第一個圖層的空間參考。

如果加載GeoSet,則坐標體系通過GeoSet創建。

通過MapX的Layers.Add方法新建圖層,一般不需要指定圖層的空間參考,也無法在LayerInfo對象中指定文件圖層對象的空間參考,這時,創建的圖層的空間參考為MapX的空間參考(NumericCoordSys)。

另外,使用平面坐標(Non-Earth)時,需要指定其范圍,缺省好像是-100到100,太小,但也不能太大,不確定的情況下,使用int.max就合適,太大數據溢出,就等于很小了。

坐標是GIS開發一個比較頭疼的問題,遇到類似的問題的朋友,希望這篇東西會有益處。

轉載于:https://www.cnblogs.com/maweifeng/archive/2006/09/23/512705.html

總結

以上是生活随笔為你收集整理的MapX的坐标问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。