next up previous
Next: AST_DECOMPOSE - Decompose a Mapping into two component Mappings
Up: AST Routine Descriptions
Previous: AST_COPY - Copy an Object

AST_CURVE - Draw a geodesic curve   

Description:
This routine draws a geodesic curve between two points in the physical coordinate system of a Plot. The curve drawn is the path of shortest distance joining the two points (as defined by the AST_DISTANCE function for the current Frame of the Plot). For example, if the current Frame is a basic Frame, then the curve joining the two points will be a straight line in physical coordinate space. If the current Frame is more specialised and describes, for instance, a sky coordinate system, then the geodesic curve would be a great circle in physical coordinate space passing through the two sky positions given.

Note that the geodesic curve is transformed into graphical coordinate space for plotting, so that a straight line in physical coordinates may result in a curved line being drawn if the Mapping involved is non-linear. Any discontinuities in the Mapping between physical and graphical coordinates are catered for, as is any clipping established using AST_CLIP.

If you need to draw many geodesic curves end-to-end, then the AST_POLYCURVE routine is equivalent to repeatedly calling AST_CURVE, but will usually be more efficient.

If you need to draw curves which are not geodesics, see AST_GENCURVE or AST_GRIDLINE.

Invocation:
CALL AST_CURVE( THIS, START, FINISH, STATUS )

Arguments:
THIS = INTEGER (Given)
Pointer to the Plot.
START( * ) = DOUBLE PRECISION (Given)
An array, with one element for each axis of the Plot, giving the physical coordinates of the first point on the geodesic curve.
FINISH( * ) = DOUBLE PRECISION (Given)
An array, with one element for each axis of the Plot, giving the physical coordinates of the second point on the geodesic curve.
STATUS = INTEGER (Given and Returned)
The global status.

Notes:
  • No curve is drawn if either of the START or FINISH arrays contains any coordinates with the value AST__BAD.
  • An error results if the base Frame of the Plot is not 2-dimensional.
  • An error also results if the transformation between the current and base Frames of the Plot is not defined (i.e. the Plot's TranInverse attribute is zero).



next up previous
Next: AST_DECOMPOSE - Decompose a Mapping into two component Mappings
Up: AST Routine Descriptions
Previous: AST_COPY - Copy an Object

AST A Library for Handling World Coordinate Systems in Astronomy
Starlink User Note 210
R.F. Warren-Smith & D.S. Berry
30th April 2003
E-mail:ussc@star.rl.ac.uk

Copyright (C) 2003 Central Laboratory of the Research Councils