Main Content

Create a Simple Mask

You can mask a block interactively by using the Mask Editor or mask it programmatically. This example describes how to mask a block by using the Mask Editor. To mask a block programmatically, see Control Masks Programmatically.

For masking examples, see Simulink Masking Examples.

Step 1: Open Mask Editor

  1. Open the model in which you want to mask a block. For example, open subsystem_example.

    This model contains a Subsystem block that models the equation for a line: y = mx + b.

  2. Select the Subsystem block and on the Subsystem tab, in the Mask group,click Create Mask.

    mask editor

Step 2: Define the Mask

The Mask Editor contains four tabs that enable you to define the block mask and customize the dialog box for the mask.

For detailed information on each pane, see Mask Editor Overview.

Parameters & Dialog Tab

Use this tab to add controls like parameters, displays, and action items to the mask dialog box.

To add Edit boxes to the block mask.

  1. In the left pane, under Parameter, click Edit twice to add two new rows in the Dialog box pane.

  2. Type Slope and Intercept in the Prompt column for the two Edit parameters. The value that you enter in Prompt column appears on the mask dialog box. Similarly, type m and b in the Name column. The value you enter in Name column is the mask parameter name. The mask parameter name must be a valid MATLAB® name.

  3. In the right pane, under Property editor, provide values in the Properties, Dialog, and Layout sections.

  4. Click Apply.

  5. To preview the mask dialog box without exiting the Mask Editor, click Preview.

For detailed information, see Parameters & Dialog Pane.


A Simulink® mask parameter cannot reference another parameter on the same mask.

Code Pane

Use this pane to specify MATLAB code to control the mask parameters. For example,you can provide a predefined value for a mask parameter.

Consider the equation y = mx + b in the example. To set the value of the child block corresponding to 'm', you can use the set_param function in the code pane.


For detailed information, see Code Pane.

Icon Pane

Use this tab to create an icon for the block mask. You can use the Properties pane on the left to specify icon properties and icon visibility.

Add an image to the block mask.

  1. In the Block frame drop-down box, select Visible.

  2. In the Icon transparency drop-down box, select Opaque.

  3. In the Icon units drop-down box, select Autoscale.

  4. To restrict the icon rotation, select Fixed from the Icon rotation list.

  5. In the Icon drawing commands text box, type,

    x = [0 0.5 1 1.5];y = [0 0.5 1 1.5]; 
    % An example to defines the variables x and y
    plot(y,x) % Command to plot the graph

    For more information on drawing command syntax, see Icon drawing commands.

  6. To save the changes, click Apply. To preview the block mask icon without exiting the Mask Editor, click Preview


For detailed information, see Icon Pane.

You can create static or dynamic block mask icons. For more information, see Draw Mask Icon and slexMaskDisplayAndInitializationExample.

Constraints Pane

Mask parameter constraints help you to create validations on a mask parameter without having to write your own validation code. There are three types of constraints, Parameter Constraint, Cross Parameter Constraints, and Port Constraints.

Parameter Constraint: A mask can contain parameters that accept user input values. You can provide input values for mask parameters using the mask dialog box. Constraints ensure that the input for the mask parameter is within a specified range. For example, consider a masked Gain block. You can set a constraint where the input value must be between 1 and 10. If you provide an input that is outside the specified range, an error displays. Constraint Browser on the left pane helps you to manage Shared Constraints.

Cross Parameter Constraint: Cross-parameter constraints are applied among two or more Edit or Combobox type mask parameters. You can use a cross parameter constraint when you want to specify scenarios such as, Parameter1 must be greater than Parameter2.

Port Constraint: You can specify constraints on the input and output ports of a masked block. The port attributes are checked against the constraints when you compile the model.

Step 3: Operate on Mask

  1. You can preview the mask and choose to unmask the block or edit the block mask.

  2. Double-click the masked block.

    The mask dialog box appears.

  3. Type values in the Slope and Intercept boxes of the mask dialog box. To view the output, simulate the model.

  4. Click OK.

  5. To edit the mask definition, select the subsystem block and click Edit Mask from the Subsystem tab in the Toolstrip. For more information, see Manage Existing Masks.

  6. Select the masked block and on the Subsystem Block tab, in the Mask group, click Look Under Mask to view:

    • The blocks inside the masked subsystem

    • The built-in block dialog box of a masked block

    • The base mask dialog box of a linked masked block

Related Topics