Interpolation/
ll_narcs_distances.pro
This function returns the longitude and latitude [lon, lat] of
a point a given arc distance (-pi <= Arc_Dist <= pi), and azimuth (Az),
from a specified location Lon0, lat0.
Same as LL_ARC_DISTANCE but for n points without do loop.
Formula from Map Projections - a working manual. USGS paper
1395. Equations (5-5) and (5-6).
ll_narcs_distances Mapping, geography
result = ll_narcs_distances(lon0, lat0, arc_dist, az, DEGREES=DEGREES)
Return value
a (2, n) array containing the longitude/latitude of the resulting points.
Values are in radians unless the keyword DEGREES is set.
Parameters
lon0
in
required
An array containing the longitude of the starting point.
Values are assumed to be in radians unless the keyword DEGREES is set.
lat0
in
required
An array containing the latitude of the starting point.
Values are assumed to be in radians unless the keyword DEGREES is set.
arc_dist
in
required
The arc distance from Lon_lat0. The value must be between
-!PI and +!PI. To express distances in arc units, divide
by the radius of the globe expressed in the original units.
For example, if the radius of the earth is 6371 km, divide
the distance in km by 6371 to obtain the arc distance.
az
in
required
The azimuth from Lon_lat0. The value is assumed to be in
radians unless the keyword DEGREES is set.
Keywords
DEGREES
Set this keyword to express all measurements and results in degrees.
Examples
IDL> Lon_lat0 = [1.0, 2.0]; Initial point specified in radians
IDL> Arc_Dist = 2.0; Arc distance in radians
IDL> Az = 1.0; Azimuth in radians
IDL> Result = LL_ARC_DISTANCE(Lon_lat0, Arc_Dist, Az)
IDL> PRINT, Result
2.91415 -0.622234
IDL> lon0 = [-10, 20, 100]
IDL> lat0 = [0, -10, 45]
IDL> lon1 = [10, 60, 280]
IDL> lat1 = [0, 10, 45]
IDL> dist = map_npoints(lon0, lat0, lon1, lat1, azimuth = azi, /two_by_two)
IDL> earthradius = 6378206.4d0
IDL> res = ll_narcs_distances(lon0, lat0, dist/earthradius, azi, /degrees)
IDL> print, reform(res[0, *])
10.000000 60.000000 280.00000
IDL> print, reform(res[1, *])
1.1999280e-15 10.000000 45.000000
Version history
Version
$Id: ll_narcs_distances.pro 163 2006-08-29 12:59:46Z navarro $
History
Based on the IDL function ll_arc_distance.pro,v 1.11 2003/02/03
Sebastien Masson (smasson@lodyc.jussieu.fr)
August 2005
Produced by IDLdoc 2.0.