### AST_OFFSET

Calculate an offset along a geodesic curve

#### Description:

This routine finds the Frame coordinate values of a point which is offset a specified distance along the geodesic curve between two other points.

For example, in a basic Frame, this offset will be along the straight line joining two points. For a more specialised Frame describing a sky coordinate system, however, it would be along the great circle passing through two sky positions.

#### Invocation

CALL AST_OFFSET( THIS, POINT1, POINT2, OFFSET, POINT3, STATUS )

#### Arguments

##### THIS = INTEGER (Given)
Pointer to the Frame.
##### POINT1( $\ast$ ) = DOUBLE PRECISION (Given)
An array with one element for each Frame axis (Naxes attribute). This should contain the coordinates of the point marking the start of the geodesic curve.
##### POINT2( $\ast$ ) = DOUBLE PRECISION (Given)
An array with one element for each Frame axis. This should contain the coordinates of the point marking the end of the geodesic curve.
##### OFFSET = DOUBLE PRECISION
The required offset from the first point along the geodesic curve. If this is positive, it will be towards the second point. If it is negative, it will be in the opposite direction. This offset need not imply a position lying between the two points given, as the curve will be extrapolated if necessary.
##### POINT3( $\ast$ ) = DOUBLE PRECISION (Returned)
An array with one element for each Frame axis in which the coordinates of the required point will be returned.
##### STATUS = INTEGER (Given and Returned)
The global status.

#### Notes:

• The geodesic curve used by this routine is the path of shortest distance between two points, as defined by the AST_DISTANCE function.

• This function will return " bad" coordinate values (AST__BAD) if any of the input coordinates has this value.

• " Bad" coordinate values will also be returned if the two points supplied are coincident (or otherwise fail to uniquely specify a geodesic curve) but the requested offset is non-zero.