/// <summary>
        /// WGS84 to Tokyo
        /// </summary>
        /// <param name="param"></param>
        /// <param name="xyz"></param>
        /// <returns></returns>
        private XYZ_Tokyo WGS84_to_Tokyo(int param, XYZ84 xyz)
        {
            XYZ_Tokyo tokyo;

            tokyo.X_Tokyo = 0.0;
            tokyo.Y_Tokyo = 0.0;
            tokyo.Z_Tokyo = 0.0;

            switch (param)
            {
            case 1:     // New parameters
                tokyo.X_Tokyo = xyz.X84 + 147.54;
                tokyo.Y_Tokyo = xyz.Y84 - 507.26;
                tokyo.Z_Tokyo = xyz.Z84 - 680.47;
                break;

            case 2:     // Old parameters
                tokyo.X_Tokyo = xyz.X84 + 146.43;
                tokyo.Y_Tokyo = xyz.Y84 - 507.89;
                tokyo.Z_Tokyo = xyz.Z84 - 681.46;
                break;
            }

            return(tokyo);
        }
        /// <summary>
        /// WGS-84 to Cartesian coordinates
        /// </summary>
        /// <param name="lat84"></param>
        /// <param name="lon84"></param>
        /// <param name="alt84"></param>
        public void w84toxyh(double lat84, double lon84, double alt84)
        {
            int datum = 0;

            // STEP 1 : WGS-84 to XYZ
            double lat = this.deg2rad(lat84);
            double lon = this.deg2rad(lon84);
            double alt = this.deg2rad(alt84);

            datum = 1;
            XYZ84 xyz84 = this.dms_to_XYZ(datum, lat, lon, alt);

            // STEP 2 : WGS-84 to TOKYO
            XYZ_Tokyo tokyo = this.WGS84_to_Tokyo(this.param, xyz84);

            // STEP 3 : XYZ to LAT_LON_ALT
            datum = 2;
            LLA lla = this.XYZ_to_dms(datum, tokyo);

            result = this.bl2xy(lla, this.zone);
        }
Exemple #3
0
        /// <summary>
        /// WGS84 to Tokyo
        /// </summary>
        /// <param name="param"></param>
        /// <param name="xyz"></param>
        /// <returns></returns>
        private XYZ_Tokyo WGS84_to_Tokyo(int param, XYZ84 xyz)
        {
            XYZ_Tokyo tokyo;
            tokyo.X_Tokyo = 0.0;
            tokyo.Y_Tokyo = 0.0;
            tokyo.Z_Tokyo = 0.0;

            switch (param)
            {
                case 1: // New parameters
                    tokyo.X_Tokyo = xyz.X84 + 147.54;
                    tokyo.Y_Tokyo = xyz.Y84 - 507.26;
                    tokyo.Z_Tokyo = xyz.Z84 - 680.47;
                    break;
                case 2: // Old parameters
                    tokyo.X_Tokyo = xyz.X84 + 146.43;
                    tokyo.Y_Tokyo = xyz.Y84 - 507.89;
                    tokyo.Z_Tokyo = xyz.Z84 - 681.46;
                    break;
            }

            return tokyo;
        }