Main Content

封装显示和初始化命令

为封装模块创建图标。您可以创建静态或动态图标。静态图标保持不变。动态图标是使用封装参数创建的,因此图标会随着封装参数的变化而变化。此示例说明了如何使用绘图命令创建封装图标。

浏览模型

此模型有四个子系统模块,演示静态和动态封装图标的绘制。

open_system("slexMaskDisplayAndInitializationExample");

绘制静态图标

静态封装图标将保持不变,与封装参数的值无关。要创建静态图标,请执行以下操作:

1.右键点击模块 Independent static Icon > 封装 > 编辑封装

2.转至图标窗格,使用 patch 命令在封装图标上绘制指定形状的彩色补片。

patch([0 5 10 15 20 15 10 5 0], [0 20 8 20 0 16 6 16 0], [0 0 1])

您也可以选择在封装图标上显示的图像。

绘制动态图标

根据封装参数绘制动态图标

动态图标将随封装参数的值而变化。在此示例中,图标的形状根据封装弹出框参数在三角形或四边形之间变化。此外,形状的颜色深度可以根据封装参数进行更改。

要创建动态图标,请执行以下操作:

1.右键点击模块 Icon Dependent on Parameters > 封装 > 编辑封装

2.创建一个弹出框参数 graphic_opt,输入 TriangleQuadrilateral 作为类型选项

3.创建一个编辑参数 colorIntensity 来控制形状的颜色深度。

4.图标窗格中使用以下代码。

使用 get_param 获取选定元素的文本

gr_opt = get_param(gcb, 'graphic_opt');
if strcmp(gr_opt,'Quadrilateral')
 % Here we can use the mask parameter 'colorIntensity'
 % directly because it is of type 'edit'
    patch([1 4 12 22], [3 23 32 10], [1 0 0]*colorIntensity);
elseif strcmp(gr_opt,'Triangle')
    patch([4 12 22], [23 32 10], [1 0 0]*colorIntensity);
end

双击模块 Icon Dependent on Parameters 以查看模块参数。对于形状,选择 Quadrilateral,对于颜色深度,输入 .8。点击确定以查看封装图标的变化。

根据封装工作区变量绘制封装图标

您可以使用封装参数直接控制封装图标,也可以使用派生的封装参数控制封装图标。在此示例中,封装参数乘以 4,结果显示在封装图标中。

1.右键点击模块 Icon Dependent on Mask Workspace > 封装 > 编辑封装

2.创建一个编辑参数 gain_val_param,并将初始值设置为 2

3.代码窗格中,使用以下代码将封装参数的初始值乘以 4

function initialization()
final_gain_val = gain_val_param * 4;
end

4.图标窗格中,使用以下代码显示封装图标上的值。

disp(['Final Gain Value: ',num2str(final_gain_val)])

双击模块 Icon Dependent on Mask Workspace 以查看模块参数。输入 Gain Value 参数的值,然后点击确定以查看封装图标的变化。

注意:如果 Simulink® 无法计算图标绘制命令窗格中的所有命令以生成图标,封装上将出现三个问号 (? ? ?)。

相关主题