Welcome to the Harris Geospatial product documentation center. Here you will find reference guides, help documents, and product libraries.


  >  Docs Center  >  ENVI API  >  Crop Science  >  ENVIAgZones::Save

ENVIAgZones::Save

ENVIAgZones::Save

The Save method writes the contents of an ENVIAgZones object to an IDL save file (.sav).

This method is part of ENVI Crop Science, which requires a separate license and installation.

Example


This example runs ENVIAgCreateZonesTask to create a classification raster and a zones object named outZones. It changes the values of the CLASS_NAMES and APPLICATION_CATEGORY_NAMES attributes, then it saves the zones object.

; Start the application
e = ENVI(/HEADLESS)
 
; Open a DEM file
File = Filepath('FieldDEM.dat', $
  Subdir=['data','crop_science'], $
  Root_Dir=e.Root_Dir)
Raster = e.OpenRaster(File)
 
; Get the task from the catalog of ENVITasks
Task = ENVITask('AgCreateZones')
 
; Define inputs
Task.INPUT_RASTER = Raster
Task.MINIMUM_AREA = 2023
Task.NUMBER_OF_APPLICATION_CATEGORIES = 5
 
; Define outputs
Task.OUTPUT_RASTER_URI = e.GetTemporaryFilename()
 
; Run the task
Task.Execute
 
; Get the zones object
outZones = Task.OUTPUT_ZONES
 
; Rename the application category names
newAppCatNames = ['Low', 'Medium', 'High']
zoneNames = outZones.CLASS_NAME
appCatIDs = outZones.CAT_ID
 
FOR i=1, N_ELEMENTS(newAppCatNames)-1 DO $
  idx = WHERE(appCatIDs EQ 1)
  zoneNames[idx] = (zoneNames[idx]).Replace( $
    'Application Category ' + STRTRIM(i,2), $
    newAppCatNames[i-1])
 
; Create a new zones object with the modified attributes
outZones2 = ENVIAgZones(ZONES=outZones, $
  APPLICATION_CATEGORY_NAMES=newAppCatNames, $
  CLASS_NAME=zoneNames)
 
; Save the zones object
outFile = e.GetTemporaryFilename('sav')
outZones2.Save, URI=outFile

Syntax


ENVIAgZones.Save [, Keywords=value]

Arguments


None

Keywords


ERROR (optional)

Set this keyword to a named variable that will contain any error message issued during execution of this routine. If no error occurs, the ERROR variable will be set to a null string (''). If an error occurs and the routine is a function, then the function result will be undefined.

When this keyword is not set and an error occurs, ENVI returns to the caller and execution halts. In this case, the error message is contained within !ERROR_STATE and can be caught using IDL's CATCH routine. See IDL Help for more information on !ERROR_STATE and CATCH.

See the Manage Errors topic in ENVI Help for more information on error handling.

URI (required)

Set this keyword to a fully qualified path and filename where the ENVIAgZones object will be saved.

Version History


1.1

Introduced

See Also


ENVIAgZones, ENVIAgCreateZonesTask, ENVIAgConvertZonesToShapefileTask



© 2018 Harris Geospatial Solutions, Inc. |  Legal
My Account    |    Store    |    Contact Us