2017-02-15 12 views
1

Я пытаюсь реализовать структуру, подобную трубу, основанную на геокоординате, данные представляют собой формат json, который выглядит так.Создать путь от Lat long на Three JS

[ 
{ 
    "LATITUDE": "55.10185525", 
    "LONGITUDE": "-76.4629527" 
}, 
{ 
    "LATITUDE": "55.10181625", 
    "LONGITUDE": "-76.4629827" 
}, 
{ 
    "LATITUDE": "55.10185525", 
    "LONGITUDE": "-76.4629527" 
}, 
{ 
    "LATITUDE": "55.10181625", 
    "LONGITUDE": "-76.4629827" 
}, 
{ 
    "LATITUDE": "55.10185525", 
    "LONGITUDE": "-76.4329527" 
}, 
{ 
    "LATITUDE": "55.10181625", 
    "LONGITUDE": "-76.4629827" 
}, 
{ 
    "LATITUDE": "55.10185525", 
    "LONGITUDE": "-76.4629527" 
}, 
{ 
    "LATITUDE": "55.10181625", 
    "LONGITUDE": "-76.4629827" 
} 

]

я использовал этот метод преобразования для создания трех Vector3 расслоение плотной

function convertLatLonToVec3(lat,lon) { 
lat = lat * Math.PI/180.0; 
lon = -lon * Math.PI/180.0; 
return new THREE.Vector3( 
    Math.cos(lat) * Math.cos(lon), 
    Math.sin(lat), 
    Math.cos(lat) * Math.sin(lon)); 

}; , но это работает не очень хорошо. так что есть ли другие пути для реализации lat long на 3d-плоскости

+0

Что вы подразумеваете под _ «не работает очень хорошо» _? – prisoner849

+0

Я имею в виду, что он не бросает никаких ошибок ... или ничего показывать .... – user332863

+0

у вас есть широта и логичность, но какой радиус? – prisoner849

ответ

2

Посмотрите на Proj4js, если вы хотите проецировать точки на систему координат.