GeoTools
  1. GeoTools
  2. GEOT-1849

Tolerance error when using EPSG:3408

    Details

    • Type: Bug Bug
    • Status: Open Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 2.5-M2
    • Fix Version/s: 2.7.6
    • Component/s: referencing
    • Labels:
      None
    • Environment:
      Windows XP, Java 1.6

      Description

      Using gt2-referencing-2.5-SNAPSHOT.jar and gt2-metadata-2.5-SNAPSHOT.jar (provided by Martin Desruisseaux on May 23 2008), and taking other required jars from the 2.5M2 release of GeoTools I was unable to perform a coordinate transform from EPSG:4236 (WGS84 lat-lon) to EPSG:3408 (NSIDC EASE-Grid North). Stack trace is as follows:

      Unexpected error of type org.geotools.referencing.operation.projection.ProjectionException: Tolerance error.
      org.geotools.referencing.operation.projection.LambertAzimuthalEqualArea$Spherical.inverseTransformNormalized(LambertAzimuthalEqualArea.java:436)
      org.geotools.referencing.operation.projection.MapProjection$Inverse.transform(MapProjection.java:969)
      org.geotools.referencing.operation.projection.MapProjection$Inverse.transform(MapProjection.java:1024)
      org.geotools.referencing.operation.transform.ConcatenatedTransformDirect.transform(ConcatenatedTransformDirect.java:81)
      

      I do not have the precise coordinate values that caused this error but I think this error occurs near the edge of, or perhaps outside, the extent of EPSG:3408. This projection will not show the whole globe and so it is possible that the error occurs when trying to project a point (perhaps in the Southern Hemisphere) that is not representable in this CRS.

        Issue Links

          Activity

          Hide
          Jon Blower added a comment -
          This simple JUnit4 test case reproduces the problem and reveals that the ToleranceError occurs only when the latitude of the source point in the transformation (from lat-lon to the EASE Grid) is -90 degrees.
          Show
          Jon Blower added a comment - This simple JUnit4 test case reproduces the problem and reveals that the ToleranceError occurs only when the latitude of the source point in the transformation (from lat-lon to the EASE Grid) is -90 degrees.
          Hide
          Martin Desruisseaux added a comment -
          Geotidy fixed a major bug in the Spherical case of LambertAzimuthalEqualArea. The new implementation also avoid tolerance exception when possible.

          We need to test again using the attached test case for making sure that everything is okay now. Geotidy will become the new referencing module of GeoTools (maybe numbered 3.0) is the community accepts it.
          Show
          Martin Desruisseaux added a comment - Geotidy fixed a major bug in the Spherical case of LambertAzimuthalEqualArea. The new implementation also avoid tolerance exception when possible. We need to test again using the attached test case for making sure that everything is okay now. Geotidy will become the new referencing module of GeoTools (maybe numbered 3.0) is the community accepts it.

            People

            • Assignee:
              Unassigned
              Reporter:
              Jon Blower
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated: