The IDLnetOGCWMS::GetFeatureInfo function method retrieves a feature information file from a remote OGC WMS server and writes the file to disk. This file contains information about a specific feature. The value of the QUERYABLE tag in the structure returned by IDLnetOGCWMS::GetLayers can be used to determine if the server supports GetFeatureInfo for a particular layer. The OGC WMS server may not offer this support for every layer.
The feature file location is specified by the FEATURE_INFO_FILENAME property, and will be overwritten if this property value remains unchanged between GetFeatureInfo requests.
The URL_PATH and URL_HOSTNAME properties must be set before requesting information from a remote WMS server. You can either set these properties manually or pass a URL to the IDLnetOGCWMS::ParseUrl method prior to making a request. If you are working with a proxy server, you must also set the PROXY_HOSTNAME and PROXY_PORT properties to the correct values.
This method returns only when one of the following occur:
- Completes retrieval of information from server
- Encounters an HTTP error
- Encounters an OGC exception
- Responds to a cancel request as specified in a callback return value
You can implement a callback to return status information during the request by setting the CALLBACK_FUNCTION property. You can also use a callback to cancel a request. See Using Callbacks with the IDLnetOGCWMS Object for details. This method will throw an error if the GetFeatureInfo request fails.
Syntax
Result = Obj->[IDLnetOGCWMS::]GetFeatureInfo(Feature_Info_Request)
Return Value
The return value is a string containing the path to the file returned by this request or an empty string if no file was returned.
Arguments
Feature_Info_Request
The Feature_Info_Request argument must be a string that contains the required request parameters separated by the & character. These elements can be extracted from the structures returned by the IDLnetOGCWMS::GetLayers method, and many are the same parameters used in the IDLnetOGCWMS::GetMap request. The required elements are shown in the following table, and match those described in the OGC Web Map Service (WMS) specification. See the OGC web site (https://www.ogc.org/) for specification details.
Parameter |
Description |
SRS=namespace:identifier
|
Spatial Reference System used in 1.1.1 requests. Required.
Source: The GetMap request parameter, SRS= namespace:identifier.
|
CRS=namespace:identifier
|
Spatial Reference System used in 1.3.0 requests. Required.
Source: The GetMap request parameter, CRS= namespace:identifier.
|
BBOX=minx, miny, maxx, maxy
|
A coverage subset as defined by the bounding box coordinate pairs defining corners (lower left, upper right), in SRS units. Required.
Source: The GetMap request parameter, BBOX=minx, miny, maxx, maxy.
|
WIDTH=output_width
|
Width of map image in pixels. Required.
Source: The GetMap request parameter, WIDTH=output_width.
|
HEIGHT=output_height
|
Height of map image in pixels. Required.
Source: The GetMap request parameter, HEIGHT=output_height.
|
QUERY_LAYERS=layer_list
|
Comma-separated list of one or more map layers. Required.
Source: Layer names must be one or more of the layer names specified in the LAYERS=layer_list parameter of the IDLnetOGCWMS::GetMap call.
|
INFO_FORMAT=format
|
Return format information of feature. Required.
Source: In the Main Layer Structure, see FEATURE_FORMAT.
|
X=pixel_column |
X-coordinate of feature in pixels in map coordinate system. Valid in version 1.1.1 only. Required.
|
Y=pixel_row |
Y-coordinate of feature in pixels in map coordinate system. Valid in version 1.1.1 only. Required.
|
I=pixel_column |
I-coordinate of feature in pixels in map coordinate system. Valid in version 1.3.0 only. Required.
|
J=pixel_row |
J-coordinate of feature in pixels in map coordinate system. Valid in version 1.3.0 only. Required.
|
FEATURE_COUNT=number
|
Number of features about which to return information (defaults to 1). Optional
|
Keywords
None
Examples
See Sample WMS Browser.
Version History
See Also
IDLnetOGCWMS::GetLayers, IDLnetOGCWMS::GetMap