2016-12-23 8 views
0

私は2つのGPS座標ポイントを持っていれば、球面に楕円体の交点または楕円体を球にしたいと思います。その式は何ですか?2つのGPSポイント間の衝突

私は2つの異なるlon、lat、altの2つのGPSポイントを持っているとします。私は、楕円体に交点または楕円体を球にする球をしたいと思います。それには式がありますか?

WGS84toXYZ(xAv, yAv, zAv, (m_sPosAV.GetLongitude()*math::pi)/180, (m_sPosAV.GetLatitude()*math::pi)/180, (m_sPosAV.GetAltitude()*math::pi)/180); // lon direction Nort 
    WGS84toXYZ(xPoi, yPoi, zPoi, (poi.Position().GetLongitude()*math::pi)/180, (poi.Position().GetLatitude()*math::pi)/180, (poi.Position().GetAltitude()*math::pi)/180); // lon direction Nort 

    Sphere avSphere; 
    Sphere poiSphere; 

    avSphere.position.x = xAv; 
    avSphere.position.y = yAv; 
    avSphere.position.z = 0; 
    avSphere.radius = 1550000; 
    poiSphere.position.x = xPoi; 
    poiSphere.position.y = yPoi; 
    poiSphere.position.z = 0; 
    poiSphere.radius = 100000; 

    if (doesItCollide(avSphere, poiSphere)) 
    { 
     qDebug() << "collision sphere"; 
    } 
+0

緯度と経度のみの場合は、球ではなく円で処理しています。 2つの球の衝突を検出するのは簡単です:中心との距離が各円のレーヨンの合計よりも小さい場合、円が衝突しています。 – Hugal31

+0

私は緯度、経度、高度を持っているので、円ではなく球の球に球を作ろうとしています – andre

+0

私は球座標をデカルト座標に変換しましたが、衝突は常に発生しています – andre

答えて

0

球は簡単です: あなたの2点間の距離は球のためにあなたの半径の和よりも小さい場合は、あなたが自分で交差点を得ました。

関連する問題