Small circles from center and perimeter

`[lat,lon] = scircle2(lat1,lon1,lat2,lon2)`

[lat,lon] = scircle2(lat1,lon1,lat2,lon2,ellipsoid)

[lat,lon] = scircle2(lat1,lon1,lat2,lon2,* units*)

[lat,lon] = scircle2(lat1,lon1,lat2,lon2,ellipsoid,

`units`

[lat,lon] = scircle2(lat1,lon1,lat2,lon2,ellipsoid,

`units`

[lat,lon] = scircle2(

`track`

mat = scircle2(...)

mat = [lat lon]

`[lat,lon] = scircle2(lat1,lon1,lat2,lon2)`

computes
small circles (on a sphere) with centers at the points `lat1,lon1`

and
points on the circles at `lat2,lon2`

. The inputs
can be scalar or column vectors.

`[lat,lon] = scircle2(lat1,lon1,lat2,lon2,ellipsoid)`

computes
the small circle on the ellipsoid defined by the input `ellipsoid`

,
rather than by assuming a sphere. `ellipsoid`

is
a `referenceSphere`

, `referenceEllipsoid`

, or `oblateSpheroid`

object, or a vector
of the form `[semimajor_axis eccentricity]`

. Default
is a unit sphere.

`[lat,lon] = scircle2(lat1,lon1,lat2,lon2,`

and * units*)

`[lat,lon] = scircle2(lat1,lon1,lat2,lon2,ellipsoid,``units`

)

are
valid calling forms, which use the input `units`

`units`

`'degrees'`

is
assumed.`[lat,lon] = scircle2(lat1,lon1,lat2,lon2,ellipsoid,`

uses
the scalar input * units*,npts)

`npts`

to determine the number of
points per track computed. The default value of `npts`

is
100.`[lat,lon] = scircle2(`

uses * track*,...)

`track`

`track`

'
= 'gc'

, then small circles are computed. If `track`

=
'rh'

, then circles with radii of constant rhumb line distance
are computed. If you omit `track`

`'gc'`

is
assumed.`mat = scircle2(...)`

returns a single output
argument where `mat = [lat lon]`

. This is useful
if a single circle is computed.

Multiple circles can be defined from a single center point by
providing scalar `lat1,lon1`

inputs and column vectors
for the points on the circumference, `lat2,lon2`

.

A *small circle* is the locus of all points
an equal surface distance from a given center. For true small circles,
this distance is always calculated in a great circle sense. However,
the `scircle2`

function allows a locus to be calculated
using distances in a rhumb line sense as well. An example of a small
circle is *all points exactly 100 miles from the Washington
Monument*.

Was this topic helpful?