gcxgc

Точки пересечения для пар больших кругов

Описание

пример

[lat,lon] = gcxgc(lat1,lon1,az1,lat2,lon2,az2) возвращается в lat и lon места, где пересекаются пары больших кругов. Большие круги определяются с помощью больших обозначений круга, который состоит из точки на большом круге и азимута в той точке, по которой протекает большой круг. Например, первый большой круг в паре прошел бы через точку (lat1, lon1) с азимутом az1 (в угловых единицах).

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

[lat,lon] = gcxgc(lat1,lon1,az1,lat2,lon2,az2,units) задает угловые единицы, используемые для всех входов, где units - любая допустимая угловая единица.

latlon = gcxgc(___) возвращает один выход, состоящий из конкатенированных координат широты и долготы точек пересечения большого круга.

Примеры

Найти точки пересечения двух больших кругов

Учитывая большой круг, проходящий через (10ºN,13ºE) и идущий на азимуте 10º, где он пересекается с большим кругом, проходящим через (0º, 20αE), на азимуте -23º (то есть 337α)?

[newlat,newlon] = gcxgc(10,13,10,0,20,-23)
newlat =
   14.3105  -14.3105

newlon =
   13.7838  -166.2162

Обратите внимание, что две точки пересечения всегда являются антиподами друг друга. В качестве простого примера рассмотрим точки пересечения двух меридианов, которые являются просто большими кругами с азимутами 0º или 180º:

[newlat,newlon] = gcxgc(10,13,0,0,20,180)
newlat =

   -90    90

newlon =

     0   180

Два меридиана пересекаются у Северного и Южного полюсов, что точно правильно.

Входные параметры

свернуть все

Широта или координата долготы точки на первом большом круге в каждой паре, заданная в качестве одного из следующих значений.

  • Числовой скаляр, чтобы найти пересечение одной пары больших кругов.

  • Численный вектор n-элемента, чтобы найти пересечение n пар больших кругов.

lat1 и lon1 должна иметь одинаковую длину.

Пример: 10

Пример: [-10 20 90 -45]

Азимут первого большого круга каждой пары в угловых единицах, заданный как одно из следующих значений.

  • Положительный числовой скаляр, чтобы найти пересечение одной пары больших кругов.

  • Вектор n-element из положительных чисел, чтобы найти пересечение n пар больших кругов. Длина az1 соответствует длине lat1 и lon1.

Пример: 20

Пример: [20 10 45 45]

Широта или координата долготы точки на втором большом круге в каждой паре, заданная в качестве одного из следующих значений.

  • Числовой скаляр, чтобы найти пересечение одной пары больших кругов.

  • Численный вектор n-элемента, чтобы найти пересечение n пар больших кругов.

lat2 и lon2 должны иметь ту же длину, что и lat1 и lon1.

Пример: 3

Пример: [3 30 85 -45]

Азимут второй большой окружности каждой пары в угловых единицах, заданный как одно из следующих значений.

  • Положительный числовой скаляр, чтобы найти пересечение одной пары больших кругов.

  • Вектор n-element из положительных чисел, чтобы найти пересечение n пар больших кругов. Длина az2 соответствует длине lat2 и lon2.

Пример: 15

Пример: [15 15 45 50]

Угловые единицы, заданные как 'degrees' или 'radians'.

Выходные аргументы

свернуть все

Координаты пересечений больших кругов, возвращенные как одно из следующего.

  • 2-элементный вектор, когда вы находите пересечение одной пары больших кругов.

  • n -by-2 матрица, когда вы находите пересечение n пар больших кругов.

Если пара больших кругов идентична, то gcxgc отображает предупреждение и возвращает NaNs для координат широты и долготы точек пересечения.

Конкатенированные координаты пересечений больших кругов, возвращенные как одно из следующего. Этот выход идентичен [lat ].lon

  • Вектор с 4 элементами, когда вы находите пересечение одной пары больших кругов.

  • n -by-4 матрицу, когда вы находите пересечение n пар больших кругов.

Если пара больших кругов идентична, то gcxgc отображает предупреждение и возвращает NaNs для координат широты и долготы точек пересечения.

См. также

| | | | | |

Представлено до R2006a