org.esa.beam.framework.datamodel
Class FXYGeoCoding

java.lang.Object
  extended by org.esa.beam.framework.datamodel.AbstractGeoCoding
      extended by org.esa.beam.framework.datamodel.FXYGeoCoding
All Implemented Interfaces:
GeoCoding

public class FXYGeoCoding
extends AbstractGeoCoding

A geo-coding based on equations. The geo-coordinates (lat, lon) and the pixel coordinates (x,y) are computed by the given functions.

Author:
Marco Peters

Constructor Summary
FXYGeoCoding(float pixelOffsetX, float pixelOffsetY, float pixelSizeX, float pixelSizeY, FXYSum xFunction, FXYSum yFunction, FXYSum latFunction, FXYSum lonFunction, Datum datum)
           
 
Method Summary
 boolean canGetGeoPos()
          Checks whether or not this geo-coding can determine the geodetic position from a pixel position.
 boolean canGetPixelPos()
          Checks whether or not this geo-coding can determine the pixel position from a geodetic position.
 FXYGeoCoding createCloneWithNewOffsetAndSize(float pixelOffsetX, float pixelOffsetY, float pixelSizeX, float pixelSizeY)
           
 void dispose()
          Releases all of the resources used by this object instance and all of its owned children.
 Datum getDatum()
          Gets the datum, the reference point or surface against which GeoPos measurements are made.
 GeoPos getGeoPos(PixelPos pixelPos, GeoPos geoPos)
          Returns the latitude and longitude value for a given pixel co-ordinate.
 FXYSum getLatFunction()
           
 FXYSum getLonFunction()
           
 float getPixelOffsetX()
           
 float getPixelOffsetY()
           
 PixelPos getPixelPos(GeoPos geoPos, PixelPos pixelPos)
          Returns the pixel co-ordinates as x/y for a given geographical position given as lat/lon.
 float getPixelSizeX()
           
 float getPixelSizeY()
           
 FXYSum getPixelXFunction()
           
 FXYSum getPixelYFunction()
           
 boolean isCrossingMeridianAt180()
          Checks whether or not the longitudes of this geo-coding cross the +/- 180 degree meridian.
 boolean transferGeoCoding(Scene srcScene, Scene destScene, ProductSubsetDef subsetDef)
          Transfers the geo-coding of the srcScene to the destScene with respect to the given subsetDef.
 
Methods inherited from class org.esa.beam.framework.datamodel.AbstractGeoCoding
createImageCRS, getGeoCRS, getImageCRS, getImageToMapTransform, getMapCRS, setGeoCRS, setImageCRS, setMapCRS
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FXYGeoCoding

public FXYGeoCoding(float pixelOffsetX,
                    float pixelOffsetY,
                    float pixelSizeX,
                    float pixelSizeY,
                    FXYSum xFunction,
                    FXYSum yFunction,
                    FXYSum latFunction,
                    FXYSum lonFunction,
                    Datum datum)
Method Detail

getPixelOffsetX

public float getPixelOffsetX()

getPixelOffsetY

public float getPixelOffsetY()

getPixelSizeX

public float getPixelSizeX()

getPixelSizeY

public float getPixelSizeY()

getPixelXFunction

public FXYSum getPixelXFunction()

getPixelYFunction

public FXYSum getPixelYFunction()

getLatFunction

public FXYSum getLatFunction()

getLonFunction

public FXYSum getLonFunction()

isCrossingMeridianAt180

public boolean isCrossingMeridianAt180()
Checks whether or not the longitudes of this geo-coding cross the +/- 180 degree meridian.

Returns:
true, if so

canGetPixelPos

public boolean canGetPixelPos()
Checks whether or not this geo-coding can determine the pixel position from a geodetic position.

Returns:
true, if so

canGetGeoPos

public boolean canGetGeoPos()
Checks whether or not this geo-coding can determine the geodetic position from a pixel position.

Returns:
true, if so

getPixelPos

public PixelPos getPixelPos(GeoPos geoPos,
                            PixelPos pixelPos)
Returns the pixel co-ordinates as x/y for a given geographical position given as lat/lon.

Parameters:
geoPos - the geographical position as lat/lon.
pixelPos - an instance of Point to be used as retun value. If this parameter is null, the method creates a new instance which it then returns.
Returns:
the pixel co-ordinates as x/y

getGeoPos

public GeoPos getGeoPos(PixelPos pixelPos,
                        GeoPos geoPos)
Returns the latitude and longitude value for a given pixel co-ordinate.

Parameters:
pixelPos - the pixel's co-ordinates given as x,y
geoPos - an instance of GeoPos to be used as retun value. If this parameter is null, the method creates a new instance which it then returns.
Returns:
the geographical position as lat/lon.

getDatum

public Datum getDatum()
Gets the datum, the reference point or surface against which GeoPos measurements are made.

Returns:
the datum

dispose

public void dispose()
Releases all of the resources used by this object instance and all of its owned children. Its primary use is to allow the garbage collector to perform a vanilla job.

This method should be called only if it is for sure that this object instance will never be used again. The results of referencing an instance of this class after a call to dispose() are undefined.


transferGeoCoding

public boolean transferGeoCoding(Scene srcScene,
                                 Scene destScene,
                                 ProductSubsetDef subsetDef)
Transfers the geo-coding of the srcScene to the destScene with respect to the given subsetDef.

Specified by:
transferGeoCoding in class AbstractGeoCoding
Parameters:
srcScene - the source scene
destScene - the destination scene
subsetDef - the definition of the subset, may be null
Returns:
true, if the geo-coding could be transferred.

createCloneWithNewOffsetAndSize

public FXYGeoCoding createCloneWithNewOffsetAndSize(float pixelOffsetX,
                                                    float pixelOffsetY,
                                                    float pixelSizeX,
                                                    float pixelSizeY)


Copyright © 2002-2013 Brockmann Consult GmbH. All Rights Reserved.