Exemple #1
0
        private double centerMeridian = 0; // 中央子午线

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="sourceCoordinateSystem">坐标系统</param>
        /// <param name="centerMeridian">中央子午线</param>
        public GeodeticTransform(CoordinateSystemType sourceCoordinateSystem, double centerMeridian)
        {
            EllipsoidalParameters parameters = EllipsoidalType.GetEllipsoidalParametersByTpye(sourceCoordinateSystem);

            a  = parameters.SemiMajorAxis;
            b  = parameters.SemiMinorAxis;
            e  = Math.Sqrt(a * a - b * b) / a;
            ep = Math.Sqrt(a * a - b * b) / b;

            this.centerMeridian = centerMeridian;
        }
Exemple #2
0
        private double ep2 = 0;        // 第二偏心率平方

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="sourceCoordinateSystem">源坐标系统</param>
        public GaussKrugerTransform(CoordinateSystemType sourceCoordinateSystem)
        {
            EllipsoidalParameters parameters = EllipsoidalType.GetEllipsoidalParametersByTpye(sourceCoordinateSystem);

            a   = parameters.SemiMajorAxis;
            b   = parameters.SemiMinorAxis;
            e   = Math.Sqrt(a * a - b * b) / a;
            ep  = Math.Sqrt(a * a - b * b) / b;
            e2  = Math.Pow(e, 2);
            ep2 = Math.Pow(ep, 2);
        }