public class TLcdCompositeRasterReferencer extends Object implements ILcdRasterReferencer
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);
Constructor and Description |
---|
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.
|
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.
|
Modifier and Type | Method and Description |
---|---|
ILcdRasterReference |
createRasterReference(int aImageWidth,
int aImageHeight,
ILcdPoint[] aImageTiePoints,
ILcdModelReference aModelReference,
ILcdPoint[] aModelTiePoints,
ILcdPoint[] aMappedModelTiePointsSFCT)
Creates a raster reference for an image of a given size, based on pairs of
tie points.
|
public TLcdCompositeRasterReferencer(ILcdRasterReferencer aRasterReferencer1, ILcdRasterReferencer aRasterReferencer2)
aRasterReferencer1
- the raster referencer that will be tried first.aRasterReferencer2
- the raster referencer that will be tried if the
first one fails.public TLcdCompositeRasterReferencer(ILcdRasterReferencer[] aRasterReferencers)
aRasterReferencers
- the raster referencers that will be tried
subsequently.public ILcdRasterReference createRasterReference(int aImageWidth, int aImageHeight, ILcdPoint[] aImageTiePoints, ILcdModelReference aModelReference, ILcdPoint[] aModelTiePoints, ILcdPoint[] aMappedModelTiePointsSFCT)
ILcdRasterReferencer
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.
createRasterReference
in interface ILcdRasterReferencer
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.