#### Description:

This function draws a general user-defined curve defined by the supplied Mapping. Note that the 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 astClip.

If you need to draw simple straight lines (geodesics), astCurve or astPolyCurve will usually be easier to use and faster.

#### Synopsis

void astGenCurve( AstPlot ∗this, astMapping ∗map )

#### Parameters:

##### this

Pointer to the Plot.

##### map

Pointer to a Mapping. This Mapping should have 1 input coordinate representing offset along the required curve, normalized so that the start of the curve is at offset 0.0, and the end of the curve is at offset 1.0. Note, this offset does not need to be linearly related to distance along the curve. The number of output coordinates should equal the number of axes in the current Frame of the Plot. The Mapping should map a specified offset along the curve, into the corresponding coordinates in the current Frame of the Plot. The inverse transformation need not be defined.

#### Notes:

- 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).

Copyright (C) 2021 East Asian Observatory