我有兩個向量點,當散點圖繪製時給我以下路徑:(每個顏色只是路徑的一個不同部分 - 一些線段是直的並且構建了一些線段通過採取一些半徑的圓的一定弧長)將線性座標系框架映射到Google地球的球形座標系
我想然後抓住這些點並畫出他們使用谷歌地球的JavaScript API爲使地球的表面上:
// Create the placemark
var lineStringPlacemark = ge.createPlacemark('');
// Create the LineString; set it to extend down to the ground
// and set the altitude mode
var lineString = ge.createLineString('');
lineStringPlacemark.setGeometry(lineString);
lineString.setExtrude(true);
lineString.setAltitudeMode(ge.ALTITUDE_RELATIVE_TO_GROUND);
// Add LineString points
lineString.getCoordinates().pushLatLngAlt(200, 300);
lineString.getCoordinates().pushLatLngAlt(200.50505051, 300);
... all points ...
ge.getFeatures().appendChild(lineStringPlacemark);
所以我基本上把它們當作經度和緯度 - 並不介意這個時候地球上出現的路徑。當我這樣做時,我會得到一條循環的路徑,我認爲這是因爲地球是球形的。
我認爲谷歌地球處理任何類型的一行投影到地球表面!我可以採取什麼樣的轉變來阻止/實現期望的路徑?原始點來自x = [0,500]和y = [0,500]的座標框架,我試圖獲得該框架中的點,到達地球上的經度和緯度!
這渲染看起來是正確的。你到底期待什麼?你希望結果如何?嘗試將你想要的東西繪製成像乒乓球那樣的球形表面,並從那裏計算出不同部分的角度。有可能,你只是在全球範圍內把它拉得太大。簡單地縮小它可能會產生更接近你期望的結果。請記住,在一個球體上,平行線總是相交兩次。 – slebetman
我該如何執行縮放?原始點來自x = [0,500]和y = [0,500]的座標,並且我試圖獲取該幀中的點,以緯度和長度 – Diego
第一次嘗試將所有座標數減半。所以x/2,y/2映射到緯度經度。那麼如果這太大,嘗試將它分到四分之一,如果它太小,請嘗試乘以0.55和0.99之間的數字。試用比例因子,直到得到你想要的結果。 – slebetman