Example #1
0
        /// <summary>
        /// 读取数据
        /// </summary>
        public static Data.Rinex.RinexObsFile ReadFile(string ObsPath)
        {
            Data.Rinex.RinexObsFile ObsFile = null;
            string lastChar  = Gdp.Utils.StringUtil.GetLastChar(ObsPath);
            string lastChar3 = Gdp.Utils.StringUtil.GetLastChar(ObsPath, 3);
            string lastChar5 = Gdp.Utils.StringUtil.GetLastChar(ObsPath, 5);

            if (String.Equals(lastChar, "o", StringComparison.CurrentCultureIgnoreCase) || String.Equals(lastChar3, "rnx", StringComparison.CurrentCultureIgnoreCase))
            {
                var obsFileReader = new RinexObsFileReader(ObsPath);
                ObsFile = obsFileReader.ReadObsFile();
            }

            //if (String.Equals(lastChar, "z", StringComparison.CurrentCultureIgnoreCase)
            //    || String.Equals(lastChar3, "crx", StringComparison.CurrentCultureIgnoreCase)
            //    || String.Equals(lastChar5, "crx.gz", StringComparison.CurrentCultureIgnoreCase)
            //    )
            //{
            //    Gdp.IO.InputFileManager inputFileManager = new Gdp.IO.InputFileManager(Setting.TempDirectory);
            //    ObsPath = inputFileManager.GetLocalFilePath(ObsPath, "*.*o;*.rnx", "*.*");
            //    var obsFileReader = new RinexObsFileReader(ObsPath);
            //    ObsFile = obsFileReader.ReadObsFile();
            //}
            //if (String.Equals(lastChar, "s", StringComparison.CurrentCultureIgnoreCase))
            //{
            //    ObsFile = new TableObsFileReader(ObsPath).Read();
            //}
            if (ObsFile == null)
            {
                throw new Exception("不支持输入文件格式!");
                return(ObsFile);
            }
            return(ObsFile);
        }
Example #2
0
        private void button_exclude_Click(object sender, EventArgs e)
        {
            string sourseDir1 = this.textBox_dir.Text;

            string[] files = Directory.GetFiles(sourseDir1, "*.13O");
            string   P1    = "P1";

            progressBar1.Maximum = files.Length;
            progressBar1.Minimum = 1;
            progressBar1.Step    = 1;
            progressBar1.Value   = progressBar1.Minimum;
            for (int i = 0; i < files.Length; i++)
            {
                obsFile = new RinexObsFileReader(files[i]).ReadObsFile();
                progressBar1.PerformStep();
                progressBar1.Refresh();
                throw new Exception("to be fiexd");
                //if (!obsFile.Header.ObserTypes.Contains(P1))
                //{
                //    File.Delete(files[time]);
                //    continue;
                //}
                RinexEpochObservation firstobservation = obsFile.GetEpochObservation(obsFile.StartTime);

                //获取GPS卫星
                List <SatelliteNumber> firstsats = firstobservation.Prns;
                List <SatelliteNumber> gpssats   = new List <SatelliteNumber>();
                foreach (var item in firstsats)
                {
                    if (item.SatelliteType == SatelliteType.G)
                    {
                        gpssats.Add(item);
                    }
                }

                bool hasp1p2 = false;
                foreach (var prn in gpssats)
                {
                    if (firstobservation[prn][P1].Value != 0)
                    {
                        hasp1p2 = true;
                    }
                }
                if (!hasp1p2)
                {
                    File.Delete(files[i]);
                }
            }
        }
Example #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            obsFile = (Data.Rinex.RinexObsFile) new Data.Rinex.RinexObsFileReader(this.textBox_obsPath.Text).ReadObsFile();
            // new ObservationFlieReader(this.textBox_obsPath.Text).ReadObsFile();
            List <SatelliteNumber> prns    = obsFile.GetPrns();
            List <SatelliteNumber> gpsprns = new List <SatelliteNumber>();

            foreach (var prn in prns)
            {
                if (prn.SatelliteType == SatelliteType.G)
                {
                    gpsprns.Add(prn);
                }
            }
            gpsprns.Sort();
            this.bindingSource_SDWL.DataSource = gpsprns;
        }
Example #4
0
        /// <summary>
        /// 读取数据
        /// </summary>
        private void ReadFile()
        {
            ObsFile = ObsFileUtil.ReadFile(ObsPath);

            if (ObsFile == null)
            {
                Geo.Utils.FormUtil.ShowWarningMessageBox("不支持输入文件格式!");
                return;
            }

            this.bindingSource_obsInfo.DataSource = ObsFile;
            var prns = ObsFile.GetPrns();

            prns.Sort();
            this.bindingSource_sat.DataSource = prns;

            this.attributeBox1.DataGridView.DataSource = Geo.Utils.ObjectUtil.GetAttributes(ObsFile.Header, false);

            string msg = "";

            msg += "首次观测时间:" + ObsFile.Header.StartTime + "\r\n";
            msg += "最后观测时间:" + ObsFile.Header.EndTime + "\r\n";
            msg += "采样间隔:" + ObsFile.Header.Interval + " 秒" + "\r\n";

            this.textBox_show.Text = msg;


            Data.Rinex.RinexObsFile ObsFile1 = ObsFileUtil.ReadFile(ObsPath);
            var observations = new MemoRinexFileObsDataSource(ObsFile1);

            foreach (var epochInfo in observations)
            {
                int a = 1;
                int b = 2;
            }
        }