org.deegree.cs.transformations.polynomial
Class PolynomialTransformation
java.lang.Object
org.deegree.cs.CRSIdentifiable
org.deegree.cs.transformations.Transformation
org.deegree.cs.transformations.polynomial.PolynomialTransformation
- All Implemented Interfaces:
- Object, TypedObjectNode, CRSResource
- Direct Known Subclasses:
- LeastSquareApproximation
public abstract class PolynomialTransformation
- extends Transformation
PolynomialTransformation
is the base class for all polynomial transformations.
- Version:
- $Revision: 30120 $, $Date: 2011-03-22 10:04:15 +0100 (Tue, 22 Mar 2011) $
- Author:
- Rutger Bezema, last edited by: $Author: aschmitz $
Methods inherited from class org.deegree.cs.transformations.Transformation |
areInverse, canTransform, contains, copyTransformation, createFromTo, doTransform, doTransform, equalOnCRS, equals, getImplementationName, getSourceCRS, getSourceDimension, getTargetCRS, getTargetDimension, getTransformationName, getTransformationPath, setSourceCRS |
Methods inherited from class org.deegree.cs.CRSIdentifiable |
addAreaOfUse, addName, checkForNullObject, checkForNullObject, checkForNullObject, getAreaOfUse, getAreaOfUseBBox, getAreasOfUse, getCode, getCodeAndName, getCodes, getDescription, getDescriptions, getId, getName, getNames, getOrignalCodeStrings, getVersion, getVersions, hasCode, hashCode, hasId, hasIdOrName, setDefaultAreaOfUse, setDefaultDescription, setDefaultId, setDefaultName, setDefaultVersion, toString |
PolynomialTransformation
public PolynomialTransformation(List<Double> firstParameters,
List<Double> secondParameters,
ICRS sourceCRS,
ICRS targetCRS,
CRSResource id)
- Parameters:
firstParameters
- the parameters for thesecondParameters
- sourceCRS
- targetCRS
- id
- an identifiable instance containing information about this transformation
getOrder
public abstract int getOrder()
- Returns:
- the order of the Polynomial used for this transformation.
createVariables
public abstract float[][] createVariables(List<javax.vecmath.Point3d> originalPoints,
List<javax.vecmath.Point3d> projectedPoints,
int polynomalOrder)
- Parameters:
originalPoints
- of the projectionprojectedPoints
- the 'function' valuespolynomalOrder
- the order of the polynomial function to use.
- Returns:
- the variables the polynomial used for this transformation.
applyPolynomial
public abstract List<javax.vecmath.Point3d> applyPolynomial(List<javax.vecmath.Point3d> srcPoints)
throws TransformationException
- The central method, which actually transforms the points by applying the implemented polynomial.
- Parameters:
srcPoints
- to transform
- Returns:
- the transformed points.
- Throws:
TransformationException
- if for some reason one of the incoming points could not be transformed.
getFirstParams
public List<Double> getFirstParams()
- Returns:
- the Parameters for the calculation of the first coordinate.
getSecondParams
public List<Double> getSecondParams()
- Returns:
- the Parameters for the calculation of the second coordinate.
doTransform
public final List<javax.vecmath.Point3d> doTransform(List<javax.vecmath.Point3d> srcPts)
throws TransformationException
- Description copied from class:
Transformation
- Do a transformation, e.g. the incoming data will be transformed into other coordinates.
- Specified by:
doTransform
in class Transformation
- Parameters:
srcPts
- the points which must be transformed, expected are following values either, long_1, lat_1, height_1,
long_2, lat_2, height_2. or long_1, lat_1, long_2, lat_2
- Returns:
- the transformed points
- Throws:
TransformationException
- if a transform could not be calculated.
inverse
public void inverse()
- Description copied from class:
Transformation
- This method flags the transformation about it's state. If this transformation was inverse calling this method
will result in a forward transformation and vice versa.
- Overrides:
inverse
in class Transformation
isIdentity
public boolean isIdentity()
- Specified by:
isIdentity
in class Transformation
- Returns:
- true if this transformation doesn't transform the incoming points. (e.g. is the id. matrix)
isInverseTransform
public boolean isInverseTransform()
- Overrides:
isInverseTransform
in class Transformation
- Returns:
- true if the doInverseTransform method should be called, false otherwise.
Copyright © 2011. All Rights Reserved.