|
@@ -26,7 +26,6 @@ using XdCxRhDW.App.EFContext;
|
|
|
using XdCxRhDW.App.Model;
|
|
|
using System.Windows.Documents;
|
|
|
using XdCxRhDW.App.ObServer;
|
|
|
-
|
|
|
namespace XdCxRhDW.App.UserControl
|
|
|
{
|
|
|
public partial class CtrlHome : DevExpress.XtraEditors.XtraUserControl
|
|
@@ -302,13 +301,19 @@ namespace XdCxRhDW.App.UserControl
|
|
|
switch (posRes.Item2)
|
|
|
{
|
|
|
case EnumPosType.X1D1CX:
|
|
|
- btnGDOP.Visibility = DevExpress.XtraBars.BarItemVisibility.Never;
|
|
|
+ //一星一地 测向线
|
|
|
+ btnDrawDfo.Visibility = btnGDOP.Visibility = DevExpress.XtraBars.BarItemVisibility.Never;
|
|
|
+ btnDrawCX.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
|
|
|
break;
|
|
|
case EnumPosType.X2D1:
|
|
|
+ //两星一地 GDOP 时差线
|
|
|
btnGDOP.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
|
|
|
+ btnDrawCX.Visibility = btnDrawDfo.Visibility = DevExpress.XtraBars.BarItemVisibility.Never;
|
|
|
break;
|
|
|
case EnumPosType.RH:
|
|
|
- btnGDOP.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
|
|
|
+ //融合DW GDOP 时差线 测向线
|
|
|
+ btnDrawCX.Visibility = btnGDOP.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
|
|
|
+ btnDrawDfo.Visibility = DevExpress.XtraBars.BarItemVisibility.Never;
|
|
|
break;
|
|
|
default:
|
|
|
break;
|
|
@@ -762,8 +767,6 @@ namespace XdCxRhDW.App.UserControl
|
|
|
}
|
|
|
private void DrawDfoLine(PosRes item, EnumPosType posType)
|
|
|
{
|
|
|
- DxHelper.MsgBoxHelper.ShowWarning($"未实现绘制频差线!");
|
|
|
- return;
|
|
|
switch (posType)
|
|
|
{
|
|
|
case EnumPosType.X1D1CX:
|
|
@@ -798,7 +801,6 @@ namespace XdCxRhDW.App.UserControl
|
|
|
DxHelper.MsgBoxHelper.ShowWarning($"未找到定位相关的计算[{item.CgResID}]信息");
|
|
|
return;
|
|
|
}
|
|
|
-
|
|
|
var satTx = listTx.Find(p => p.TxType == EnumTxType.MainSat);
|
|
|
if (satTx == null)
|
|
|
{
|
|
@@ -826,17 +828,19 @@ namespace XdCxRhDW.App.UserControl
|
|
|
if (posType == EnumPosType.X2D1)
|
|
|
{
|
|
|
DfoLineTwoStartOption twoStartOption = new DfoLineTwoStartOption();
|
|
|
- twoStartOption.MsEph = new double[] { cg.MainX.Value, cg.MainY.Value, cg.MainZ.Value, 0, 0, 0 };
|
|
|
- twoStartOption.NsEph = new double[] { cg.Adja1X.Value, cg.Adja1Y.Value, cg.Adja1Z.Value, 0, 0, 0 };
|
|
|
- twoStartOption.MsAnt = new double[] { satTx.Lon, satTx.Lat, 0 };
|
|
|
- twoStartOption.NsAnt = new double[] { satNTx.Lon, satNTx.Lat, 0 };
|
|
|
- twoStartOption.RefGeod = new double[] { refTx.Lon, refTx.Lat, 0 };
|
|
|
- //twoStartOption.TargetDto = cg.DtoSx;
|
|
|
- //twoStartOption.RefDto = cg.YbMain - cg.YbAdja;
|
|
|
- //twoStartOption.PosLon = item.PosLon;
|
|
|
- //twoStartOption.PosLat = item.PosLat;
|
|
|
+ twoStartOption.Freq = cg.TarFreqUp.HasValue ? cg.TarFreqUp.Value : 0;
|
|
|
+ twoStartOption.RefFreq = cg.RefFreqUp.HasValue ? cg.RefFreqUp.Value : 0;
|
|
|
+ twoStartOption.MsEph = new double[] { cg.MainX.Value, cg.MainY.Value, cg.MainZ.Value, cg.MainVx.Value, cg.MainVy.Value, cg.MainVz.Value };
|
|
|
+ twoStartOption.NsEph = new double[] { cg.Adja1X.Value, cg.Adja1Y.Value, cg.Adja1Z.Value, cg.Adja1Vx.Value, cg.Adja1Vy.Value, cg.Adja1Vz.Value };
|
|
|
+ twoStartOption.MsAnt = new double[] { satTx.Lon, satTx.Lat };
|
|
|
+ twoStartOption.NsAnt = new double[] { satNTx.Lon, satNTx.Lat };
|
|
|
+ twoStartOption.RefGeod = new double[] { refTx.Lon, refTx.Lat };
|
|
|
+ twoStartOption.TargetDfo = cg.Dfo1.Value;
|
|
|
+ twoStartOption.Turn1 = Math.Abs(twoStartOption.Freq - (cg.TarFreqDown.HasValue ? cg.TarFreqDown.Value : 0));
|
|
|
+ twoStartOption.Turn2 = Math.Abs(twoStartOption.RefFreq - (cg.RefFreqDown.HasValue ? cg.RefFreqDown.Value : 0));
|
|
|
+ twoStartOption.RefDfo = cg.YbMainDfo.Value - cg.YbAdja1Dfo.Value;
|
|
|
var tsDtoLine = DrawDfoLineHelper.DtfoLineTwoStart(twoStartOption);
|
|
|
- mapControl1.DrawDtoPonit($"双星[{listSat.FirstOrDefault(m => m.ID == satTx.ID)?.Sat},{listSat.FirstOrDefault(m => m.ID == satNTx.ID)?.Sat}]时差线", tsDtoLine);
|
|
|
+ mapControl1.DrawDtoPonit($"双星[{listSat.FirstOrDefault(m => m.ID == satTx.ID)?.Sat},{listSat.FirstOrDefault(m => m.ID == satNTx.ID)?.Sat}]频差线", tsDtoLine);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception ex)
|