org.geotools.coverage.grid.io.imageio.geotiff
Class GeoTiffMetadata2CRSAdapter

Object
  extended by GeoTiffMetadata2CRSAdapter

public final class GeoTiffMetadata2CRSAdapter
extends Object

The GeoTiffMetadata2CRSAdapter is responsible for interpreting the metadata provided by the GeoTiffIIOMetadataDecoder for the purposes of constructing a CoordinateSystem object representative of the information found in the tags.

This class implements the flow indicated by the following diagram:

To use this class, the GeoTiffReader should create an instance with the CoordinateSystemAuthorityFactory specified by the GeoTiffFormat instance which created the reader. The image specific metadata should then be set with the appropriate accessor methods. Finally, the createCoordinateSystem() method is called to produce the CoordinateReferenceSystem object specified by the metadata.

Author:
Bryce Nordgren / USDA Forest Service, Simone Giannecchini, Daniele Romagnoli

Constructor Summary
GeoTiffMetadata2CRSAdapter(Hints hints)
          Creates a new instance of GeoTiffMetadata2CRSAdapter
 
Method Summary
 CoordinateReferenceSystem createCoordinateSystem(GeoTiffIIOMetadataDecoder metadata)
          This method creates a CoordinateReferenceSystem object from the metadata which has been set earlier.
static MathTransform getRasterToModel(GeoTiffIIOMetadataDecoder metadata)
          Create the grid to world (or raster to model) transformation for this source respecting ALWAYS the OGC PixelInCell.CELL_CENTER convention for the ImageDatum of the underlying ImageCRS.
static PixelInCell getRasterType(GeoTiffIIOMetadataDecoder metadata)
          Maps the RasterType GeoKey for this geotiff the PixelInCell
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeoTiffMetadata2CRSAdapter

public GeoTiffMetadata2CRSAdapter(Hints hints)
Creates a new instance of GeoTiffMetadata2CRSAdapter

Parameters:
hints - a map of hints to locate the authority and object factories. (can be null)
Method Detail

createCoordinateSystem

public CoordinateReferenceSystem createCoordinateSystem(GeoTiffIIOMetadataDecoder metadata)
                                                 throws Exception
This method creates a CoordinateReferenceSystem object from the metadata which has been set earlier. If it cannot create the CoordinateReferenceSystem, then one of three exceptions is thrown to indicate the error.

Returns:
the CoordinateReferenceSystem object representing the file data
Throws:
IOException - if there is unexpected data in the GeoKey tags.
FactoryException
NullPointerException - if the csAuthorityFactory, datumFactory, crsFactory or metadata are uninitialized
UnsupportedOperationException - if the coordinate system specified by the GeoTiff file is not supported.
Exception

getRasterToModel

public static MathTransform getRasterToModel(GeoTiffIIOMetadataDecoder metadata)
                                      throws GeoTiffException
Create the grid to world (or raster to model) transformation for this source respecting ALWAYS the OGC PixelInCell.CELL_CENTER convention for the ImageDatum of the underlying ImageCRS.

Parameters:
metadata - containing the information to build the MathTransform for going from grid to world.
Throws:
GeoTiffException
See Also:
this email post

getRasterType

public static PixelInCell getRasterType(GeoTiffIIOMetadataDecoder metadata)
Maps the RasterType GeoKey for this geotiff the PixelInCell

Parameters:
metadata - the metadata instance to extract the information from.
Returns:
an instance of the PixelInCell enum that capture the raster type.


Copyright © 1996-2014 Geotools. All Rights Reserved.