0
Я хотел бы сделать сферическое пересечение сферы или эллипсоида эллипсоиду, если у меня есть две координатные точки GPS. Какова формула для этого?Столкновение между двумя точками GPS
Предположим, у меня есть две точки GPS с двумя разными lon, lat, alt. Я хотел бы сделать сферу с пересечением сфер или эллипсоидом до эллипсоида. Есть ли для этого формула?
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";
}
Если у вас есть только широта и долгота, вы имеете дело с кругами, а не с шарами. Обнаружение столкновения между двумя сферами легко: круги сталкиваются, если расстояние между центром меньше, чем сумма района каждого круга. – Hugal31
У меня есть широта, долгота и высота, поэтому я хочу сделать сферу сфера пересечения не кругами – andre
Я преобразовал сферические координаты в декартовы координаты, но столкновение всегда происходит – andre