Помогите с расчетом направления отрезка

MapInfo, MapBasic
klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 04 июл 2016, 14:00

trir писал(а):
система координат в WGS-84
http://gis-lab.info/qa/sphere-geodesic- ... oblem.html
но судя по тем формулам, чтоб найти площадь, мне нужно знать все углы, а зачем мне все углы, если я не могу найти один лишь угол, который мне нужен.

trir
Гуру
Сообщения: 5278
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1014
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Помогите с расчетом направления отрезка

Сообщение trir » 04 июл 2016, 14:09

Исходные данные
координаты пунктов Q₁ и Q₂
так всё есть

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 04 июл 2016, 14:14

trir писал(а):
Исходные данные
координаты пунктов Q₁ и Q₂
так всё есть
ох как все сложно, сегодня вечером постараюсь в голове все уложить и разобраться... мне это все нужно реализовать на mapBasic

trir
Гуру
Сообщения: 5278
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1014
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Помогите с расчетом направления отрезка

Сообщение trir » 04 июл 2016, 14:17


Ariki
Гуру
Сообщения: 731
Зарегистрирован: 12 янв 2011, 22:40
Репутация: 304
Ваше звание:

Re: Помогите с расчетом направления отрезка

Сообщение Ariki » 04 июл 2016, 14:20

klerk184 писал(а):но судя по тем формулам, чтоб найти площадь, мне нужно знать все углы, а зачем мне все углы, если я не могу найти один лишь угол, который мне нужен.
Ох как сложно вас понять.

На самом деле система координат WGS84 — она не на сфере, а на эллипсоиде. Так что всё ещё сложнее.

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 04 июл 2016, 14:25

Ariki писал(а):
klerk184 писал(а):но судя по тем формулам, чтоб найти площадь, мне нужно знать все углы, а зачем мне все углы, если я не могу найти один лишь угол, который мне нужен.
Ох как сложно вас понять.

На самом деле система координат WGS84 — она не на сфере, а на эллипсоиде. Так что всё ещё сложнее.
Понимаю что сложно меня понять, я не так давно в этом направлении работаю. из-за этого мне очень тяжело понять все и меня соответственно сложно понять)))

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 06 июл 2016, 05:34

Мне сказали можно так сделать:

"Зная координаты точки 3 определите масштабы по осям долготы и широты для данной местности. Масштаб показывает сколько метров в одном градусе широты и в одном градусе долготы (обычно масштабы разные). При определении масштабов используйте данные по форме Земли."

Как это сделать? Как получить метры?

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2229
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1501
Откуда: Казань

Re: Помогите с расчетом направления отрезка

Сообщение Игорь Белов » 06 июл 2016, 10:34

При вычислениях достаточно коротких отрезков на сфере всё просто: длину отрезка s₁₂ и азимут направления α₁₂ между точками 1 и 2 вычисляем по формулам

s₁₂² = ∆x² + ∆y² ,
tg α₁₂ = ∆x / ∆y ,
∆x = R (λ₂ − λ₁) cos φ ,
∆y = R (φ₂ − φ₁) ,

где φ₁, λ₁ и φ₂, λ₂ — широты/долготы первой и второй точек, R — радиус Земли (в MapInfo равен 6370997 м, можете взять любой). Если нужен только азимут, выкидываем радиус из формул:

∆x = (λ₂ − λ₁) cos φ ,
∆y = φ₂ − φ₁ .

Косинус широты в формуле ∆x точнее брать для середины отрезка, но в принятой постановке задачи сойдёт и конечная точка 1 или 2.

В MapBasic'е нет арктангенса от двух аргументов. Действуем так: берём арктангенс Atn(); если ∆y меньше нуля, добавляем к результату полокружности = π радиан = 180°.
The purpose of computing is insight, not numbers

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 06 июл 2016, 10:52

Игорь Белов писал(а):При вычислениях достаточно коротких отрезков на сфере всё просто: азимут направления с первой точки на вторую α₁₂ вычисляется по формуле
tg α₁₂ = ( λ₂ − λ₁ ) cos φ / ( φ₂ − φ₁ )
где φ₁, λ₁ и φ₂, λ₂ — широты/долготы первой и второй точек. Косинус широты точнее брать для середины отрезка, но в принятой постановке задачи и конечная точка 1 или 2 сойдёт.

В MapBasic'е нет арктангенса от двух аргументов. Действуем так: берём арктангенс Atn(); если φ₂ − φ₁ меньше нуля, добавляем к нему π радиан.

А если используется система координат WGS-84, то это все пойдет?

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2229
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1501
Откуда: Казань

Re: Помогите с расчетом направления отрезка

Сообщение Игорь Белов » 06 июл 2016, 10:56

klerk184 писал(а):А если используется система координат WGS-84, то это все пойдет?
Пойдёт. Сама программа MapInfo вычисляет длины и площади на сфере :wink:
Или Вы жаждете геодезической точности? Тогда срочно учиться, учиться и учиться!
The purpose of computing is insight, not numbers

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 06 июл 2016, 10:57

Игорь Белов писал(а):∆x = R (λ₂ − λ₁) cos φ , - вот здесь
Игорь Белов писал(а):∆x = (λ₂ − λ₁) cos φ , - вот здесь

тут какую широту нужно брать? долгота вижу, 1 и 2

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 06 июл 2016, 10:58

Игорь Белов писал(а):
klerk184 писал(а):А если используется система координат WGS-84, то это все пойдет?
Пойдёт. Сама программа MapInfo вычисляет длины и площади на сфере :wink:
Или Вы жаждете геодезической точности? Тогда срочно учиться, учиться и учиться!
Стараюсь, учусь))) Раньше с этим не сталкивался никогда в жизни)))

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2229
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1501
Откуда: Казань

Re: Помогите с расчетом направления отрезка

Сообщение Игорь Белов » 06 июл 2016, 11:03

И снова скажу:
Игорь Белов писал(а):Косинус широты в формуле ∆x точнее брать для середины отрезка, но в принятой постановке задачи сойдёт и конечная точка 1 или 2.
The purpose of computing is insight, not numbers

klerk184
Участник
Сообщения: 71
Зарегистрирован: 23 июн 2016, 11:56
Репутация: 0

Re: Помогите с расчетом направления отрезка

Сообщение klerk184 » 06 июл 2016, 11:13

Игорь Белов писал(а):И снова скажу:
Игорь Белов писал(а):Косинус широты в формуле ∆x точнее брать для середины отрезка, но в принятой постановке задачи сойдёт и конечная точка 1 или 2.
Т.е. лучше взять середину, а найду я ее вот так?
2016-07-06_14-16-19.png
2016-07-06_14-16-19.png (7.79 КБ) 7547 просмотров

:)

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2229
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1501
Откуда: Казань

Re: Помогите с расчетом направления отрезка

Сообщение Игорь Белов » 06 июл 2016, 11:18

Точно:
φ = (φ₁ + φ₂) / 2
The purpose of computing is insight, not numbers

Ответить

Вернуться в «MapInfo»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей