NCL Website header
NCL Home > Documentation > HLUs > Classes

IrregularTransformation class

The IrregularTransformation class manages forward and reverse transformations in an irregular rectangular coordinate space.

Synopsis

Header file:		ncarg/hlu/IrregularTransformation.h
Class name:		irregularTransformationClass
Class pointer:		<Not referenceable>
Fortran class function:	<Not referenceable>
Superclass:		Transformation
Composite classes:	<None>

Class-defined types

Type name:		NhlTAxisType
Definition:
typedef enum _NhlAxisType {
	NhlIRREGULARAXIS	= 0,	/* "IrregularAxis"	*/
	NhlLINEARAXIS		= 1,	/* "LinearAxis"		*/
	NhlLOGAXIS		= 2	/* "LogAxis"		*/
} NhlAxisType;


Resources

Local resources

IrregularTransformation resources are accessible only through Transform class objects that use the IrregularTransformation to manage transformations to and from data space. These include:

+---------------------------------------------------------------+
|		IrregularTransformation Resource Set		|
|---------------------------------------------------------------|
| NAME				TYPE			ACCESS	|
|	CLASS				DEFAULT			|
|===============================================================|
| trXAxisType			NhlTAxisType		RCSG	|
|	TrXAxisType			"LinearAxis"		|
|---------------------------------------------------------------|
| trXCoordPoints		NhlTFloatGenArray	RCSG	|
|	TrXCoordPoints			NULL			|
|---------------------------------------------------------------|
| trXInterPoints		NhlTFloatGenArray	RCSG	|
|	TrXInterPoints			NULL			|
|---------------------------------------------------------------|
| trXTensionF			NhlTFloat		RCSG	|
|	TrXTensionF			2.0			|
|---------------------------------------------------------------|
| trXSamples			NhlTInteger		RCSG	|
|	TrXSamples			9			|
|---------------------------------------------------------------|
| trYAxisType			NhlTAxisType		RCSG	|
|	TrYAxisType			"LinearAxis"		|
|---------------------------------------------------------------|
| trYCoordPoints		NhlTFloatGenArray	RCSG	|
|	TrYCoordPoints			NULL			|
|---------------------------------------------------------------|
| trYInterPoints		NhlTFloatGenArray	RCSG	|
|	TrYInterPoints			NULL			|
|---------------------------------------------------------------|
| trYTensionF			NhlTFloat		RCSG	|
|	TrYTensionF			2.0			|
|---------------------------------------------------------------|
| trYSamples			NhlTInteger		RCSG	|
|	TrYSamples			9			|
+---------------------------------------------------------------+

Composite resources

The IrregularTransformation class has no composite class objects.

Superclass resources

You can set all resources defined by the superclasses of the IrregularTransformation object class, including:


Description

The IrregularTransformation provides transformations to and from a rectangular irregularly gridded coordinate space for Transform class objects. The transformations are defined using continuous spline approximations of externally supplied arrays containing monotonically increasing or decreasing coordinate values. Either axis may also be specified as linear or logarithmic. Therefore, IrregularTransformation provides a superset of the functionality available to the LogLinTransformation class.

You do not create objects of the IrregularTransformation class directly. Transform objects that use a IrregularTransformation child, however, generally provide controlled access to some or all of its resources. Its Transformation superclass provides the basic resources for specifying the coordinate extent and direction. If you specify an axis as irregular and supply a monotonic coordinate array, IrregularTransformation restricts the values allowed for the extent resources to the range implied by the first and last elements of the array.

Although the IrregularTransformation provides resources for setting the coordinate array values (trXCoordPoints and trYCoordPoints), most Transform objects do not allow direct access to them. Usually these arrays are set automatically based on values contained in a currently associated data object. For example, ContourPlot sets them using the ScalarField resources sfXArray and sfYArray. VectorPlot and StreamlinePlot use the corresponding VectorField resources vfXArray and vfYArray. XyPlot has explicit array resources of its own: xyXIrregularPoints and xyYIrregularPoints. On the other hand, IrregularPlot, which has no associated data objects, allows unrestricted access to all resources belonging to the IrregularTransformation class.


Support functions

There are no special support functions defined for the IrregularTransformation class or its superclass.

Status

2. Irregular transformations may fail if the values of trXCoordPoints or trYCoordPoints represent samples of a transformation that is "too" irregular. What constitutes a "too" irregular transformation requires further investigation.


See also