封装显示和初始化命令
为封装模块创建图标。您可以创建静态或动态图标。静态图标保持不变。动态图标是使用封装参数创建的,因此图标会随着封装参数的变化而变化。此示例说明了如何使用绘图命令创建封装图标。
浏览模型
此模型有四个子系统模块,演示静态和动态封装图标的绘制。
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
,输入 Triangle
和 Quadrilateral
作为类型选项。
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® 无法计算图标绘制命令窗格中的所有命令以生成图标,封装上将出现三个问号 (? ? ?)。