Class ObliqueMercatorProjection

All Implemented Interfaces:
Serializable, Cloneable

public class ObliqueMercatorProjection extends CylindricalProjection
Oblique Mercator Projection algorithm is taken from the USGS PROJ package.
See Also:
  • Field Details

    • TOL

      private static final double TOL
      See Also:
    • lamc

      private double lamc
    • lam1

      private double lam1
    • phi1

      private double phi1
    • lam2

      private double lam2
    • phi2

      private double phi2
    • Gamma

      private double Gamma
    • al

      private double al
    • bl

      private double bl
    • el

      private double el
    • singam

      private double singam
    • cosgam

      private double cosgam
    • sinrot

      private double sinrot
    • cosrot

      private double cosrot
    • u_0

      private double u_0
    • ellips

      private boolean ellips
    • rot

      private boolean rot
    • no_uoff

      private boolean no_uoff
  • Constructor Details

    • ObliqueMercatorProjection

      public ObliqueMercatorProjection()
    • ObliqueMercatorProjection

      public ObliqueMercatorProjection(Ellipsoid ellipsoid, double lon_0, double lat_0, double alpha, double k, double x_0, double y_0)
      Set up a projection suitable for State Plane Coordinates.
  • Method Details

    • initialize

      public void initialize()
      Description copied from class: Projection
      Initialize the projection. This should be called after setting parameters and before using the projection. This is for performance reasons as initialization may be expensive.
      Overrides:
      initialize in class Projection
    • setGamma

      public void setGamma(double gamma)
      Overrides:
      setGamma in class Projection
    • setNoUoff

      public void setNoUoff(boolean no_uoff)
      Overrides:
      setNoUoff in class Projection
    • project

      public ProjCoordinate project(double lam, double phi, ProjCoordinate xy)
      Description copied from class: Projection
      Computes the projection of a given point (i.e. from geographics to projection space). This should be overridden for all projections.
      Overrides:
      project in class Projection
      Parameters:
      lam - the geographic x ordinate (in radians)
      phi - the geographic y ordinatee (in radians)
      xy - the projected coordinate (in coordinate system units)
      Returns:
      the target coordinate
    • projectInverse

      public ProjCoordinate projectInverse(double x, double y, ProjCoordinate lp)
      Description copied from class: Projection
      Computes the inverse projection of a given point (i.e. from projection space to geographics). This should be overridden for all projections.
      Overrides:
      projectInverse in class Projection
      Parameters:
      x - the projected x ordinate (in coordinate system units)
      y - the projected y ordinate (in coordinate system units)
      lp - the inverse-projected geographic coordinate (in radians)
      Returns:
      the target coordinate
    • hasInverse

      public boolean hasInverse()
      Description copied from class: Projection
      Tests whether this projection has an inverse. If this method returns true then the Projection.inverseProject(ProjCoordinate, ProjCoordinate) and Projection.inverseProjectRadians(ProjCoordinate, ProjCoordinate) methods will return meaningful results.
      Overrides:
      hasInverse in class Projection
      Returns:
      true if this projection has an inverse
    • toString

      public String toString()
      Overrides:
      toString in class CylindricalProjection
    • equals

      public boolean equals(Object that)
      Description copied from class: Projection
      Represents quality between possible outputs of Projection.project(ProjCoordinate, ProjCoordinate). Subclasses of Projection should capture additional state that is used in the project method and delgate to base. Note: The name of the projection is not part of equality.
      Overrides:
      equals in class Projection
    • hashCode

      public int hashCode()
      Description copied from class: Projection
      Hash of those fields considered in Projection equalituy. Subclasses that override equality should override hashCode.
      Overrides:
      hashCode in class Projection