Main Content

プログラムによるシステム マスクの作成と表示

モデルまたはサブシステムのブロック線図にシステム マスクを適用できます。モデルをマスクすることで、モデルをカプセル化し、独自のカスタマイズ可能なマスク パラメーター ダイアログ ボックスをもつことができます。モデルをマスクすると、モデル引数はマスク パラメーターになります。マスクされたモデルを参照すると、マスクを介してモデル パラメーターを制御することで、モデルのユーザー インターフェイスが向上します。

この例では、プログラムによってシステム マスクを作成および表示する方法を説明します。

システム マスクの作成

関数 Simulink.Mask.Create を使用してサブシステムにマスクを作成します。

new_system('sysmask');
save_system;
maskObj = Simulink.Mask.create('sysmask')
maskObj = 
  Mask with properties:

                         Type: 'sysmask'
                  Description: ''
                         Help: ''
               Initialization: ''
               SelfModifiable: 'off'
                 BlockDVGIcon: ''
                      Display: ''
       SaveImageFileWithModel: 'off'
                    IconFrame: 'on'
                   IconOpaque: 'opaque'
         RunInitForIconRedraw: 'analyze'
                   IconRotate: 'none'
                   PortRotate: 'default'
                    IconUnits: 'autoscale'
    SaveCallbackFileWithModel: 'off'
                 CallbackFile: ''
         ParameterConstraints: [0x0 Simulink.Mask.Constraints]
              PortConstraints: [0x0 Simulink.Mask.PortConstraint]
                   Parameters: [0x0 Simulink.MaskParameter]
              PortIdentifiers: [0x0 Simulink.Mask.PortIdentifier]
    CrossParameterConstraints: [0x0 Simulink.Mask.CrossParameterConstraints]
         CrossPortConstraints: [0x0 Simulink.Mask.CrossPortConstraint]
                     BaseMask: [0x0 Simulink.Mask]

システム マスクの表示

モデル sysmask のマスクを取得して maskObj に格納します。

maskObj = Simulink.Mask.get('sysmask')
maskObj = 
  Mask with properties:

                         Type: 'sysmask'
                  Description: ''
                         Help: ''
               Initialization: ''
               SelfModifiable: 'off'
                 BlockDVGIcon: ''
                      Display: ''
       SaveImageFileWithModel: 'off'
                    IconFrame: 'on'
                   IconOpaque: 'opaque'
         RunInitForIconRedraw: 'analyze'
                   IconRotate: 'none'
                   PortRotate: 'default'
                    IconUnits: 'autoscale'
    SaveCallbackFileWithModel: 'off'
                 CallbackFile: ''
         ParameterConstraints: [0x0 Simulink.Mask.Constraints]
              PortConstraints: [0x0 Simulink.Mask.PortConstraint]
                   Parameters: [0x0 Simulink.MaskParameter]
              PortIdentifiers: [0x0 Simulink.Mask.PortIdentifier]
    CrossParameterConstraints: [0x0 Simulink.Mask.CrossParameterConstraints]
         CrossPortConstraints: [0x0 Simulink.Mask.CrossPortConstraint]
                     BaseMask: [0x0 Simulink.Mask]

メモ:

モデル マスクをマスク コールバックでマスク オブジェクトとして取得するには、Simulink.Mask.get を使用できます。システム名やシステム ハンドルを渡す必要はありません。

関連するトピック