org.n52.math
Class TerrainTriangulation

java.lang.Object
  extended by org.n52.math.TerrainTriangulation

public class TerrainTriangulation
extends java.lang.Object


Constructor Summary
TerrainTriangulation(double a, double fInv)
           
 
Method Summary
 double getEquatorRadius()
           
 double getLam()
           
 double getPhi()
           
 Vector3D getTerrainPositionVector(double lat, double lon)
           
 Vector3D getUnitEastVector(double lat, double lon)
           
 Vector3D getUnitNorthVector(double lat, double lon)
           
 Vector3D getUnitVerticalVector(double lat, double lon)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TerrainTriangulation

public TerrainTriangulation(double a,
                            double fInv)
Method Detail

getEquatorRadius

public double getEquatorRadius()

getPhi

public double getPhi()

getLam

public double getLam()
Returns:
lam (in radians) needed by SunTriangulation::getTrueSolarTime

getUnitVerticalVector

public Vector3D getUnitVerticalVector(double lat,
                                      double lon)
Parameters:
lat -
lon -
Returns:
vector of unit length defined by local terrain latlon and pointing upward, perpendicular to local ellipsoid surface thus being at right angles to local parallel and to local meridian Needed for zenith angle calculation

getUnitNorthVector

public Vector3D getUnitNorthVector(double lat,
                                   double lon)
Parameters:
lat -
lon -
Returns:
vector of unit length defined by local terrain latlon and pointing northward, tangent to local ellipsoid surface and tangent to local meridian, thus being at right angles to local parallel and to local vertical' Needed for azimuth calculation

getUnitEastVector

public Vector3D getUnitEastVector(double lat,
                                  double lon)
Parameters:
lat -
lon -
Returns:
vector of unit length defined by local terrain latlon and pointing eastward, tangent to local ellipsoid surface thus being at right angles to local meridian and to local vertical. Needed for azimuth calculation

getTerrainPositionVector

public Vector3D getTerrainPositionVector(double lat,
                                         double lon)
Parameters:
lat - latitude in degrees at terrain location
lon - longitude in degrees at terrain location
Returns:
vector from Earth center to terrain position on the ellipsoid surface and defined by ellipsoidal lat and lon