#### Description:

This function modifies a supplied array of axis values so that they are normalised in the manner indicated by parameter `"` oper`"` .

No normalisation is possible for a simple Frame and so the supplied values are returned unchanged. However, this may not be the case for specialised sub-classes of Frame. For instance, a SkyFrame has a discontinuity at zero longitude and so a longitude value can be expressed in the range [-Pi,+PI] or the range [0,2∗PI]. See the `"` Applicability:`"` section below for details.

#### Synopsis

void astAxNorm( AstFrame ∗this, int axis, int oper, int nval, double ∗values, int ∗status )

#### Parameters:

##### this

Pointer to the Frame.

##### axis

The index of the axis to which the supplied values refer. The first axis has index 1.

##### oper

Indicates the type of normalisation to be applied. If zero is supplied, the normalisation will be the same as that performed by function astNorm. If 1 is supplied, the normalisation will be chosen automatically so that the resulting list has the smallest range.

##### nval

The number of points in the values array.

##### values

On entry, the axis values to be normalised. Modified on exit to hold the normalised values.

#### Applicability

##### SkyFrame

If `"` oper`"` is 0, longitude values are returned in the range [0,2∗PI]. If `"` oper`"` is 1, longitude values are returned in either the range [0,2∗PI] or [-PI,PI]. The choice is made so that that the resulting list has the smallest range. Latitude values are always returned in the range [-PI,PI].

##### All other classes of Frame

The supplied axis values are returned unchanged.
Copyright (C) 2021 East Asian Observatory