This task returns a grid definition from an array of rasters whose spatial extent encompasses all of the rasters.

The output grid definition can be used as input to tasks such as BuildLayerStack, RegridRaster, and RegridRasterSeries.

Example


This example creates a grid definition that is based on the geometric union of two different spatial grids. The images in the two grids are available from our ENVI Tutorials web page. Click the API Gridding Examples link to download the .zip file to your machine, then unzip the files. Update the file references in the example with the correct locations.

  • MODIS Land Surface Temperature (MOD11_L2) swath image from 07 March 2009, georeferenced to a UTM Zone 54 coordinate system using ENVI's Georeference MODIS tool, corrected for bowtie artifacts, spatially subsetted, and scaled by 0.02 so that the pixel values are in Kelvins.
  • Suomi NPP VIIRS Land Surface Temperature EDR image from 07 March 2014, georeferenced to a Geographic Lat/Lon (WGS-84) coordinate system, and spatially subsetted.

Since the first input raster is in a UTM Zone 54 coordinate system, that will be the coordinate system of the output grid definition.

; Start the application
e = ENVI()
 
; Open the MODIS LST raster
File1 =  'MODIS_LST_2009-03-07.dat'
MODISRaster = e.OpenRaster(File1)
 
; Open the Suomi NPP VIIRS LST raster
File2 = 'VIIRSLST2014-03-07.dat'
VIIRSRaster = e.OpenRaster(File2)
 
; Get the task from the catalog of ENVITasks
Task = ENVITask('CalculateGridDefinitionFromRasterUnion')
 
; Define inputs
Task.INPUT_RASTERS = [MODISRaster, VIIRSRaster]
 
; Run the task
Task.Execute
 
; Create a layer Stack
LayerTask = ENVITask('BuildLayerStack')
LayerTask.INPUT_RASTERS = [MODISRaster, VIIRSRaster]
LayerTask.GRID_DEFINITION = Task.OUTPUT_GRIDDEFINITION
LayerTask.Execute
 
; Get the collection of data objects currently available in the Data Manager
DataColl = e.Data
 
; Add the output to the Data Manager
DataColl.Add, LayerTask.OUTPUT_RASTER
 
; Display the result
View = e.GetView()
Layer = View.CreateLayer(LayerTask.OUTPUT_RASTER)
 
; Print the properties of the grid definition
Print, Task.OUTPUT_GRIDDEFINITION

Syntax


Result = ENVITask('CalculateGridDefinitionFromRasterUnion')

Input parameters (Set, Get): INPUT_RASTERS, PIXEL_SIZE

Output parameters (Get only): OUTPUT_GRIDDEFINITION

Parameters marked as "Set" are those that you can set to specific values. You can also retrieve their current values any time. Parameters marked as "Get" are those whose values you can retrieve but not set.

Input Parameters


INPUT_RASTERS (required)

Specify an array of rasters from which to calculate the grid definition. The first raster will determine the coordinate system and pixel size of the grid definition, unless they are later modified.

PIXEL_SIZE (optional)

Specify a two-element array with the [x,y] pixel size of the output grid definition.

Output Parameters


OUTPUT_GRIDDEFINITION

This is a reference to the output ENVIGridDefinition.

Methods


Execute

Parameter

ParameterNames

Properties


DESCRIPTION

DISPLAY_NAME

NAME

REVISION

TAGS

Version History


ENVI 5.5.2

Introduced

See Also


ENVITask, CalculateGridDefinitionFromRasterIntersection Task, BuildGridDefinitionFromRaster Task, BuildLayerStack Task, ENVIGridDefinition, ENVIGridDefinition::Union, ENVISpatialGridRaster, RegridRasterSeriesByUnion Task