Package org.iogp.gigs

Class Test2202


@DisplayName("Ellipsoid") public class Test2202 extends Series2000<Ellipsoid>
Verifies reference ellipsoid parameters bundled with the geoscience software.
Test description
Test method: Compare ellipsoid definitions included in the software against the EPSG Dataset.
Test data: GIGS_lib_2202_Ellipsoid.txt and EPSG Dataset. Contains EPSG code and name for the ellipsoid, commonly encountered alternative name(s) for the same object, the value and units for the semi-major axis, the conversion ratio to metres for these units, and then a second parameter which will be either the value of the inverse flattening (unitless) or the value of the semi-minor axis (in the same units as the semi-major axis). This class additionally contain a flag to indicate that the figure is a sphere: if false the figure is an oblate ellipsoid.
Tested API: DatumAuthorityFactory.createEllipsoid(String).
Expected result: Ellipsoid definitions bundled with software, if any, should have same name and defining parameters as in the EPSG Dataset. Equivalent alternative parameters are acceptable but should be reported. The values of the parameters should be correct to at least 10 significant figures. For ellipsoids defined by Clarke and Everest, as well as those adopted by IUGG as International, several variants exist. These must be clearly distinguished. Ellipsoids missing from the software or at variance with those in the EPSG Dataset should be reported.

Usage example

in order to specify their factories and run the tests in a JUnit framework, implementers can define a subclass in their own test suite as in the example below:
public class MyTest extends Test2202 {
    public MyTest() {
        super(new MyDatumAuthorityFactory());
    }
}
Since:
1.0
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final DatumAuthorityFactory
    Factory to use for building Ellipsoid instances, or null if none.
    double
    The expected inverse flattening, or Double.NaN if the second defining parameters is not this field.
    boolean
    Indicates if the figure of the Earth is a sphere.
    double
    The expected semi-major axis length, in the units specified by the EPSG dataset.
    double
    The expected semi-minor axis length, or Double.NaN if the second defining parameters is not this field.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new test using the given factory.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Tests “Airy 1830” ellipsoid creation from the factory.
    void
    Tests “Airy Modified 1849” ellipsoid creation from the factory.
    void
    Tests “Australian National Spheroid” ellipsoid creation from the factory.
    void
    Tests “Bessel 1841” ellipsoid creation from the factory.
    void
    Tests “Bessel Modified” ellipsoid creation from the factory.
    void
    Tests “Clarke 1858” ellipsoid creation from the factory.
    void
    Tests “Clarke 1866” ellipsoid creation from the factory.
    void
    Tests “Clarke 1866 Michigan” ellipsoid creation from the factory (deprecated).
    void
    Tests “Clarke 1880 (Benoit)” ellipsoid creation from the factory.
    void
    Tests “Clarke 1880 (IGN)” ellipsoid creation from the factory.
    void
    Tests “Clarke 1880 (RGS)” ellipsoid creation from the factory.
    void
    Tests “Clarke 1880 (Arc)” ellipsoid creation from the factory.
    void
    Tests “Clarke 1880 (SGA 1922)” ellipsoid creation from the factory.
    void
    Tests “Everest 1830 (1937 Adjustment)” ellipsoid creation from the factory.
    void
    Tests “Everest 1830 (1967 Definition)” ellipsoid creation from the factory.
    void
    Tests “Everest 1830 Modified” ellipsoid creation from the factory.
    void
    Tests “GRS 1980” ellipsoid creation from the factory.
    void
    Tests “Helmert 1906” ellipsoid creation from the factory.
    void
    Tests “Indonesian National Spheroid” ellipsoid creation from the factory.
    void
    Tests “International 1924” ellipsoid creation from the factory.
    void
    Tests “Krassowsky 1940” ellipsoid creation from the factory.
    void
    Tests “NWL 9D” ellipsoid creation from the factory.
    void
    Tests “Plessis 1817” ellipsoid creation from the factory.
    void
    Tests “Struve 1860” ellipsoid creation from the factory.
    void
    Tests “War Office” ellipsoid creation from the factory.
    void
    Tests “WGS 84” ellipsoid creation from the factory.
    void
    Tests “GEM 10C” ellipsoid creation from the factory.
    void
    Tests “OSU86F” ellipsoid creation from the factory.
    void
    Tests “OSU91A” ellipsoid creation from the factory.
    void
    Tests “Clarke 1880” ellipsoid creation from the factory.
    void
    Tests “GRS 1967” ellipsoid creation from the factory.
    void
    Tests “Average Terrestrial System 1977” ellipsoid creation from the factory.
    void
    Tests “Everest (1830 Definition)” ellipsoid creation from the factory.
    void
    Tests “WGS 72” ellipsoid creation from the factory.
    void
    Tests “Everest 1830 (1962 Definition)” ellipsoid creation from the factory.
    void
    Tests “Everest 1830 (1975 Definition)” ellipsoid creation from the factory.
    void
    Tests “Bessel Namibia (GLM)” ellipsoid creation from the factory.
    void
    Tests “GRS 1980 Authalic Sphere” spheroid creation from the factory.
    void
    Tests “IAG 1975” ellipsoid creation from the factory.
    void
    Tests “GRS 1967 Modified” ellipsoid creation from the factory.
    void
    Tests “Danish 1876” ellipsoid creation from the factory.
    void
    Tests “Clarke 1866 Authalic Sphere” spheroid creation from the factory.
    void
    Tests “Hough 1960” ellipsoid creation from the factory.
    void
    Tests “PZ-90” ellipsoid creation from the factory.
    void
    Tests “Clarke 1880 (international foot)” ellipsoid creation from the factory.
    void
    Tests “Everest 1830 (RSO 1969)” ellipsoid creation from the factory.
    void
    Tests “International 1924 Authalic Sphere” spheroid creation from the factory.
    void
    Tests “Hughes 1980” ellipsoid creation from the factory.
    void
    Tests “Popular Visualisation Sphere” spheroid creation from the factory (deprecated).
    Returns the ellipsoid instance to be tested.
    double
    getSemiMajorAxis(boolean inMetres)
    Returns the length of the semi-major axis, either in the units specified by the EPSG dataset or in metres.
    double
    getSemiMinorAxis(boolean inMetres)
    Returns the length of the semi-minor axis, either in the units specified by the EPSG dataset or in metres.

    Methods inherited from class Series2000

    getVerifiableName

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • semiMajorAxis

      public double semiMajorAxis
      The expected semi-major axis length, in the units specified by the EPSG dataset. This value can also be obtained as a length in metres by a call to the getSemiMajorAxis(boolean) method. This field is set by all test methods before to create and verify the Ellipsoid instance.
      See Also:
    • semiMinorAxis

      public double semiMinorAxis
      The expected semi-minor axis length, or Double.NaN if the second defining parameters is not this field. If not NaN, the value is in the same units than semiMajorAxis. This value can be obtained as a length in metres by a call to the getSemiMinorAxis(boolean) method. This field is set by all test methods before to create and verify the Ellipsoid instance.
      See Also:
    • inverseFlattening

      public double inverseFlattening
      The expected inverse flattening, or Double.NaN if the second defining parameters is not this field. This field is set by all test methods before to create and verify the Ellipsoid instance.
    • isSphere

      public boolean isSphere
      Indicates if the figure of the Earth is a sphere. If false the figure is an oblate ellipsoid. This field is set by all test methods before to create and verify the Ellipsoid instance.
    • datumAuthorityFactory

      protected final DatumAuthorityFactory datumAuthorityFactory
      Factory to use for building Ellipsoid instances, or null if none. This is the factory used by the getIdentifiedObject() method.
  • Constructor Details

    • Test2202

      public Test2202(DatumAuthorityFactory datumFactory)
      Creates a new test using the given factory. If a given factory is null, then the tests which depend on it will be skipped.
      Parameters:
      datumFactory - factory for creating Ellipsoid instances.
  • Method Details

    • getIdentifiedObject

      public Ellipsoid getIdentifiedObject() throws FactoryException
      Returns the ellipsoid instance to be tested. When this method is invoked for the first time, it creates the ellipsoid to test by invoking the DatumAuthorityFactory.createEllipsoid(String) method with the current Series2000.code value in argument. The created object is then cached and returned in all subsequent invocations of this method.
      Specified by:
      getIdentifiedObject in class Series2000<Ellipsoid>
      Returns:
      the ellipsoid instance to test.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid instance.
    • getSemiMajorAxis

      public double getSemiMajorAxis(boolean inMetres)
      Returns the length of the semi-major axis, either in the units specified by the EPSG dataset or in metres.
      Parameters:
      inMetres - true for the length in metres.
      Returns:
      the semi-major axis length, guaranteed to be in metres if inMetres is true.
      See Also:
    • getSemiMinorAxis

      public double getSemiMinorAxis(boolean inMetres)
      Returns the length of the semi-minor axis, either in the units specified by the EPSG dataset or in metres. This method can be invoked only if the semi-minor axis length is the second defining parameter.
      Parameters:
      inMetres - true for the length in metres.
      Returns:
      the semi-minor axis length, guaranteed to be in metres if inMetres is true.
      See Also:
    • EPSG_7001

      @Test @DisplayName("Airy 1830") public void EPSG_7001() throws FactoryException
      Tests “Airy 1830” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7001
      • EPSG ellipsoid name: Airy 1830
      • Semi-major axis (a): 6377563.396 metre
      • Inverse flattening (1/f): 299.3249646
      • EPSG Usage Extent: United Kingdom
      Remarks: Original definition is a=20923713. B=20853810 feet of 1796. 1/f is given to 7 decimal places. For the 1936 retriangulation OSGB defines the relationship of 10 feet of 1796 to the International metre through ([10^0.48401603]/10) exactly = 0.3048007491.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7002

      @Test @DisplayName("Airy Modified 1849") public void EPSG_7002() throws FactoryException
      Tests “Airy Modified 1849” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7002
      • EPSG ellipsoid name: Airy Modified 1849
      • Semi-major axis (a): 6377340.189 metre
      • Inverse flattening (1/f): 299.3249646
      • EPSG Usage Extent: Ireland
      Remarks: OSGB Airy 1830 figure (ellipsoid code 7001) rescaled by 0.999965 to best fit the scale of the 19th century primary triangulation of Ireland.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7003

      @Test @DisplayName("Australian National Spheroid") public void EPSG_7003() throws FactoryException
      Tests “Australian National Spheroid” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7003
      • EPSG ellipsoid name: Australian National Spheroid
      • Alias(es) given by EPSG: ANS
      • Semi-major axis (a): 6378160.0 metre
      • Inverse flattening (1/f): 298.25
      • EPSG Usage Extent: Australia
      Remarks: Based on the GRS 1967 figure but with 1/f taken to 2 decimal places exactly. The dimensions are also used as the GRS 1967 Modified ellipsoid (see code 7050).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7041

      @Test @DisplayName("Average Terrestrial System 1977") public void EPSG_7041() throws FactoryException
      Tests “Average Terrestrial System 1977” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7041
      • EPSG ellipsoid name: Average Terrestrial System 1977
      • Semi-major axis (a): 6378135.0 metre
      • Inverse flattening (1/f): 298.257
      • EPSG Usage Extent: Canada
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7004

      @Test @DisplayName("Bessel 1841") public void EPSG_7004() throws FactoryException
      Tests “Bessel 1841” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7004
      • EPSG ellipsoid name: Bessel 1841
      • Semi-major axis (a): 6377397.155 metre
      • Inverse flattening (1/f): 299.1528128
      • EPSG Usage Extent: Numerous
      Remarks: Original Bessel definition is a=3272077.14 and b=3261139.33 toise. This used a weighted mean of values from several authors but did not account for differences in the length of the various toise: the Bessel toise is therefore of uncertain length.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7005

      @Test @DisplayName("Bessel Modified") public void EPSG_7005() throws FactoryException
      Tests “Bessel Modified” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7005
      • EPSG ellipsoid name: Bessel Modified
      • Semi-major axis (a): 6377492.018 metre
      • Inverse flattening (1/f): 299.1528128
      • EPSG Usage Extent: Norway; Sweden
      Remarks: 1mm increase in semi-major axis.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7046

      @Test @DisplayName("Bessel Namibia (GLM)") public void EPSG_7046() throws FactoryException
      Tests “Bessel Namibia (GLM)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7046
      • EPSG ellipsoid name: Bessel Namibia (GLM)
      • Semi-major axis (a): 6377397.155 German legal metre
      • Inverse flattening (1/f): 299.1528128
      • EPSG Usage Extent: Namibia
      Remarks: The semi-major axis has the same value as the Bessel 1841 ellipsoid (code 7004) but is in different units - German Legal Metres rather than International metres - hence a different size. a = 6377483.865 International metres.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7007

      @Test @DisplayName("Clarke 1858") public void EPSG_7007() throws FactoryException
      Tests “Clarke 1858” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7007
      • EPSG ellipsoid name: Clarke 1858
      • Semi-major axis (a): 20926348 Clarke's foot
      • Semi-minor axis (b): 20855233 Clarke's foot
      • EPSG Usage Extent: Numerous
      Remarks: Clarke's 1858/II solution. Derived parameters: a = 6378293.645m using his 1865 ratio of 0.3047972654 feet per metre; 1/f = 294.26068. In Australia and Amoco Trinidad 1/f taken to two decimal places (294.26 exactly). Elsewhere a and b used to derive 1/f.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7008

      @Test @DisplayName("Clarke 1866") public void EPSG_7008() throws FactoryException
      Tests “Clarke 1866” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7008
      • EPSG ellipsoid name: Clarke 1866
      • Semi-major axis (a): 6378206.4 metre
      • Semi-minor axis (b): 6356583.8 metre
      • EPSG Usage Extent: Numerous
      Remarks: Original definition a=20926062 and b=20855121 (British) feet. Uses Clarke's 1865 inch-metre ratio of 39.370432 to obtain metres. (Metric value then converted to US survey feet for use in the US and international feet for use in Cayman Islands).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7052

      @Test @DisplayName("Clarke 1866 Authalic Sphere") public void EPSG_7052() throws FactoryException
      Tests “Clarke 1866 Authalic Sphere” spheroid creation from the factory.
      • EPSG ellipsoid code: 7052
      • EPSG ellipsoid name: Clarke 1866 Authalic Sphere
      • Semi-major axis (a): 6370997.0 metre
      • Semi-minor axis (b): 6370997.0 metre
      • EPSG Usage Extent: Numerous
      Remarks: Authalic sphere derived from Clarke 1866 ellipsoid (code 7008).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7034

      @Test @DisplayName("Clarke 1880") public void EPSG_7034() throws FactoryException
      Tests “Clarke 1880” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7034
      • EPSG ellipsoid name: Clarke 1880
      • Semi-major axis (a): 20926202 Clarke's foot
      • Semi-minor axis (b): 20854895 Clarke's foot
      • EPSG Usage Extent: Numerous
      Remarks: Clarke gave a and b and also 1/f=293.465 (to 3 decimal places exactly).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7013

      @Test @DisplayName("Clarke 1880 (Arc)") public void EPSG_7013() throws FactoryException
      Tests “Clarke 1880 (Arc)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7013
      • EPSG ellipsoid name: Clarke 1880 (Arc)
      • Alias(es) given by EPSG: Modified Clarke 1880 (South Africa), Clarke 1880 (Cape)
      • Semi-major axis (a): 6378249.145 metre
      • Inverse flattening (1/f): 293.4663077
      • EPSG Usage Extent: South Africa
      Remarks: Adopts Clarke's value for a with derived 1/f. Uses his 1865 ratio of 39.370432 inch per metre to convert semi-major axis to metres.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7010

      @Test @DisplayName("Clarke 1880 (Benoit)") public void EPSG_7010() throws FactoryException
      Tests “Clarke 1880 (Benoit)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7010
      • EPSG ellipsoid name: Clarke 1880 (Benoit)
      • Semi-major axis (a): 6378300.789 metre
      • Semi-minor axis (b): 6356566.435 metre
      • EPSG Usage Extent: Numerous
      Remarks: Adopts Clarke's values for a and b. Uses Benoit's 1895 ratio of 0.9143992 metres per yard to convert to metres.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7011

      @Test @DisplayName("Clarke 1880 (IGN)") public void EPSG_7011() throws FactoryException
      Tests “Clarke 1880 (IGN)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7011
      • EPSG ellipsoid name: Clarke 1880 (IGN)
      • Semi-major axis (a): 6378249.2 metre
      • Semi-minor axis (b): 6356515.0 metre
      • EPSG Usage Extent: Numerous
      Remarks: Adopts Clarke's values for a and b using his 1865 ratio of 39.370432 inches per metre to convert axes to metres.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7055

      @Test @DisplayName("Clarke 1880 (international foot)") public void EPSG_7055() throws FactoryException
      Tests “Clarke 1880 (international foot)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7055
      • EPSG ellipsoid name: Clarke 1880 (international foot)
      • Semi-major axis (a): 20926202 foot
      • Semi-minor axis (b): 20854895 foot
      • EPSG Usage Extent: Numerous
      Remarks: Clarke's 1880 definition in feet assumed for the purposes of metric conversion to be international foot. A = 6378306.370 metres. 1/f derived from a and b = 293.4663077.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7009

      @Test @DisplayName("Clarke 1866 Michigan") public void EPSG_7009() throws FactoryException
      Tests “Clarke 1866 Michigan” ellipsoid creation from the factory (deprecated). This is test is executed only if Series2000.isDeprecatedObjectCreationSupported is true.
      • EPSG ellipsoid code: 7009
      • EPSG ellipsoid name: Clarke 1866 Michigan
      • Semi-major axis (a): 20926631.531
      • Semi-minor axis (b): 20855688.674
      • Deprecated: Ellipsoid scaling moved from datum to map projection to accord with NGS practice.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7012

      @Test @DisplayName("Clarke 1880 (RGS)") public void EPSG_7012() throws FactoryException
      Tests “Clarke 1880 (RGS)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7012
      • EPSG ellipsoid name: Clarke 1880 (RGS)
      • Alias(es) given by EPSG: Clarke Modified 1880
      • Semi-major axis (a): 6378249.145 metre
      • Inverse flattening (1/f): 293.465
      • EPSG Usage Extent: Numerous
      Remarks: Adopts Clarke's values for a and 1/f. Adopts his 1865 ratio of 39.370432 inches per metre to convert semi-major axis to metres.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7014

      @Test @DisplayName("Clarke 1880 (SGA 1922)") public void EPSG_7014() throws FactoryException
      Tests “Clarke 1880 (SGA 1922)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7014
      • EPSG ellipsoid name: Clarke 1880 (SGA 1922)
      • Semi-major axis (a): 6378249.2 metre
      • Inverse flattening (1/f): 293.46598
      • EPSG Usage Extent: France
      Remarks: Used in Old French Triangulation (ATF). Uses Clarke's 1865 inch-metre ratio of 39.370432 to convert axes to metres.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7051

      @Test @DisplayName("Danish 1876") public void EPSG_7051() throws FactoryException
      Tests “Danish 1876” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7051
      • EPSG ellipsoid name: Danish 1876
      • Semi-major axis (a): 6377019.27 metre
      • Inverse flattening (1/f): 300
      • EPSG Usage Extent: Denmark
      Remarks: Semi-major axis originally given as 3271883.25 toise. Uses toise to French metre ratio of 1.94903631 to two decimal place precision.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7042

      @Test @DisplayName("Everest (1830 Definition)") public void EPSG_7042() throws FactoryException
      Tests “Everest (1830 Definition)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7042
      • EPSG ellipsoid name: Everest (1830 Definition)
      • Semi-major axis (a): 20922931.8 Indian foot
      • Semi-minor axis (b): 20853374.58 Indian foot
      • EPSG Usage Extent: Asia
      Remarks: Everest gave a and b to 2 decimal places and also 1/f=300.8017 (to 4 decimal places exactly).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7015

      @Test @DisplayName("Everest 1830 (1937 Adjustment)") public void EPSG_7015() throws FactoryException
      Tests “Everest 1830 (1937 Adjustment)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7015
      • EPSG ellipsoid name: Everest 1830 (1937 Adjustment)
      • Semi-major axis (a): 6377276.345 metre
      • Inverse flattening (1/f): 300.8017
      • EPSG Usage Extent: India
      Remarks: Used for the 1937 readjustment of Indian triangulation. Clarke's 1865 Indian-British foot ratio (0.99999566) and Benoit's 1898 British inch-metre ratio (39.370113) rounded as 0.30479841 exactly and applied to Everest's 1830 definition taken as a and 1/f.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7044

      @Test @DisplayName("Everest 1830 (1962 Definition)") public void EPSG_7044() throws FactoryException
      Tests “Everest 1830 (1962 Definition)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7044
      • EPSG ellipsoid name: Everest 1830 (1962 Definition)
      • Semi-major axis (a): 6377301.243 metre
      • Inverse flattening (1/f): 300.8017255
      • EPSG Usage Extent: Asia
      Remarks: Used by Pakistan since metrication. Clarke's 1865 Indian foot-British foot ratio (0.99999566) and his 1865 British inch-metre ratio (39.369971) rounded with slight error as 1 Ind ft = 0.3047995m exactly and applied to Everest's 1830 definition of a & b.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7016

      @Test @DisplayName("Everest 1830 (1967 Definition)") public void EPSG_7016() throws FactoryException
      Tests “Everest 1830 (1967 Definition)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7016
      • EPSG ellipsoid name: Everest 1830 (1967 Definition)
      • Semi-major axis (a): 6377298.556 metre
      • Inverse flattening (1/f): 300.8017
      • EPSG Usage Extent: East Malaysia
      Remarks: Applies Sears 1922 inch-metre ratio of 39.370147 to Everest 1830 original definition of a and 1/f but with a taken to be in British rather than Indian feet.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7045

      @Test @DisplayName("Everest 1830 (1975 Definition)") public void EPSG_7045() throws FactoryException
      Tests “Everest 1830 (1975 Definition)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7045
      • EPSG ellipsoid name: Everest 1830 (1975 Definition)
      • Semi-major axis (a): 6377299.151 metre
      • Inverse flattening (1/f): 300.8017255
      • EPSG Usage Extent: Asia
      Remarks: Used by India since metrication. Clarke's 1865 Indian foot-British foot ratio (0.99999566) and his 1865 British inch-metre ratio (39.369971) rounded as 1 Ind ft = 0.3047995m exactly applied to Everest's 1830 original definition taken as a and b.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7056

      @Test @DisplayName("Everest 1830 (RSO 1969)") public void EPSG_7056() throws FactoryException
      Tests “Everest 1830 (RSO 1969)” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7056
      • EPSG ellipsoid name: Everest 1830 (RSO 1969)
      • Semi-major axis (a): 6377295.664 metre
      • Inverse flattening (1/f): 300.8017
      • EPSG Usage Extent: Malaysia
      Remarks: Adopted for 1969 metrication of peninsula Malaysia RSO grid. Uses Sears 1922 yard-metre ratio truncated to 6 significant figures applied to Everest 1830 original definition of a and 1/f but with a taken to be in British rather than Indian feet.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7018

      @Test @DisplayName("Everest 1830 Modified") public void EPSG_7018() throws FactoryException
      Tests “Everest 1830 Modified” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7018
      • EPSG ellipsoid name: Everest 1830 Modified
      • Semi-major axis (a): 6377304.063 metre
      • Inverse flattening (1/f): 300.8017
      • EPSG Usage Extent: West Malaysia
      Remarks: Applies Benoit 1898 inch-metre ratio of 39.370113 to Everest 1830 original definition of a and 1/f but with a taken to be in British rather than Indian feet.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7031

      @Test @DisplayName("GEM 10C") public void EPSG_7031() throws FactoryException
      Tests “GEM 10C” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7031
      • EPSG ellipsoid name: GEM 10C
      • Semi-major axis (a): 6378137.0 metre
      • Inverse flattening (1/f): 298.257223563
      • EPSG Usage Extent: Numerous
      Remarks: Used for GEM 10C Gravity Potential Model.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7036

      @Test @DisplayName("GRS 1967") public void EPSG_7036() throws FactoryException
      Tests “GRS 1967” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7036
      • EPSG ellipsoid name: GRS 1967
      • Alias(es) given by EPSG: International 1967
      • Semi-major axis (a): 6378160.0 metre
      • Inverse flattening (1/f): 298.247167427
      • EPSG Usage Extent: Australia
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7050

      @Test @DisplayName("GRS 1967 Modified") public void EPSG_7050() throws FactoryException
      Tests “GRS 1967 Modified” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7050
      • EPSG ellipsoid name: GRS 1967 Modified
      • Alias(es) given by EPSG: GRS 1967
      • Semi-major axis (a): 6378160.0 metre
      • Inverse flattening (1/f): 298.25
      • EPSG Usage Extent: Australia
      Remarks: Based on the GRS 1967 figure (code 7036) but with 1/f taken to 2 decimal places exactly. Used with SAD69 and TWD67 datums. The dimensions are also used as the Australian National Spheroid (code 7003).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7019

      @Test @DisplayName("GRS 1980") public void EPSG_7019() throws FactoryException
      Tests “GRS 1980” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7019
      • EPSG ellipsoid name: GRS 1980
      • Alias(es) given by EPSG: International 1979
      • Semi-major axis (a): 6378137.0 metre
      • Inverse flattening (1/f): 298.257222101
      • EPSG Usage Extent: Numerous
      Remarks: Adopted by IUGG 1979 Canberra.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7048

      @Test @DisplayName("GRS 1980 Authalic Sphere") public void EPSG_7048() throws FactoryException
      Tests “GRS 1980 Authalic Sphere” spheroid creation from the factory.
      • EPSG ellipsoid code: 7048
      • EPSG ellipsoid name: GRS 1980 Authalic Sphere
      • Semi-major axis (a): 6371007.0 metre
      • Semi-minor axis (b): 6371007.0 metre
      • EPSG Usage Extent: Australia
      Remarks: Authalic sphere derived from GRS 1980 ellipsoid (code 7019). 1/f is infinite.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7020

      @Test @DisplayName("Helmert 1906") public void EPSG_7020() throws FactoryException
      Tests “Helmert 1906” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7020
      • EPSG ellipsoid name: Helmert 1906
      • Semi-major axis (a): 6378200.0 metre
      • Inverse flattening (1/f): 298.3
      • EPSG Usage Extent: Egypt
      Remarks: Helmert 1906/III solution.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7053

      @Test @DisplayName("Hough 1960") public void EPSG_7053() throws FactoryException
      Tests “Hough 1960” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7053
      • EPSG ellipsoid name: Hough 1960
      • Semi-major axis (a): 6378270.0 metre
      • Inverse flattening (1/f): 297
      • EPSG Usage Extent: USA
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7058

      @Test @DisplayName("Hughes 1980") public void EPSG_7058() throws FactoryException
      Tests “Hughes 1980” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7058
      • EPSG ellipsoid name: Hughes 1980
      • Semi-major axis (a): 6378273.0 metre
      • Semi-minor axis (b): 6356889.449 metre
      • EPSG Usage Extent: Polar
      Remarks: Semi-minor axis derived from eccentricity = 0.081816153. Semi-major axis (a) sometimes given as 3443.992nm which OGP suspects is a derived approximation. IOGP conversion assumes 1nm=1852m exactly.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7049

      @Test @DisplayName("IAG 1975") public void EPSG_7049() throws FactoryException
      Tests “IAG 1975” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7049
      • EPSG ellipsoid name: IAG 1975
      • Alias(es) given by EPSG: Xian 1980
      • Semi-major axis (a): 6378140.0 metre
      • Inverse flattening (1/f): 298.257
      • EPSG Usage Extent: China
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7021

      @Test @DisplayName("Indonesian National Spheroid") public void EPSG_7021() throws FactoryException
      Tests “Indonesian National Spheroid” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7021
      • EPSG ellipsoid name: Indonesian National Spheroid
      • Semi-major axis (a): 6378160.0 metre
      • Inverse flattening (1/f): 298.247
      • EPSG Usage Extent: Indonesia
      Remarks: Based on the GRS 1967 figure but with 1/f taken to 3 decimal places exactly.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7022

      @Test @DisplayName("International 1924") public void EPSG_7022() throws FactoryException
      Tests “International 1924” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7022
      • EPSG ellipsoid name: International 1924
      • Alias(es) given by EPSG: Hayford 1909
      • Semi-major axis (a): 6378388.0 metre
      • Inverse flattening (1/f): 297
      • EPSG Usage Extent: Numerous
      Remarks: Adopted by IUGG 1924 in Madrid. Based on Hayford 1909/1910 figures.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7057

      @Test @DisplayName("International 1924 Authalic Sphere") public void EPSG_7057() throws FactoryException
      Tests “International 1924 Authalic Sphere” spheroid creation from the factory.
      • EPSG ellipsoid code: 7057
      • EPSG ellipsoid name: International 1924 Authalic Sphere
      • Semi-major axis (a): 6371228.0 metre
      • Semi-minor axis (b): 6371228.0 metre
      • EPSG Usage Extent: Numerous
      Remarks: Authalic sphere derived from International 1924 ellipsoid (code 7022).
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7024

      @Test @DisplayName("Krassowsky 1940") public void EPSG_7024() throws FactoryException
      Tests “Krassowsky 1940” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7024
      • EPSG ellipsoid name: Krassowsky 1940
      • Semi-major axis (a): 6378245.0 metre
      • Inverse flattening (1/f): 298.3
      • EPSG Usage Extent: Russia; Asia
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7025

      @Test @DisplayName("NWL 9D") public void EPSG_7025() throws FactoryException
      Tests “NWL 9D” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7025
      • EPSG ellipsoid name: NWL 9D
      • Alias(es) given by EPSG: WGS 66
      • Semi-major axis (a): 6378145.0 metre
      • Inverse flattening (1/f): 298.25
      • EPSG Usage Extent: Numerous
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7032

      @Test @DisplayName("OSU86F") public void EPSG_7032() throws FactoryException
      Tests “OSU86F” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7032
      • EPSG ellipsoid name: OSU86F
      • Semi-major axis (a): 6378136.2 metre
      • Inverse flattening (1/f): 298.257223563
      • EPSG Usage Extent: Numerous
      Remarks: Used for OSU86 gravity potential (geoidal) model.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7033

      @Test @DisplayName("OSU91A") public void EPSG_7033() throws FactoryException
      Tests “OSU91A” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7033
      • EPSG ellipsoid name: OSU91A
      • Semi-major axis (a): 6378136.3 metre
      • Inverse flattening (1/f): 298.257223563
      • EPSG Usage Extent: Numerous
      Remarks: Used for OSU91 gravity potential (geoidal) model.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7027

      @Test @DisplayName("Plessis 1817") public void EPSG_7027() throws FactoryException
      Tests “Plessis 1817” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7027
      • EPSG ellipsoid name: Plessis 1817
      • Semi-major axis (a): 6376523.0 metre
      • Inverse flattening (1/f): 308.64
      • EPSG Usage Extent: Numerous
      Remarks: Rescaling of Delambre 1810 figure (a=6376985 m) to make meridional arc from equator to pole equal to 10000000 metres exactly.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7059

      @Test @DisplayName("Popular Visualisation Sphere") public void EPSG_7059() throws FactoryException
      Tests “Popular Visualisation Sphere” spheroid creation from the factory (deprecated). This is test is executed only if Series2000.isDeprecatedObjectCreationSupported is true.
      • EPSG ellipsoid code: 7059
      • EPSG ellipsoid name: Popular Visualisation Sphere
      • Semi-major axis (a): 6378137
      • Semi-minor axis (b): 6378137
      • Deprecated: IOGP revised its approach to description of Popular Visualisation CRS.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7054

      @Test @DisplayName("PZ-90") public void EPSG_7054() throws FactoryException
      Tests “PZ-90” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7054
      • EPSG ellipsoid name: PZ-90
      • Semi-major axis (a): 6378136.0 metre
      • Inverse flattening (1/f): 298.257839303
      • EPSG Usage Extent: Russia
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7028

      @Test @DisplayName("Struve 1860") public void EPSG_7028() throws FactoryException
      Tests “Struve 1860” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7028
      • EPSG ellipsoid name: Struve 1860
      • Semi-major axis (a): 6378298.3 metre
      • Inverse flattening (1/f): 294.73
      • EPSG Usage Extent: Numerous
      Remarks: Original definition of semi-major axis given as 3272539 toise.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7029

      @Test @DisplayName("War Office") public void EPSG_7029() throws FactoryException
      Tests “War Office” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7029
      • EPSG ellipsoid name: War Office
      • Alias(es) given by EPSG: McCaw 1924
      • Semi-major axis (a): 6378300.0 metre
      • Inverse flattening (1/f): 296
      • EPSG Usage Extent: Ghana
      Remarks: In non-metric form. A=20926201 Gold Coast feet. DMA Technical Manual 8358.1 and data derived from this quotes value for semi-major axis as 6378300.58m: IOGP recommends use of defined value 6378300m exactly.
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7043

      @Test @DisplayName("WGS 72") public void EPSG_7043() throws FactoryException
      Tests “WGS 72” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7043
      • EPSG ellipsoid name: WGS 72
      • Alias(es) given by EPSG: NWL 10D
      • Semi-major axis (a): 6378135.0 metre
      • Inverse flattening (1/f): 298.26
      • EPSG Usage Extent: Numerous
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.
    • EPSG_7030

      @Test @DisplayName("WGS 84") public void EPSG_7030() throws FactoryException
      Tests “WGS 84” ellipsoid creation from the factory.
      • EPSG ellipsoid code: 7030
      • EPSG ellipsoid name: WGS 84
      • Alias(es) given by EPSG: WGS84
      • Semi-major axis (a): 6378137.0 metre
      • Inverse flattening (1/f): 298.257223563
      • EPSG Usage Extent: Numerous
      Throws:
      FactoryException - if an error occurred while creating the ellipsoid from the EPSG code.