这个例子展示了如何使用飞行仪表组件在UI图形窗口中可视化飞行轨迹。在本例中,您将与Aero一起创建和配置标准飞行仪表。动画对象。
将记录的飞机位置、姿态和时间加载到工作空间。
负载simdata
若要显示存储在飞行轨迹数据中的飞行轨迹,请创建一个Aero。动画对象。在这个例子中使用的飞机是派珀PA24-250科曼奇。
h = air . animation;h.createBody (“pa24 - 250 _orange.ac”,“Ac3d”);h.Bodies{1}。TimeSeriesSource = simdata;h.Camera.PositionFcn = @ staticcamerposition;h.Figure.Position(1) = h.Figure.Position(1) + 572/2;h.show ();
创建一个包含飞行仪表的UI图形窗口。
图= ufigure图(“名字”,“飞行仪器”,...“位置”,[h.位置(1)-572 h.位置(2)+h.位置(4)-502 572 502],...“颜色”,[0.2667 0.2706 0.2784],“调整”,“关闭”);
加载面板图像到一个轴:
imgPanel = imread(“astFlightInstrumentPanel.png”);Ax = uiaxes(“父”无花果,“可见”,“关闭”,“位置”,[10 30 530 460],...“写成BackgroundColor”,[0.2667 0.2706 0.2784]);图像(ax, imgPanel);disableDefaultInteractivity (ax);
创建标准的导航飞行仪器:
创建高度计:
Alt =航空高度计(“父”无花果,“位置”,[369 299 144 144]);
创建标题指示器:
头= uiaeroheading(“父”无花果,“位置”,[212 104 144 144]);
创建空速指示器:
空气= uiairairspeed (“父”无花果,“位置”,[56 299 144 144]);
根据派珀PA 24-250科曼奇的能力改变空速指示器限制:
空气中。限制= [20 200];空气中。ScaleColorLimits = [0 50;40 160;160 190;190 200];
创造人造地平线:
航空地平线(“父”无花果,“位置”,[212 299 144 144]);
创建攀升率指标:
攀爬(“父”无花果,“位置”,[369 104 144 144]);
根据飞机能力改变爬升指示器最大爬升率:
爬。MaximumRate = 4000;
创建回合协调器:
Turn = uiaeroturn(“父”无花果,“位置”,[56 104 144 144]);
要更新飞行仪表和动画图形,请分配ValueChangingFcn
回调到astHelperFlightInstrumentsAnimation
helper函数。然后,当在滑块上选择时间时,飞行仪表和动画图形将根据所选择的时间值更新。
Sl = uislider(“父”无花果,“限制”, (simdata (1, 1) simdata(, 1)]。“FontColor”,“白色”);sl.Position = [50 60 450 3];sl. valuechangingfcn = @(sl,event) astHelperFlightInstrumentsAnimation(fig,simdata,h,event);
要显示在滑块中选择的时间,请创建一个标签组件。
LBL = uilabel(“父”无花果,“文本”,[的时间:num2str (sl.Value, 4)“秒”),“FontColor”,“白色”);lbl。位置= [230 10 90 30];