/// <summary> /// GLONASS SSR信息转换。Message1063 /// </summary> /// <param name="msg"></param> /// <param name="SSRGlonassOrbitHeader"></param> /// <returns></returns> public Ephemeris GetSp3Param(Message1063 msg, SSRGlonassHeader65 SSRGlonassOrbitHeader) { Ephemeris Sp3Record = new Ephemeris(); Sp3Record.Prn = new SatelliteNumber((int)msg.SatelliteID, SatelliteType.R); Sp3Record.Time = new Time(DateTime.Parse(Setting.ReceivingTimeOfNtripData.Date.ToString()), SSRGlonassOrbitHeader.EpochTime1s + 1);//是否需要更改,两个系统所采用的时间系统差的存在 Sp3Record.XYZ = new XYZ(msg.DeltaRadial * RtcmConst.DeltaRadial, msg.DeltaAlongTrack * RtcmConst.DeltaAlongTrack, msg.DeltaCrossTrack * RtcmConst.DeltaCrossTrack); Sp3Record.XyzDot = new XYZ(msg.DotDeltaRadial * RtcmConst.DotDeltaRadial, msg.DotDeltaAlongTrack * RtcmConst.DotDeltaAlongTrack, msg.DotDeltaCrossTrack * RtcmConst.DotDeltaCrossTrack); Sp3Record.Rms = new XYZ(); return(Sp3Record); }
/// <summary> /// GLONASS SSR信息转换。Message1064 /// </summary> /// <param name="msg"></param> /// <param name="SSRGlonassClockCorrectionHeader"></param> /// <returns></returns> public Ephemeris GetSp3Param(Message1066 msg, SSRGlonassHeader65 SSRGlonassClockCorrectionHeader)//, double SSRt,XYZ a,XYZ b) { Ephemeris Sp3Record = new Ephemeris(); Sp3Record.Prn = new SatelliteNumber((int)msg.SatelliteID, SatelliteType.R); Sp3Record.Time = new Time(DateTime.Parse(Setting.ReceivingTimeOfNtripData.Date.ToString()), SSRGlonassClockCorrectionHeader.EpochTime1s + 1); //是否需要更改,两个系统所采用的时间系统差的存在 Sp3Record.ClockBias = msg.DeltaClockC0 * RtcmConst.DeltaClockC0solution / GnssConst.LIGHT_SPEED; // (3 * 1E8); Sp3Record.ClockDrift = msg.DeltaClockC1 * RtcmConst.DeltaClockC1solution / GnssConst.LIGHT_SPEED; // (3 * 1E8); Sp3Record.DriftRate = msg.DeltaClockC2 * RtcmConst.DeltaClockC2solution / GnssConst.LIGHT_SPEED; // (3 * 1E8); Sp3Record.ClockBiasRms = new double(); Sp3Record.Rms = new XYZ(); return(Sp3Record); }