The ConvertLonLatToMap method converts a set of latitude/longitude coordinates for a vector file to map coordinates (x-eastings, y-northings) within the same coordinate system.

Example


The following example converts a set of lon/lat coordinates in a vector file to map coordinates.

; Launch the application
e = ENVI(/HEADLESS)
 
file = FILEPATH('qb_boulder_msi_vectors.shp', $
  SUBDIRECTORY = ['data'], ROOT_DIR=e.Root_Dir)
 
; Create an ENVIVector from the shapefile data
vector = e.OpenVector(file)
 
; Retrieve a reference to the coordinate system
VectCoords=vector.COORD_SYS
 
; Provide a set of lon/lat coordinates
Lon = -105.20870000D
Lat = 40.00320278D
 
VectCoords.ConvertLonLatToMap, Lon, Lat, MapX, MapY
PRINT, 'Lon/Lat coordinates: ',Lon, Lat
PRINT, 'Map coordinates: ',MapX, MapY

Syntax


ENVICoordSys.ConvertLonLatToMap, Lon, Lat, MapX, MapY

Arguments


Lon

The longitude value. You can specify a scalar or a vector of longitude values; if it is a vector, the Lat argument should also be a vector with the same number of elements:

Lon = [-123.58, -134.64]
Lat = [48.23, 49.56]

Lat

The latitude value

MapX

A named variable that contains the map x-coordinate (easting)

MapY

A named variable that contains the map y-coordinate (northing)

Keywords


ERROR

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 Manage Errors for more information on error handling in ENVI programming.

Version History


ENVI 5.1

Introduced

API Version


4.2

See Also


ENVICoordSys, ENVICoordSys::ConvertMapToLonLat