args[0]=message
args[1]=DB::DB::Message=HASH(0x5200db0)
Re[2]: Определение координат по точке, азимуту и расстоянию
7.05.2005 22:12 | А. Г. Вшивцев
Ну что ж, если нельзя переходить в прямоугольные координаты, то, наверное, задача чисто сферическая: Землю считаем шаром, а отрезок - дугой большого круга. Пустьphi и lambda - широта и долгота точки на земной поверхности; A - азимут (считается от направления на северный полюс к востоку), s - расстояние, выраженное в угловой мере. Если дано линейное расстояние L, то угловое (в радианах) можно найти, поделив L на радиус Земли: s = L/R, где R=6371 км. Искомые координаты phi_1 и lambda_1 находятся по следующим формулам сферической тригонометрии:
sin(phi_1) = cos(s)sin
(phi) + sin(s)cos(phi)cos(A),
cos(phi_1)sin(lambda_1-lambda) = sin(s)sin(A),
cos(phi_1)cos(lambda_1-lambda) =
cos(s)cos(phi)- sin(s)sin(phi)cos(A).
Сначала по первой формуле находится phi_1, затем по второй и третьей синус и косинус lambda_1-lambda. Обе функции нужны для того, чтобы правильно определить четверть lambda_1-lambda.
Если расстояние невелико (несколькокилометровпо поверхности), то можно использовать приближенные формулы:
s cos(A) =
phi-phi_1,
s
- Определение координат по точке, азимуту и расстоянию (А. Н. Метелёв, 9.01.2005 9:17, 368 Байт, ответов: 5)
- Re: Определение координат по точке, азимуту и расстоянию (А. Г. Вшивцев, 6.04.2005 19:48, 487 Байт)
- Re: Определение координат по точке, азимуту и расстоянию ( Гость, 22.04.2005 12:15, 122 Байт, ответов: 1)
- >> Re[2]: Определение координат по точке, азимуту и расстоянию (А. Г. Вшивцев, 7.05.2005 22:12, 1.1 КБайт)
- Re: Определение координат по точке, азимуту и расстоянию ( Гость, 25.05.2005 9:31, 35 Байт)
- Re: Определение координат по точке, азимуту и расстоянию ( Гость, 4.06.2005 18:50, 239 Байт)