将GPS坐标转换成Unity世界空间?

问题描述

我正在开发一个AR应用程序,当识别目标/ QR码时,将根据玩家的位置在玩家周围生成许多历史建筑物。

我知道这些建筑物的纬度/经度,并且我知道玩家的纬度/经度。我已经实现了Harvesine algorithm,并且可以计算建筑物的相对方位:

public static double Harvesine(double lat1,double lon1,double lat2,double lon2)
{
    double R = 6371000; // metres
    double omega1 = ((lat1 / 180) * Mathf.PI);
    double omega2 = ((lat2 / 180) * Mathf.PI);
    double variacionomega1 = (((lat2 - lat1) / 180) * Mathf.PI);
    double variacionomega2 = (((lon2 - lon1) / 180) * Mathf.PI);
    double a = Math.Sin(variacionomega1 / 2) * Math.Sin(variacionomega1 / 2) +
                Math.Cos(omega1) * Math.Cos(omega2) *
                Math.Sin(variacionomega2 / 2) * Math.Sin(variacionomega2 / 2);
    double c = 2 * Math.Asin(Math.Sqrt(a));

    double d = R * c;

    return d;
}

public static double bearing(double lat1,double lon2)
{
    double radians;
    double x = Math.Cos(lat2*Mathf.Deg2Rad) * Math.Sin((lon2 - lon1) * Mathf.Deg2Rad);
    double y = Math.Cos(lat1 * Math.PI / 180) * Math.Sin(lat2 * Math.PI / 180) - Math.Sin(lat1 * Math.PI / 180) * Math.Cos(lat2 * Math.PI / 180) * Math.Cos((lon2 - lon1) * Math.PI / 180);

    radians = Math.atan2(x,y) * 180 / Math.PI;

    return radians;
}

从这里开始,如何生成相对于玩家位置的建筑物?我有距离(Harvesine)和角度(轴承),如何获得Vector3的位置?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)