deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official

org.deegree.crs.transformations.coordinate
Class GeocentricTransform

java.lang.Object
  extended by org.deegree.crs.CRSIdentifiable
      extended by org.deegree.crs.transformations.Transformation
          extended by org.deegree.crs.transformations.coordinate.CRSTransformation
              extended by org.deegree.crs.transformations.coordinate.GeocentricTransform

public class GeocentricTransform
extends CRSTransformation

The GeocentricTransform class is used to create a transformation between a geocentric CRS (having lat-lon coordinates) and it's geodetic CRS (having x-y-z) coordinates and vice versa.

Version:
$Revision: 18171 $, $Date: 2009-06-17 16:00:07 +0200 (Mi, 17 Jun 2009) $
Author:
Rutger Bezema, last edited by: $Author: mschneider $

Constructor Summary
GeocentricTransform(CoordinateSystem source, GeocentricCRS target)
           
GeocentricTransform(CoordinateSystem source, GeocentricCRS target, CRSIdentifiable id)
           
 
Method Summary
 List<javax.vecmath.Point3d> doTransform(List<javax.vecmath.Point3d> srcPts)
          Do a transformation, e.g. the incoming data will be transformed into other coordinates.
 String getImplementationName()
           
 double getSemiMajorAxis()
           
 double getSemiMinorAxis()
           
 boolean isIdentity()
           
protected  void toGeoCentric(List<javax.vecmath.Point3d> srcPts)
          Converts geographic (longitude, latitude, height) to cartesian (x,y,z) coordinates.
protected  void toGeographic(List<javax.vecmath.Point3d> srcPts)
          Converts geocentric coordinates (x, y, z) to geodetic coordinates (longitude, latitude, height), according to the current ellipsoid parameters.
 
Methods inherited from class org.deegree.crs.transformations.Transformation
areInverse, canTransform, createFromTo, doTransform, doTransform, getSourceCRS, getSourceDimension, getTargetCRS, getTargetDimension, getTransformationName, getTransformationPath, inverse, isInverseTransform, setSourceCRS
 
Methods inherited from class org.deegree.crs.CRSIdentifiable
addAreaOfUse, addName, checkForNullObject, checkForNullObject, checkForNullObject, equals, getAreaOfUse, getAreaOfUseBBox, getAreasOfUse, getCode, getCodeAndName, getCodes, getDescription, getDescriptions, getName, getNames, getOrignalCodeStrings, getVersion, getVersions, hasCode, hasId, hasIdOrName, setDefaultAreaOfUse, setDefaultDescription, setDefaultId, setDefaultName, setDefaultVersion, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GeocentricTransform

public GeocentricTransform(CoordinateSystem source,
                           GeocentricCRS target,
                           CRSIdentifiable id)
Parameters:
source - the geographic crs.
target - the geocentric crs.
id - an identifiable instance containing information about this transformation

GeocentricTransform

public GeocentricTransform(CoordinateSystem source,
                           GeocentricCRS target)
Parameters:
source - the geographic crs.
target - the geocentric crs.
Method Detail

doTransform

public List<javax.vecmath.Point3d> doTransform(List<javax.vecmath.Point3d> srcPts)
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

toGeographic

protected void toGeographic(List<javax.vecmath.Point3d> srcPts)
Converts geocentric coordinates (x, y, z) to geodetic coordinates (longitude, latitude, height), according to the current ellipsoid parameters. The method used here is derived from "An Improved Algorithm for Geocentric to Geodetic Coordinate Conversion", by Ralph Toms, Feb 1996 UCRL-JC-123138.

Parameters:
srcPts - the points which must be transformed.

toGeoCentric

protected void toGeoCentric(List<javax.vecmath.Point3d> srcPts)
Converts geographic (longitude, latitude, height) to cartesian (x,y,z) coordinates.

Parameters:
srcPts - to convert.

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)

getSemiMajorAxis

public final double getSemiMajorAxis()
Returns:
the semiMajorAxis.

getSemiMinorAxis

public final double getSemiMinorAxis()
Returns:
the semiMinorAxis.

getImplementationName

public String getImplementationName()
Specified by:
getImplementationName in class Transformation
Returns:
the name of the transformation.

deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official

an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://www.deegree.org

]]>