GridReprojector Class

Class for reprojecting a source grid in one coordinate system to a target grid in another coordinate system.

Both source and target grids are regular in each their coordinate system. However, the source grid may not be a regular grid in the target coordinate system, so re-gridding and interpolation is necessary.

This class is intended for reuse, i.e. reprojection weights are stored and if executing the Convert(Single, Single, Single, Single) method more than once, the stored reprojection values are reused. This is for performance reasons, since the actual reprojection can be an expensive operation.

Definition

Namespace: DHI.Projections
Assembly: DHI.Projections (in DHI.Projections.dll) Version: 24.0.0.0 (11.1.1.1111)
C#
public class GridReprojector
Inheritance
Object    GridReprojector

Constructors

Properties

DoInterpolate Bool specifying whether to interpolate (true) or take the closest value (false, default)
Reprojector Reprojector for handling datum conversions. It must convert Geo2Geo.

If the two projections share the same datum, the reprojection step can be omitted. However, the Reprojector is clever enough to do nothing in that case, so we make it anyway.

If not provided explicitly, a default Reprojector is created when setting the target. You can use this to set datum shift parameters.

Any updates to the default reprojector must be done after the target has been set and before calling Initialize.

TargetGridInfo Information on target grid. Null if not set (before calling one of the SetTarget method).

If not specified fully the target grid-info, this is first populated fully after Initialize.

Methods

Convert Convert source data to target data
ConvertBitmapData NOTE: Experimental!

Convert source data to target data, assuming source and target are 32 bit bitmap data.

When defining source and target grid, remember they must include the proper "scan width" (single row of pixels), which may be larger than the width of the bitmap image.

Currently only supports top-down bitmaps.

EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetTypeGets the Type of the current instance.
(Inherited from Object)
Initialize Initialize; calculate target grid info (if necessary), set up internal structures for fast processing of reprojections and interpolations.
Initialize(Boolean) Initialize; calculate target grid info (if necessary), set up internal structures for fast processing of reprojections and interpolations.

If only one conversion is required, set the oneTimeConvert to true, to skip setting up of internal structures. Currently only applicable if using the ConvertBitmapData(Byte, Byte) method.

SetTarget(GridReprojectorGridInfo) Fully specify the target gridinfo
SetTarget(String, Double) Define target projection string, and orientation (towards projection north).

All other properties of the target GridInfo is calculated (during Initialize) from the bounding box of source grid in the target local grid coordinate system, such that the target contains the entire area defined by the source GridInfo.

SetTarget(String, Double, Int32, Int32) Define target projection string, orientation (towards projection north), and number of grid points in the x and y direction in the target.

All other properties of the target GridInfo is calculated (during Initialize) from the bounding box of source grid in the target local grid coordinate system such that the target contains the entire area defined by the source GridInfo.

Compared to SetTarget(String, Double), this version will change the resolution of the target grid in the x and y direction.

ToStringReturns a string that represents the current object.
(Inherited from Object)

See Also