Beispiel #1
0
        //获得转换的方法和转换的参数
        private void GetTnsInfo(ref string strMethod, ref IVariantArray pArray)
        {
            pArray = new VarArrayClass();
            if (this.cmboTnsMethod.SelectedIndex < 0)
            {
                return;
            }

            DataTable dt = this.dtTns.DataSource as DataTable;

            strMethod = this.cmboTnsMethod.Text;
            if (strMethod == "基于地心三参数转换法")
            {
                pArray.Add("PARAMETER['X_Axis_Translation'," + GetTnsValue("X偏移(米)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Y_Axis_Translation'," + GetTnsValue("Y偏移(米)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Z_Axis_Translation'," + GetTnsValue("Z偏移(米)", dt).ToString() + "]");
            }
            else if (strMethod == "位置矢量法")
            {
                pArray.Add("PARAMETER['X_Axis_Translation'," + GetTnsValue("X偏移(米)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Y_Axis_Translation'," + GetTnsValue("Y偏移(米)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Z_Axis_Translation'," + GetTnsValue("Z偏移(米)", dt).ToString() + "]");
                pArray.Add("PARAMETER['X_Axis_Rotation'," + GetTnsValue("X旋转(秒)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Y_Axis_Rotation'," + GetTnsValue("Y旋转(秒)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Z_Axis_Rotation'," + GetTnsValue("Z旋转(秒)", dt).ToString() + "]");
                pArray.Add("PARAMETER['Scale_Difference'," + GetTnsValue("比例因子(百万分率)", dt).ToString() + "]");
            }
            else if (strMethod == "")
            {
            }

            string strArr = "";

            for (int i = 0; i < pArray.Count; i++)
            {
                string strTemp = pArray.get_Element(i).ToString();
                if (strArr == "")
                {
                    strArr = strTemp;
                }
                else
                {
                    strArr = strArr + "," + strTemp;
                }
            }

            strMethod = "GEOGTRAN[METHOD['" + GetMethod(strMethod) + "']," + strArr;
        }