簡體   English   中英

將CLLocationCoordinate2D轉換為iphone / ipad坐標系

[英]Convert CLLocationCoordinate2D to iphone/ipad coordinate system

我正在嘗試轉換分區管理器返回的坐標,並將其繪制在ipad屏幕上。 我嘗試了這個,但是要點標記不正確

CGSize screenSize = _tilingView.bounds.size;
CGFloat SCALE = MIN(screenSize.width, screenSize.height) / (2.0 * EARTH_RADIUS);
CGFloat OFFSET = MIN(screenSize.width, screenSize.height) / 2.0;
CGFloat x = EARTH_RADIUS * cos(latLong.x) * cos(latLong.y);
CGFloat y = EARTH_RADIUS * cos(latLong.x) * sin(latLong.y);

_tilingview是我的視圖,上面有一張自定義的室內地圖,我想在該地圖上顯示用戶的位置

這種方法行不通,因為地球不是一個完美的球體-它在兩個軸上的半徑都不相同。 同樣,緯度是非線性的- 線性距離隨地球形狀的角度而變化 -地圖看起來是線性的,因為地圖使用投影 -通常是墨卡托投影-來投影(幾乎)球體的表面在平坦的表面上。

MapKit框架中有一些幫助程序功能可在地理坐標和視圖坐標之間進行轉換MKMetersPerMapPointAtLatitudeMKMapPointForCoordinate 在WWDC 2014上也有一個很好的會議-“ 將核心位置帶入室內 ”,涵蓋了這些功能以及如何使用它們從地理坐標轉換為線性坐標

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM