Небольшие окружности от центра, диапазона и азимута
[lat,lon] = scircle1(lat0,lon0,rad)
[lat,lon] = scircle1(lat0,lon0,rad,az)
[lat,lon] = scircle1(lat0,lon0,rad,az,ellipsoid)
[lat,lon] = scircle1(lat0,lon0,rad,units)
[lat,lon] = scircle1(lat0,lon0,rad,az,units)
[lat,lon] = scircle1(lat0,lon0,rad,az,ellipsoid,units)
[lat,lon] = scircle1(lat0,lon0,rad,az,ellipsoid,units,npts)
[lat,lon] = scircle1(track,...)
[lat,lon] = scircle1(lat0,lon0,rad) вычисляет небольшие окружности (на сфере) с центром в точке lat0,lon0 и радиус rad. Входными данными могут быть скалярные или столбчатые векторы. Входной радиус в градусах длины дуги на сфере.
[lat,lon] = scircle1(lat0,lon0,rad,az) использует входные данные az для определения вычисленных дуг малого круга. Азимуты дуги измеряются по часовой стрелке с севера. az является вектором-столбцом, то длина дуги вычисляется с учетом севера. az является матрицей из двух столбцов, затем малая окружность дуг вычисляется начиная с азимута в первом столбце и заканчивая азимутом во втором столбце. Если az = []затем вычисляется полный малый круг.
[lat,lon] = scircle1(lat0,lon0,rad,az,ellipsoid) вычисляет малые окружности на эллипсоиде, определяемые вводом ellipsoid, а не предполагая сферу. ellipsoid является referenceSphere, referenceEllipsoid, или oblateSpheroid объект или вектор формы [semimajor_axis eccentricity]. Если большая полуось ненулевая, rad принимают за единицы расстояния, соответствующие единицам основной полуоси. Однако, если ellipsoid = []или если большая полуось равна нулю, то rad интерпретируется как угол, а малые круги вычисляются на сфере, как в предыдущем синтаксисе.
[lat,lon] = scircle1(lat0,lon0,rad,units),
[lat,lon] = scircle1(lat0,lon0,rad,az,units), и
[lat,lon] = scircle1(lat0,lon0,rad,az,ellipsoid,units)
являются допустимыми вызывающими формами, которые используют входные единицы для определения угловых единиц входных и выходных сигналов. Если опустить единицы измерения, 'degrees' предполагается.
[lat,lon] = scircle1(lat0,lon0,rad,az,ellipsoid, использует скалярный ввод units,npts)npts для определения количества точек на малую вычисленную окружность. Значение по умолчанию npts составляет 100.
[lat,lon] = scircle1(track,...) использует трассу для определения большого круга или радиуса линии румба. Если затем вычисляются малые круги. Если track = 'gc'track = 'rh'затем вычисляются окружности с радиусами постоянного расстояния линии румба. Если пропустить трассу, 'gc' предполагается.
mat = scircle1(...) возвращает один выходной аргумент, где mat = [lat lon]. Это полезно, если вычисляется один маленький круг.
Несколько окружностей можно определить из одной начальной точки, предоставив скаляр lat0,lon0 входы и векторы столбцов для rad и az при желании.
Создайте и постройте график небольшого круга с центром в точке (0 °, 0 °) с радиусом 10 °.
axesm('mercator','MapLatLimit',[-30 30],'MapLonLimit',[-30 30]);
[latc,longc] = scircle1(0,0,10);
plotm(latc,longc,'g')Если требуемый радиус известен в какой-либо неугольной единице измерения расстояния, используйте радиус, возвращаемый earthRadius используется в качестве входного эллипсоида для задания единиц диапазона. (Используйте пустую запись азимута, чтобы указать полный круг.)
[latc,longc] = scircle1(0,0,550,[],earthRadius('nm'));
plotm(latc,longc,'r')Для только дуги окружности введите диапазон азимута.
[latc,longc] = scircle1(0,0,5,[-30 70]); plotm(latc,longc,'m')
