Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Вот формула сырого азимута здесь,



Вот формула сырого азимута здесь,

- HSg тулфейс;

- INC – угол(зенит)

Есть пару нюансов: первое угол и тулфейс в формулу подставлять нужно не в градусах а в радианах, второе так как азимут определен от 0 до 2пи т.е. 0 – 360, а функция арктангенс на интервале от -пи/2 до +пи/2(от-90 до 90), то получив результат его необходимо подкорректировать.

Вот код корректировки результата (если программировал когда-нибудь поймешь)

public double RadToAngleAzi(double d, double bY, double bXx)

{

// bY = (Bx * Math.Sin(gtf) + By * Math.Cos(gtf));

// bXx = -(Bx * Math.Cos(gtf) - By * Math.Sin(gtf)) * Math.Cos(inc) + Bz * Math.Sin(inc);

 

d = d * radToAngle; // d – полученный выше азимут(в радианах), в этой строке я его перевожу в градусы

if (bY / bXx > 0)

{

if (bXx > 0)

d = 180 + d;//2 3 четверть

if (bXx < 0)

d = 0 + d;//3 4 четверть

}

if (bY / bXx < 0)

{

if (bXx > 0)

d = 180 + d;//1 2 четверть

if (bXx < 0)

d = 0 + d;//1 4 четверть

}

if (d < 0) d = 360 + d;

return d;

}


Дата добавления: 2015-09-28; просмотров: 27 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
О Положении о Молодежном | 50 СИЛЬНЫХ привычек - для Счастливой Жизни!

mybiblioteka.su - 2015-2024 год. (0.011 сек.)