|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.deegree.cs.CRSIdentifiable org.deegree.cs.transformations.Transformation org.deegree.cs.transformations.coordinate.MatrixTransform
public class MatrixTransform
The MatrixTransform
class allows transformations using matrices. Although technically n × m
matrices are possible, at the moment only 2 × 2, 3 × 3 and 4 × 4 matrices are supported.
Constructor Summary | |
---|---|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.GMatrix matrix)
Construct a transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.GMatrix matrix,
CRSResource id)
Construct a transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.Matrix3d matrix)
Construct a 3d transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.Matrix3d matrix,
CRSResource id)
Construct a 3d transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.Matrix4d matrix)
Construct a 4d transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.Matrix4d matrix,
CRSResource id)
Construct a 4d transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.Matrix4d matrix,
String transformationName)
Construct a 4d transform. |
|
MatrixTransform(ICRS source,
ICRS target,
javax.vecmath.Matrix4d matrix,
String transformationName,
CRSResource id)
Construct a 4d transform. |
Method Summary | |
---|---|
static Transformation |
createAllignMatrixTransform(ICRS sourceCRS,
ICRS targetCRS)
Create a swap matrix to align the axis of the given coordinate systems and create a tranformation for the result. |
static MatrixTransform |
createMatrixTransform(ICRS sourceCRS,
ICRS targetCRS,
Matrix matrix)
Creates a Matrix transform from a matrix. |
List<javax.vecmath.Point3d> |
doTransform(List<javax.vecmath.Point3d> srcPts)
Do a transformation, e.g. the incoming data will be transformed into other coordinates. |
boolean |
equals(Object object)
|
int |
getDimSource()
|
int |
getDimTarget()
|
String |
getImplementationName()
|
javax.vecmath.GMatrix |
getMatrix()
|
int |
hashCode()
Implementation as proposed by Joshua Block in Effective Java (Addison-Wesley 2001), which supplies an even distribution and is relatively fast. |
boolean |
isIdentity()
|
Methods inherited from class org.deegree.cs.transformations.Transformation |
---|
areInverse, canTransform, contains, copyTransformation, createFromTo, doTransform, doTransform, equalOnCRS, getSourceCRS, getSourceDimension, getTargetCRS, getTargetDimension, getTransformationName, getTransformationPath, inverse, isInverseTransform, 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, hasId, hasIdOrName, setDefaultAreaOfUse, setDefaultDescription, setDefaultId, setDefaultName, setDefaultVersion, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public MatrixTransform(ICRS source, ICRS target, javax.vecmath.GMatrix matrix, CRSResource id)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- id
- an identifiable instance containing information about this transformationpublic MatrixTransform(ICRS source, ICRS target, javax.vecmath.GMatrix matrix)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- public MatrixTransform(ICRS source, ICRS target, javax.vecmath.Matrix3d matrix, CRSResource id)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- id
- an identifiable instance containing information about this transformationpublic MatrixTransform(ICRS source, ICRS target, javax.vecmath.Matrix3d matrix)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- public MatrixTransform(ICRS source, ICRS target, javax.vecmath.Matrix4d matrix, CRSResource id)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- id
- an identifiable instance containing information about this transformationpublic MatrixTransform(ICRS source, ICRS target, javax.vecmath.Matrix4d matrix)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- public MatrixTransform(ICRS source, ICRS target, javax.vecmath.Matrix4d matrix, String transformationName, CRSResource id)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- transformationName
- the 'optional' name of the transformation, which is useful to specify the 'helmert' transformation.id
- an identifiable instance containing information about this transformationpublic MatrixTransform(ICRS source, ICRS target, javax.vecmath.Matrix4d matrix, String transformationName)
source
- the source coordinate systemtarget
- the target coordinate system.matrix
- transformationName
- the 'optional' name of the transformation, which is useful to specify the 'helmert' transformation.Method Detail |
---|
public List<javax.vecmath.Point3d> doTransform(List<javax.vecmath.Point3d> srcPts)
Transformation
doTransform
in class Transformation
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
public int getDimSource()
public int getDimTarget()
public boolean isIdentity()
isIdentity
in class Transformation
public boolean equals(Object object)
equals
in class Transformation
public int hashCode()
Combining the hash code(s) computed above: result = 37 * result + code;
hashCode
in class CRSIdentifiable
Object.hashCode()
public final javax.vecmath.GMatrix getMatrix()
public String getImplementationName()
getImplementationName
in class Transformation
public static MatrixTransform createMatrixTransform(ICRS sourceCRS, ICRS targetCRS, Matrix matrix) throws TransformationException
sourceCRS
- used as the CRS for transforming ordinates on the matrixtargetCRS
- used as the result CRS after transforming ordinates on the matrixmatrix
- The matrix used to define the affine transform.
MatrixTransform
mapping incoming ordinates given in the sourceCRS to the targetCRS.
TransformationException
- if the matrix is not affine.public static Transformation createAllignMatrixTransform(ICRS sourceCRS, ICRS targetCRS) throws TransformationException
sourceCRS
- used as the CRS for transforming ordinates on the matrixtargetCRS
- used as the result CRS after transforming ordinates on the matrix
null
if the source and/or target are null
or no transformation is needed.
TransformationException
- if the matrix could not be created or the result is not affine.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |