Class NZMG

    • Constructor Detail

      • NZMG

        public NZMG​(Position p,
                    Ellipsoid e,
                    Datum d)
        Create a new NZMG point for a specific Position, Ellipsoid and Datum.
        Parameters:
        p - Position
        e - Ellipsoid to use with this instance
        d - Datum to use
      • NZMG

        public NZMG​(ENPair point,
                    Ellipsoid e,
                    Datum d)
        Create a new NZMG point for a specific pair of Eastings and Northings, Ellipsoid and Datum.
        Parameters:
        point - ENPair containing the easting and northing values
        e - Ellipsoid to use with this instance
        d - Datum to use
    • Method Detail

      • makePoint

        public static NZMG makePoint​(java.lang.String gridref,
                                     Ellipsoid e,
                                     Datum d)
                              throws GridFormatException
        Static factory method to create an instance of NZMG from a grid reference String
        Parameters:
        gridref - A grid reference of the form "157203 mE 6752091 mN " where the values are easting and northing distances in m
        e - Ellipsoid to use in conversions
        d - Datum to use in conversions
        Returns:
        A new NZMG instance
        Throws:
        GridFormatException - thrown in case of format error in the grid reference
      • getEN

        protected static ENPair getEN​(java.lang.String gridref)
                               throws GridFormatException
        Parse NZMG coordinates into easting and northing distances
        Parameters:
        gridref - A pair of NZMG coordinates (e.g. "2487100.638 mE 6751049.719 mN), specified in m.
        Returns:
        Easting and Northing distances (m)
        Throws:
        GridFormatException - Invalid coordinate format results in a GridFormatException being thrown
      • defaultEllipsoid

        public Ellipsoid defaultEllipsoid()
        Description copied from class: CoordinateSystem
        The default Ellipsoid used by instances of this CoordinateSystem For example, a CoordinateSystem of type OSGB has the AirySphere as its default Ellipsoid
        Specified by:
        defaultEllipsoid in class CoordinateSystem
        Returns:
        The Ellipsoid used as the deafult for this CoordinateSystem
      • defaultDatum

        public Datum defaultDatum()
        Description copied from class: CoordinateSystem
        Get the defaul Datum for an instance of CoordinateSystem. For example, instances of OSGB usually use the OSGB 1936 datum.
        Specified by:
        defaultDatum in class CoordinateSystem
        Returns:
        The default Datum used by this instance of CoordinateSystem
      • gridConvergence

        public double gridConvergence()
        Calculate the Grid Convergence for the current location. Grid Convergence is defined as the angle between Grid North and True North. The value is zero on the Central Meridian. In the absence of an algebraic form for grid convergence for NZMG, this implementation reverts to basics and calculates it by making a small increment (delta) north and south of the point and calculating the change in easting and northing values.
        Specified by:
        gridConvergence in class Orthomorphic
        Returns:
        The value of Grid Convergence (radians)
      • toString

        public java.lang.String toString()
        Description copied from class: CoordinateSystem
        Provide a String representing the position in a correct format for the CoordinateSystem
        Specified by:
        toString in class CoordinateSystem
        Returns:
        String
      • cfi

        public double cfi​(int i)
        Specified by:
        cfi in class Orthomorphic
      • cfl

        public double cfl​(int i)
        Specified by:
        cfl in class Orthomorphic