如何使用three.js

时间:2015-09-18 17:19:55

标签: javascript three.js openlayers

我有地图的一部分的lat / lon。我想把这个lat / lon的点放在3d空间webgl(lib:three.js)中。然后,如何将lat / lon转换为相应的x,y,z线。

3 个答案:

答案 0 :(得分:2)

因为纬度和经度是2D表示的一部分,您需要选择将用于投影的平面。最简单的一个是:X - 经度,Y - 纬度。如果您需要一些精确的位置,请再进行缩放。但这是我已经说过的最简单的案例。通常,地图投影要复杂得多。例如,请参阅lat/lon conversion to x/y-coordinates中的答案。希望它会对你有所帮助。

答案 1 :(得分:1)

当您使用像素创建新点时,它将转换为lat lng。

var offsetX = 10;
var offsetY = 10;
var mapZoom = 5;
var point = new google.maps.Point(
     offsetX / Math.pow(2, mapZoom),
     offsetY / Math.pow(2, mapZoom)
);

在此之后,您可以将point.x和point.y与另一个点相加。

答案 2 :(得分:0)

花费一些时间来寻找最佳的“ three.js方式”来解决此问题。为了后代,我想把它包括在这里。以下假设Y向上:

T

在这里查看Spherical.setFromvector3Vector3.setFromSpherical方法以查看内部工作原理。