|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface IImageServer
Provides access to members that control an image server.
This interface is new at ArcGIS 9.3.
You can get information about an image service describing the properties of the service, you can also get the pixel data from the service the way you want it, for instance you can ask the data to be in certain extent, band combination, compression type, etc. To export the data from a service in a well-known raster format (e.g. BMP, PNG) either as MIME data or URL, you can use ExportImage. To get the data from a service as a byte array, you can use GetImage.
| Method Summary | |
|---|---|
IImageResult |
exportImage(IGeoImageDescription pImageDescription,
IImageType pImageType)
Exports into a well-known image for a given image description. |
byte[] |
getImage(IGeoImageDescription pImageDescription)
Gets an image for a given image description. |
IImageServiceInfo |
getServiceInfo()
The properties of the image service provided. |
float |
getVersion()
The Image Server version number. |
| Method Detail |
|---|
float getVersion()
throws IOException,
AutomationException
Returns the version number of the Image Server
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
IImageServiceInfo getServiceInfo()
throws IOException,
AutomationException
Returns information of the image service. The information includes description, spatial reference, extent, pixel size about the image data.
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
byte[] getImage(IGeoImageDescription pImageDescription)
throws IOException,
AutomationException
Gets the image data in byte array from the image service using the given GeoImageDescription.
Gets the image data for a given image description. The returned image data contains first pixel values and then followed by NoData (transparency) bit mask, i.e. <pixels><mask>. The pixel values are organized in a band interleaved by pixel format, as the following:
v[0,0,0], v[1,0,0], v[2,0,0],…, v[nBands-1,0,0],
v[0,0,1], v[1,0,1], v[2,0,1],…, v[nBands-1, 0,1], …,
v[0,nRows-1,nCols-1], …, v[nBands-1,nRows-1,nCols-1]
PT_U2 1
PT_U4 1
PT_UCHAR 1
PT_CHAR 1
PT_USHORT 2
PT_SHORT 2
PT_ULONG 4
PT_LONG 4
PT_FLOAT 4
PT_DOUBLE 8
The location of the pixel at band b, row I, and column j can be calculated using the following formula:
location = ((i*nCols+j)*nBands+b)*pixelsize (in bytes)
The pixel data are always in Intel (Little Endian) byte order. For pixel types of more than 1 byte, byte swapping may be needed.
The NoData mask is a bit mask, one bit per pixels of all bands, with no padding to the byte boundary for a row. Value 1 indicates the pixel is valid, and 0 indicates NoData. The mask value for a pixel at row I and column j can be calculated as the following:
Bit[] = {0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01}
l = i*nCols+j
m[l/8] & Bit[l%8]
The NoData immediately follows pixel data. The size of NoData mask in bytes is (nCols*nRows+7)/8.
The NoData mask is optional. If the total size of the returned image data greater than the pixel data size i.e. nRows*nCols*nBands*pixelsize, then the NoData mask is present.
If LZ77 compressed, the returned image data must be uncompressed (zlib). The uncompressed image data follow the same format as above.
If JPEG compressed, the returned image data are organized as JPEG data stream followed NoData mask, and followed by the size of the JPEG stream, i.e. <JPEG><mask><size>. The NoData mask is the same format as above, but is LZ77 compressed. The JPEG data stream size <size> is a 4-byte integer in Intel byte order.
pImageDescription - A reference to a com.esri.arcgis.carto.IGeoImageDescription (in)
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.IGeoImageDescription
IImageResult exportImage(IGeoImageDescription pImageDescription,
IImageType pImageType)
throws IOException,
AutomationException
Exports image data from the image server using the GeoImageDescription and ImagType.
Exports a well-known image for a given image description. The supported formats include JPEG (plus transparency mask), PNG, BMP, and TIFF. The JPEG (plus transparency mask) format is the same as the JPEG compressed image returned from GetImage.
pImageDescription - A reference to a com.esri.arcgis.carto.IGeoImageDescription (in)pImageType - A reference to a com.esri.arcgis.carto.IImageType (in)
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.IGeoImageDescription
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||