主要内容

使用飞行仪器和飞行动画显示飞行轨迹数据

这个例子展示了如何使用飞行仪表组件在UI图形窗口中可视化飞行轨迹。在本例中,您将与Aero一起创建和配置标准飞行仪表。动画对象。

装载飞行轨迹和仪表显示的记录数据

将记录的飞机位置、姿态和时间加载到工作空间。

负载simdata偏航= simdata(:,7);偏航(偏航<0)=偏航(偏航<0)+2*pi;Simdata(:,7) =偏航;

创建动画界面

若要显示存储在飞行轨迹数据中的飞行轨迹,请创建一个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.updateBodies (simdata (1,1));h.updateCamera (simdata (1,1));h.show ();

创建飞行仪器

创建一个包含飞行仪表的UI图形窗口。

图= ufigure图(“名字”“飞行仪器”...“位置”,[h.位置(1)-572 h.位置(2)+h.位置(4)-502 572 502],...“颜色”,[0.2667 0.2706 0.2784],“调整”“关闭”);

为了防止实时脚本为每个添加的ui元素添加一个新图像,将visibility属性设置为“off”。

fig.Visible =“关闭”

加载面板图像到一个轴:

imgPanel = imread(“FlightInstrumentPanel.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科曼奇的能力改变空速指示器限制:

空气中。限制= [25 250];空气中。ScaleColorLimits = [0,60;50200;200225;225250);

创造人造地平线:

航空地平线(“父”无花果,“位置”,[212 299 144 144]);

创建攀升率指标:

攀爬(“父”无花果,“位置”,[369 104 144 144]);

根据飞机能力改变爬升指示器最大爬升率:

爬。MaximumRate = 8000;

创建回合协调器:

Turn = uiaeroturn(“父”无花果,“位置”,[56 104 144 144]);

要更新飞行仪表和动画图形,请分配ValueChangingFcn回调到flightInstrumentsAnimationCallback helper函数。然后,当在滑块上选择时间时,飞行仪表和动画图形将根据所选择的时间值更新。

Sl = uislider(“父”无花果,“限制”, (simdata (1, 1) simdata(, 1)]。“FontColor”“白色”);sl.Position = [50 60 450 3];sl. valuechangingfcn = @(sl,event) flightInstrumentsAnimationCallback(fig,simdata,h,event);

要显示在滑块中选择的时间,请创建一个标签组件。

LBL = uilabel(“父”无花果,“文本”,[的时间:num2str (sl.Value, 4)“秒”),“FontColor”“白色”);lbl。位置= [230 10 90 30];

要显示图形,将Visibility属性设置为“on”。

fig.Visible =“上”

图飞行仪器包含一个轴对象和其他对象类型uiaeroaltimeter, uiaeroheading, uiaeroairspeed, uiaerohorizon, uiaeroclimb, uiaeroturn, uislider, uilabel。axis对象包含一个image类型的对象。

另请参阅

方法

功能

属性

相关的话题