Class TLcdCompositeRasterReferencer

java.lang.Object
com.luciad.format.raster.reference.TLcdCompositeRasterReferencer
All Implemented Interfaces:
ILcdRasterReferencer

public class TLcdCompositeRasterReferencer extends Object implements ILcdRasterReferencer
This implementation of ILcdRasterReferencer delegates the computation of the raster reference to a given list of ILcdRasterReferencer instances, returning the result of the first successful one.

This class is useful in combination with TLcdResidualErrorCheckingRasterReferencer, which can check if the referencing attempt of a first ILcdRasterReferencer is sufficiently accurate, and otherwise proceed with a second ILcdRasterReferencer. For instance, with a maximum average residual error of 100 pixels for the first referencer:


 ILcdRasterReferencer referencer1 = ...
 ILcdRasterReferencer referencer2 = ...
 ILcdRasterReferencer referencer =
   new TLcdCompositeRasterReferencer(
     new TLcdResidualErrorCheckingRasterReferencer(100, referencer1),
     referencer2);
 

Similarly, this class is useful in combination with TLcdTiePointCheckingRasterReferencer, which can check if there are a sufficient number of tie points for referencing with a first ILcdRasterReferencer, and otherwise proceed with a second ILcdRasterReferencer. For instance, with a minimum of 4 tie points for the first referencer:


 ILcdRasterReferencer referencer1 = ...
 ILcdRasterReferencer referencer2 = ...
 ILcdRasterReferencer referencer =
   new TLcdCompositeRasterReferencer(
     new TLcdTiePointCheckingRasterReferencer(4, referencer1),
     referencer2);
 
Since:
8.1
  • Constructor Details

    • TLcdCompositeRasterReferencer

      public TLcdCompositeRasterReferencer(ILcdRasterReferencer aRasterReferencer1, ILcdRasterReferencer aRasterReferencer2)
      Creates a new TLcdCompositeRasterReferencer that will delegate the computation of raster references to the given two ILcdRasterReferencer instances, returning the result of the first successful one.
      Parameters:
      aRasterReferencer1 - the raster referencer that will be tried first.
      aRasterReferencer2 - the raster referencer that will be tried if the first one fails.
    • TLcdCompositeRasterReferencer

      public TLcdCompositeRasterReferencer(ILcdRasterReferencer[] aRasterReferencers)
      Creates a new TLcdCompositeRasterReferencer that will delegate the computation of raster references to the given list of ILcdRasterReferencer instances, returning the result of the first successful one.
      Parameters:
      aRasterReferencers - the raster referencers that will be tried subsequently.
  • Method Details

    • createRasterReference

      public ILcdRasterReference createRasterReference(int aImageWidth, int aImageHeight, ILcdPoint[] aImageTiePoints, ILcdModelReference aModelReference, ILcdPoint[] aModelTiePoints, ILcdPoint[] aMappedModelTiePointsSFCT)
      Description copied from interface: ILcdRasterReferencer
      Creates a raster reference for an image of a given size, based on pairs of tie points.

      An optional array can be provided for obtaining the model tie points transformed to image coordinates on return. These reflect the effects of the referencing. The differences between the transformed model tie points (expressed in pixels) and the original image tie points (also expressed in pixels) provide a measure for the success of the referencing. With a perfect raster reference, the resulting model tie points correspond to the original image tie points.

      Specified by:
      createRasterReference in interface ILcdRasterReferencer
      Parameters:
      aImageWidth - the image width of the raster, expressed in pixels.
      aImageHeight - the image height of the raster, expressed in pixels.
      aImageTiePoints - the image tie points, expressed in pixels.
      aModelReference - the reference of the model tie points.
      aModelTiePoints - the model tie points corresponding to the image tie points, expressed in model coordinates.
      aMappedModelTiePointsSFCT - an optional array for obtaining the the model tie points mapped to image coordinates upon return. This parameter may be null, if the mapped points are not required.
      Returns:
      a raster reference containing a new model reference and raster bounds that try to satisfy the given tie points.