Example #1
0
        private void newTransmitterOK_Click(object sender, EventArgs e)
        {
            if (MainWindow.mProjectFullName == null)
            {
                this.Close();
                return;
            }
            if (!ConditionIsAll(MainWindow.nodeInfoFullPath))
            {
                MessageBox.Show("请先创建天线和添加波形之后再新建辐射源!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (newTransmitterName_textBox2.Text == "" || newTransmitterLongitude_textBox1.Text == "" || newTransmitterLatitude_textBox3.Text == "" || newTransimtterReferencePlane_comboBox2.SelectedItem == null || newTransmitterPower_textBox11.Text == "" || newTransmitterAntennaName_comboBox3.SelectedItem == null || newTransmitterWaveformName_textBox1.Text == "" || newTransmitterAntennaRotationX_textBox4.Text == "" || newTransmitterAntennaRotationY_textBox6.Text == "" || newTransmitterAntennaRotationZ_textBox5.Text == "")
            {
                MessageBox.Show("窗口中有未设置的信息,请您设置完整", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (!BoudingLimition.IsScienceFigure(newTransmitterPower_textBox11.Text))
            {
                MessageBox.Show("发射功率值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (double.Parse(newTransmitterPower_textBox11.Text) < 0.000)
            {
                MessageBox.Show("发射功率值需大于0.000", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (!BoudingLimition.IsScienceFigure(newTransmitterAntennaRotationX_textBox4.Text))
            {
                MessageBox.Show("天线关于X轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (!BoudingLimition.IsScienceFigure(newTransmitterAntennaRotationY_textBox6.Text))
            {
                MessageBox.Show("天线关于Y轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (!BoudingLimition.IsScienceFigure(newTransmitterAntennaRotationZ_textBox5.Text))
            {
                MessageBox.Show("天线关于Z轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (BoudingLimition.RotationLimition(newTransmitterAntennaRotationX_textBox4))
            {
                MessageBox.Show("天线关于X轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (BoudingLimition.RotationLimition(newTransmitterAntennaRotationY_textBox6))
            {
                MessageBox.Show("天线关于Y轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            if (BoudingLimition.RotationLimition(newTransmitterAntennaRotationZ_textBox5))
            {
                MessageBox.Show("天线关于Z轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            //先判断是否存在.tx文件
            if (File.Exists(MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".tx"))
            {
                WaveformWriting transm = new WaveformWriting(FileOperation.ReadFile(MainWindow.nodeInfoFullPath));
                //注意 新建的辐射源个数不能超过1000
                string[] transmitterNames = new string[1000];
                //判断是否存在重名的辐射源
                transmitterNames = transm.waveformNames(SetupContent.transmitterIndeStr);
                if (transm.judge(newTransmitterName_textBox2.Text, transmitterNames))
                {
                    MessageBox.Show("此辐射源已存在,请您换一个辐射源名称!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    MainWindow.IsReturnMidwayInNewProcess = true;
                    return;
                }
            }
            string transmitterCount = GetTransmitterNum(MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".tx", SetupContent.transmitterStr2OfTr);
            string sourceStr        = FileOperation.ReadFile(MainWindow.waveinfoFilePath);

            string trFileStr = SetupContent.transmitterStr1OfTr + " " + newTransmitterName_textBox2.Text + "\r\n"
                               + SetupContent.transmitterStr2OfTr + transmitterCount + "\r\n"
                               + SetupContent.transmitterStr3OfTr + "\r\n" + SetupContent.transmitterStr4OfTr + "\r\n"
                               + SetupContent.transmitterStr5OfTr + "\r\n" + SetupContent.transmitterStr6OfTr + "\r\n"
                               + SetupContent.transmitterStr7OfTr + "\r\n" + SetupContent.transmitterStr8OfTr + "\r\n"
                               + SetupContent.transmitterStr9OfTr + "\r\n" + SetupContent.transmitterStr10OfTr + "\r\n"
                               + SetupContent.transmitterStr11OfTr + "\r\n"
                               + SetupContent.transmitterStr12OfTr + MainWindow.longitudeStr + "\r\n"
                               + SetupContent.transmitterStr13OfTr + MainWindow.latitudeStr + "\r\n"
                               + SetupContent.transmitterStr14OfTr + "\r\n"
                               + Translate.KeyWordsDictionary(newTransimtterReferencePlane_comboBox2) + "\r\n"
                               + SetupContent.transmitterStr15OfTr + "\r\n"
                               + SetupContent.transmitterStr16OfTr + "\r\n"
                               //+ SetupContent.transmitterStr17OfTr + "\r\n"
                               + GetAntennaStr(MainWindow.transInfoFullPath, newTransmitterAntennaName_comboBox3)
                               + SetupContent.transmitterStr18OfTr + newTransmitterAntennaRotationX_textBox4.Text + "\r\n"
                               + SetupContent.transmitterStr19OfTr + newTransmitterAntennaRotationY_textBox6.Text + "\r\n"
                               + SetupContent.transmitterStr20OfTr + newTransmitterAntennaRotationZ_textBox5.Text + "\r\n"
                               + SetupContent.transmitterStr21OfTr + newTransmitterPower_textBox11.Text + "\r\n"
                               + SetupContent.transmitterStr22OfTr + "\r\n"
                               + SetupContent.transmitterStr23OfTr + "\r\n"
                               + SetupContent.transmitterStr24OfTr + " "
                               + WaveformNodeOfConMenu.GetWaveformNumLine(newTransmitterWaveformName_textBox1.Text, sourceStr) + "MHZ" + "\r\n";

            FileOperation.WriteFile(trFileStr, MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".tx", true);
            //写到setup文件中
            string sourceStrOfTr = FileOperation.ReadFile(MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".tx");
            //找出辐射源的个数
            int transmitCount = WaveformWriting.GetCountOfMatchStr("begin_<points>", sourceStrOfTr);

            //如果已经存在了transmitter块,则先删除
            if (MainWindow.setupStr.LastIndexOf("end_<transmitter>") != -1)
            {
                MainWindow.setupStr = MainWindow.setupStr.Remove(MainWindow.setupStr.IndexOf("begin_<transmitter>"), MainWindow.setupStr.IndexOf("end_<transmitter>") - MainWindow.setupStr.IndexOf("begin_<transmitter>") + 19);
            }
            int    insertSiteOfTr = MainWindow.setupStr.LastIndexOf("end_<feature>") + 15;//15是end_<feature>\r\n后的第一个字符
            string insertStr      = SetupContent.transmitterStr1Ofsetup + "\r\n" + SetupContent.transmitterStr2Ofsetup
                                    + MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".tx" + "\r\n"
                                    + SetupContent.transmitterStr3Ofsetup + transmitCount.ToString() + "\r\n"
                                    + SetupContent.transmitterStr4Ofsetup + "\r\n";

            //将字符串插入到全局字符串setupStr中
            MainWindow.setupStr = MainWindow.setupStr.Insert(insertSiteOfTr, insertStr);
            FileOperation.WriteFile(MainWindow.setupStr, MainWindow.mProjectFullName, false);
            //向工程树中添加结点信息
            MainWindow.staticTreeView.Nodes[0].Nodes[0].Nodes[3].Nodes.Add(newTransmitterName_textBox2.Text);
            //将辐射源的信息存储到.setup.info文件中
            FileOperation.WriteLineFile(SetupContent.transmitterIndeStr + " " + newTransmitterName_textBox2.Text, MainWindow.nodeInfoFullPath, true);
            //将辐射源和天线的匹配关系记录到.match文件中
            FileOperation.WriteLineFile(SetupContent.transmitterIndeStr + " " + newTransmitterName_textBox2.Text + "*" + newTransmitterAntennaName_comboBox3.SelectedItem, MainWindow.relationOfAntAndWavePath, true);
            //将辐射源的信息存储到.waveinfo文件中
            string transmitterInfoStr = SetupContent.transmitterStr1Ofsetup + " " + newTransmitterName_textBox2.Text + "\r\n"
                                        + newTransimtterReferencePlane_comboBox2.Text + "\r\n"
                                        + newTransmitterPower_textBox11.Text + "\r\n"
                                        + newTransmitterAntennaName_comboBox3.Text + "\r\n"
                                        + newTransmitterWaveformName_textBox1.Text + "\r\n"
                                        + newTransmitterAntennaRotationX_textBox4.Text + "\r\n"
                                        + newTransmitterAntennaRotationY_textBox6.Text + "\r\n"
                                        + newTransmitterAntennaRotationZ_textBox5.Text + "\r\n"
                                        + "END" + SetupContent.transmitterStr1Ofsetup + " " + newTransmitterName_textBox2.Text + "\r\n";

            FileOperation.WriteFile(transmitterInfoStr, MainWindow.waveinfoFilePath, true);

            if (MainWindow.creatSuccMesDisp)
            {
                MessageBox.Show("\"" + newTransmitterName_textBox2.Text + "\"辐射源创建成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
Example #2
0
        private void newReceiverOk_button1_Click(object sender, EventArgs e)
        {
            if (!File.Exists(MainWindow.mProjectFullName))
            {
                this.Close();
                return;
            }
            if (!NewTransmitterWindow.ConditionIsAll(MainWindow.nodeInfoFullPath))
            {
                MessageBox.Show("请先创建天线和添加波形之后再新建接收机!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                this.Close();
                return;
            }
            if (newRceiverType_comboBox1.SelectedItem == null)
            {
                MessageBox.Show("窗口中有未设置的信息,请您设置完整", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                MainWindow.IsReturnMidwayInNewProcess = true;
                return;
            }
            else
            {
                string newRceiverType = null;
                newRceiverType = (string)(newRceiverType_comboBox1.SelectedItem);
                switch (newRceiverType)
                {
                case "点状<Points>":
                {
                    if (newReceiverName_textBox2.Text == "" || newReceiverlongitude_textBox1.Text == "" || newReceiverLatitude_textBox3.Text == "" || newReceiverReferencePlane_comboBox2.SelectedItem == null || newReceiverAntennaName_comboBox3.SelectedItem == null || newReceiverAntennaHeight_textBox1.Text == "" || newReceiverAntennaRotationX_textBox4.Text == "" || newReceiverAntennaRotationY_textBox6.Text == "" || newReceiverAntennaRotationXZ_textBox5.Text == "")
                    {
                        MessageBox.Show("窗口中有未设置的信息,请您设置完整", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaRotationX_textBox4.Text))
                    {
                        MessageBox.Show("天线关于X轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaRotationY_textBox6.Text))
                    {
                        MessageBox.Show("天线关于Y轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaRotationXZ_textBox5.Text))
                    {
                        MessageBox.Show("天线关于Z轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaRotationX_textBox4))
                    {
                        MessageBox.Show("天线关于X轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaRotationY_textBox6))
                    {
                        MessageBox.Show("天线关于Y轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaRotationXZ_textBox5))
                    {
                        MessageBox.Show("天线关于Z轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                }
                break;

                case "区域状<XYgrid>":
                {
                    if (newReceiverName_textBox2.Text == "" || newReceiverlongitude_textBox1.Text == "" || newReceiverLatitude_textBox3.Text == "" || newReceiverReferencePlane_comboBox2.SelectedItem == null || newReceiverAntennaName_comboBox3.SelectedItem == null || newReceiverAntennaHeight_textBox1.Text == "" || newReceiverSpace_textBox1.Text == "" || newReceiverAntennaRotationX_textBox4.Text == "" || newReceiverAntennaRotationY_textBox6.Text == "" || newReceiverAntennaRotationXZ_textBox5.Text == "")
                    {
                        MessageBox.Show("窗口中有未设置的信息,请您设置完整", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }

                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaHeight_textBox1.Text))
                    {
                        MessageBox.Show("天线位置关于Z轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaHeight_textBox1))
                    {
                        MessageBox.Show("天线位置关于Z轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverSpace_textBox1.Text))
                    {
                        MessageBox.Show("接收机间隔值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (double.Parse(newReceiverSpace_textBox1.Text) < 0.000)
                    {
                        MessageBox.Show("接收机间隔值需大于0.000", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaRotationX_textBox4.Text))
                    {
                        MessageBox.Show("天线关于X轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaRotationY_textBox6.Text))
                    {
                        MessageBox.Show("天线关于Y轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (!BoudingLimition.IsScienceFigure(newReceiverAntennaRotationXZ_textBox5.Text))
                    {
                        MessageBox.Show("天线关于Z轴旋转角度值输入必须是实数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaRotationX_textBox4))
                    {
                        MessageBox.Show("天线关于X轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaRotationY_textBox6))
                    {
                        MessageBox.Show("天线关于Y轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                    if (BoudingLimition.RotationLimition(newReceiverAntennaRotationXZ_textBox5))
                    {
                        MessageBox.Show("天线关于Z轴旋转角度值需在0度至360度之间", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        MainWindow.IsReturnMidwayInNewProcess = true;
                        return;
                    }
                }
                break;

                default:
                    break;
                }
            }
            //先判断是否存在.rx文件
            if (File.Exists(MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".rx"))
            {
                WaveformWriting receiverm = new WaveformWriting(FileOperation.ReadFile(MainWindow.nodeInfoFullPath));
                //注意 新建的天线个数不能超过1000
                string[] pointReceiverNames = new string[2000];
                string[] gridReceiverNames  = new string[2000];
                //判断是否存在重名的接收机
                pointReceiverNames = receiverm.waveformNames(SetupContent.transmitterStr1OfTr);
                gridReceiverNames  = receiverm.waveformNames(SetupContent.gridReceiverOfRxStr0);
                if (receiverm.judge(newReceiverName_textBox2.Text, pointReceiverNames) || receiverm.judge(newReceiverName_textBox2.Text, gridReceiverNames))
                {
                    MessageBox.Show("此接收机已存在, 请您换个接收机名称!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    MainWindow.IsReturnMidwayInNewProcess = true;
                    return;
                }
            }
            string receiverNum = NewTransmitterWindow.GetTransmitterNum(MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".rx", SetupContent.gridReceiverOfRxStr1);

            string rxFileStr = null;
            string hasSpace  = "";
            string startStr  = null;

            if (((string)newRceiverType_comboBox1.SelectedItem).Equals("区域状<XYgrid>"))
            {
                rxFileStr = Translate.KeyWordsDictionary(newRceiverType_comboBox1) + newReceiverName_textBox2.Text + "\r\n"
                            + SetupContent.gridReceiverOfRxStr1 + receiverNum + "\r\n"
                            + SetupContent.gridReceiverOfRxStr2 + "\r\n"
                            + SetupContent.gridReceiverOfRxStr3 + MainWindow.longitudeStr + "\r\n"
                            + SetupContent.gridReceiverOfRxStr4 + MainWindow.latitudeStr + "\r\n"
                            + SetupContent.gridReceiverOfRxStr5 + "\r\n"
                            + Translate.KeyWordsDictionary(newReceiverReferencePlane_comboBox2) + "\r\n"
                            + SetupContent.gridReceiverOfRxStr6 + "\r\n"
                            + SetupContent.gridReceiverOfRxStr7 + "\r\n"
                            + SetupContent.gridReceiverOfRxStr8 + newReceiverSpace_textBox1.Text + "\r\n"
                            + SetupContent.gridReceiverOfRxStr9 + "\r\n"
                            + SetupContent.gridpointReceiverOfRxStr0 + newReceiverAntennaHeight_textBox1.Text + "\r\n"
                            + NewTransmitterWindow.GetAntennaStr(MainWindow.transInfoFullPath, newReceiverAntennaName_comboBox3)
                            + SetupContent.gridpointReceiverOfRxStr1 + newReceiverAntennaRotationX_textBox4.Text + "\r\n"
                            + SetupContent.gridpointReceiverOfRxStr2 + newReceiverAntennaRotationY_textBox6.Text + "\r\n"
                            + SetupContent.gridpointReceiverOfRxStr3 + newReceiverAntennaRotationXZ_textBox5.Text + "\r\n"
                            + SetupContent.gridReceiverOfRxStr10 + "\r\n";
                MainWindow.staticTreeView.Nodes[0].Nodes[0].Nodes[4].Nodes[1].Nodes.Add(newReceiverName_textBox2.Text);
                FileOperation.WriteLineFile(SetupContent.gridReceiverIndeStr + " " + newReceiverName_textBox2.Text, MainWindow.nodeInfoFullPath, true);

                hasSpace = newReceiverSpace_textBox1.Text;
                startStr = SetupContent.gridReceiverOfRxStr0 + " " + newReceiverName_textBox2.Text + "\r\n";
                FileOperation.WriteLineFile(SetupContent.gridReceiverOfRxStr0 + " " + newReceiverName_textBox2.Text + "#" + newReceiverAntennaName_comboBox3.SelectedItem, MainWindow.relationOfAntAndWavePath, true);
            }
            else
            {
                rxFileStr = Translate.KeyWordsDictionary(newRceiverType_comboBox1) + newReceiverName_textBox2.Text + "\r\n"
                            + SetupContent.pointReceiverOfRxStr1 + receiverNum + "\r\n"
                            + SetupContent.pointReceiverOfRxStr2 + "\r\n"
                            + SetupContent.pointReceiverOfRxStr3 + "\r\n"
                            + SetupContent.gridReceiverOfRxStr3 + MainWindow.longitudeStr + "\r\n"
                            + SetupContent.gridReceiverOfRxStr4 + MainWindow.latitudeStr + "\r\n"
                            + SetupContent.pointReceiverOfRxStr4 + "\r\n"
                            + Translate.KeyWordsDictionary(newReceiverReferencePlane_comboBox2) + "\r\n"
                            + SetupContent.pointReceiverOfRxStr5 + "\r\n"
                            + SetupContent.gridpointReceiverOfRxStr0 + newReceiverAntennaHeight_textBox1.Text + "\r\n"
                            + NewTransmitterWindow.GetAntennaStr(MainWindow.transInfoFullPath, newReceiverAntennaName_comboBox3)
                            + SetupContent.gridpointReceiverOfRxStr1 + newReceiverAntennaRotationX_textBox4.Text + "\r\n"
                            + SetupContent.gridpointReceiverOfRxStr2 + newReceiverAntennaRotationY_textBox6.Text + "\r\n"
                            + SetupContent.gridpointReceiverOfRxStr3 + newReceiverAntennaRotationXZ_textBox5.Text + "\r\n"
                            + SetupContent.pointReceiverOfRxStr6 + "\r\n";
                MainWindow.staticTreeView.Nodes[0].Nodes[0].Nodes[4].Nodes[0].Nodes.Add(newReceiverName_textBox2.Text);
                FileOperation.WriteLineFile(SetupContent.pointReceiverIndeStr + " " + newReceiverName_textBox2.Text, MainWindow.nodeInfoFullPath, true);

                FileOperation.WriteLineFile(SetupContent.transmitterStr1OfTr + " " + newReceiverName_textBox2.Text + "#" + newReceiverAntennaName_comboBox3.SelectedItem, MainWindow.relationOfAntAndWavePath, true);

                startStr = SetupContent.pointReceiverOfRxStr0 + " " + newReceiverName_textBox2.Text + "\r\n";
            }

            string rxInfoStr = startStr
                               + newRceiverType_comboBox1.Text + "\r\n"
                               + newReceiverReferencePlane_comboBox2.Text + "\r\n"
                               + newReceiverAntennaName_comboBox3.Text + "\r\n"
                               + newReceiverAntennaHeight_textBox1.Text + "\r\n"
                               //+ newReceiverSpace_textBox1.Text + "\r\n"
                               + hasSpace + "\r\n"
                               + newReceiverAntennaRotationX_textBox4.Text + "\r\n"
                               + newReceiverAntennaRotationY_textBox6.Text + "\r\n"
                               + newReceiverAntennaRotationXZ_textBox5.Text + "\r\n"
                               + "END" + startStr;

            FileOperation.WriteFile(rxInfoStr, MainWindow.waveinfoFilePath, true);

            //FileOperation.WriteFile(SetupContent.receiverOfSetupStr0 + " " + newReceiverName_textBox2.Text + "#" + newReceiverAntennaName_comboBox3.SelectedItem+"\r\n" , MainWindow.relationOfAntAndWavePath, true);

            FileOperation.WriteFile(rxFileStr, MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".rx", true);
            //写到setup文件中
            string sourceStrOfRx = FileOperation.ReadFile(MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".rx");
            //找出天线的个数
            int receiverCount = WaveformWriting.GetCountOfMatchStr("begin_<grid>", sourceStrOfRx) + WaveformWriting.GetCountOfMatchStr("begin_<points>", sourceStrOfRx) - 1;

            //如果已经存在了receiverr块,则先删除
            if (MainWindow.setupStr.LastIndexOf("end_<receiver>") != -1)
            {
                MainWindow.setupStr = MainWindow.setupStr.Remove(MainWindow.setupStr.IndexOf("begin_<receiver>"), MainWindow.setupStr.IndexOf("end_<receiver>") - MainWindow.setupStr.IndexOf("begin_<receiver>") + 16);
            }

            int insertSiteOfRec = 0;

            if (MainWindow.setupStr.LastIndexOf("end_<transmitter>") != -1)
            {
                insertSiteOfRec = MainWindow.setupStr.LastIndexOf("end_<transmitter>") + 2 + "end_<transmitter>".Length;
            }
            else
            {
                insertSiteOfRec = MainWindow.setupStr.LastIndexOf("end_<feature>") + "end_<feature>".Length + 2;
            }
            string insertStr = SetupContent.receiverOfSetupStr0 + "\r\n"
                               + SetupContent.receiverOfSetupStr1 + MainWindow.projectRealPath + "\\" + MainWindow.onlyProjectName + ".rx" + "\r\n"
                               + SetupContent.receiverOfSetupStr2 + receiverCount.ToString() + "\r\n"
                               + SetupContent.receiverOfSetupStr3 + "\r\n";

            MainWindow.setupStr = MainWindow.setupStr.Insert(insertSiteOfRec, insertStr);
            FileOperation.WriteFile(MainWindow.setupStr, MainWindow.mProjectFullName, false);
            if (MainWindow.creatSuccMesDisp)
            {
                MessageBox.Show("\"" + newReceiverName_textBox2.Text + "\"接收机创建成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            //MessageBox.Show("对接收机" + newReceiverName_textBox2.Text + "操作成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }