final double COS_67P5 = 0.38268343236508977;
    public LatLonPoint getLatLon() {        final double a = 6378137.0; //WGS84 semimajor (meters)        final double b = 6356752.3142; //WGS84 semiminor (meters)        final double a2 = a * a;        final double b2 = b * b;        final double e2 = (a2 - b2) / a2;        final double ep2 = (a2 - b2) / b2;        /**         * Cosine of 67.5 degrees.         */        final double COS_67P5 = 0.38268343236508977;        /**         * Toms region 1 constant.         */        final double AD_C = 1.0026000;        final double x = x_; // Toward prime meridian        final double y = y_; // Toward East        final double z = z_; // Toward North        // Note: The Java version of 'atan2' work correctly for x==0.        //       No need for special handling like in the C version.        //       No special handling neither for latitude. Formulas        //       below are generic enough, considering that 'atan'        //       work correctly with infinities (1/0).        // Note: Variable names follow the notation used in Toms, Feb        // 1996        final double W2 = x * x + y * y; // square of distance from Z                                         // axis        final double W = Math.sqrt(W2); // distance from Z axis        final double T0 = z * AD_C; // initial estimate of vertical                                    // component        final double S0 = Math.sqrt(T0 * T0 + W2); // initial estimate                                                   // of horizontal                                                   // component        final double sin_B0 = T0 / S0; // sin(B0), B0 is estimate of                                       // Bowring aux variable        final double cos_B0 = W / S0; // cos(B0)        final double sin3_B0 = sin_B0 * sin_B0 * sin_B0; // cube of                                                         // sin(B0)        final double T1 = z + b * ep2 * sin3_B0; // corrected estimate                                                 // of vertical                                                 // component        final double sum = W - a * e2 * (cos_B0 * cos_B0 * cos_B0); // numerator                                                                    // of                                                                    // cos(phi1)        final double S1 = Math.sqrt(T1 * T1 + sum * sum); // corrected                                                          // estimate                                                          // of                                                          // horizontal                                                          // component        final double sin_p1 = T1 / S1; // sin(phi1), phi1 is estimated                                       // latitude        final double cos_p1 = sum / S1; // cos(phi1)        final double longitude = Math.toDegrees(Math.atan2(y, x));        final double latitude = Math.toDegrees(Math.atan(sin_p1 / cos_p1));        // final double height;        // if (computeHeight) {        //    final double rn = a/Math.sqrt(1-e2*(sin_p1*sin_p1)); //        // Earth radius at location        //    if (cos_p1 >= +COS_67P5) height = W / +cos_p1 - rn;        //    else if (cos_p1 <= -COS_67P5) height = W / -cos_p1 - rn;        //    else height = z / sin_p1 + rn*(e2 - 1.0);        // }        LatLonPoint dst = new LatLonPoint((float) latitude, (float) longitude);        return dst;    }