Main Content

Stateflow.Port

ステートまたは Atomic サブチャート内の入口端子または出口端子

    説明

    Stateflow.Port オブジェクトは、Stateflow® の階層内の境界を越える入口と出口の接続を提供する端子とジャンクションを作成するために使用します。入口端子と出口端子により、ステートに出入りする遷移ロジックが分離されてコンポーネント化が改善されます。スーパートランジションとは異なり、Atomic サブチャートで使用できます。詳細については、ステートの境界を越える入口および出口接続の作成を参照してください。

    入口端子と出口端子は、ステートまたは Atomic サブチャートの境界上に配置されます。各端子には、ステートまたは Atomic サブチャート内の入口または出口の位置をマークする対応するジャンクションがあります。端子とジャンクションは別々の Stateflow.Port オブジェクトで表されます。

    作成

    説明

    port = Stateflow.Port(parent,portType) は、指定された端子タイプの Stateflow.Port オブジェクトを親の中に作成します。関数は、対応する入口端子または出口端子の 2 つ目の Stateflow.Port オブジェクトを親の境界上に作成します。対応する Stateflow.Port オブジェクトを特定するには、関数 Stateflow.findMatchingPort を使用します。

    入力引数

    すべて展開する

    新しい入口ジャンクションまたは出口ジャンクションの親。Stateflow.State オブジェクトとして指定するか、Stateflow.AtomicSubchart オブジェクトのサブチャートである Stateflow.Chart オブジェクトとして指定します。

    ジャンクションのタイプ。"EntryJunction" または "ExitJunction" として指定します。

    プロパティ

    すべて展開する

    Stateflow API オブジェクトには、Stateflow エディターで設定した値に対応するプロパティがあります。プロパティにアクセスするかプロパティを変更するには、ドット表記を使用します。複数の API オブジェクトの複数のプロパティにアクセスするか、それらを変更するには、関数 get および関数 set をそれぞれ使用します。詳細については、Stateflow オブジェクトのプロパティの変更と関数の呼び出しを参照してください。

    内容

    端子またはジャンクションのラベル。string スカラーまたは文字ベクトルとして指定します。このプロパティを変更すると、対応する Stateflow.Port オブジェクトの LabelString プロパティが自動的に同じ値に設定されます。

    このプロパティは読み取り専用です。

    端子またはジャンクションのタイプ。次のいずれかの値として指定します。

    • 'EntryJunction' — ステートまたは Atomic サブチャート内の入口ジャンクション

    • 'EntryPort' — ステートまたは Atomic サブチャートの境界上の入口端子

    • 'ExitJunction' — ステートまたは Atomic サブチャート内の出口ジャンクション

    • 'ExitPort' — ステートまたは Atomic サブチャートの境界上の出口端子

    ジャンクションと端子のペアをコメントアウトするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。このプロパティを true に設定することは、入口ジャンクションまたは出口ジャンクションを右クリックして [コメント アウト] を選択することと等価です。このプロパティは、入口ジャンクションと出口ジャンクションに対してのみ適用されます。このプロパティを入口端子または出口端子に対して設定しようとするとエラーになります。詳細については、Stateflow チャート内のオブジェクトのコメントアウトを参照してください。

    このプロパティは読み取り専用です。

    端子またはジャンクションを暗黙的にコメントアウトするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。端子またはジャンクションを含むステート、ボックス、または関数をコメントアウトすると、その端子またはジャンクションは暗黙的にコメントアウトされます。また、入口端子と出口端子は、対応する入口ジャンクションまたは出口ジャンクションをコメントアウトすると暗黙的にコメントアウトされます。

    入口ジャンクションまたは出口ジャンクションに追加するコメント テキスト。string スカラーまたは文字ベクトルとして指定します。このプロパティは、IsExplicitlyCommented プロパティが true である場合に入口ジャンクションと出口ジャンクションに対してのみ適用されます。Stateflow エディターで、ジャンクション上のコメント バッジ をポイントすると、テキストがツールヒントとして表示されます。IsExplicitlyCommented プロパティを false に設定すると、CommentText の値は "" に戻ります。

    グラフィカルな外観

    端子またはジャンクションの位置とサイズ。次のプロパティをもつ Stateflow.PortPosition オブジェクトとして指定します。

    • Center — 端子またはジャンクションの中心の位置。チャートの左上隅を基準とする座標からなる 2 要素数値ベクトル [x y] として指定します。

    • Radius — 端子またはジャンクションの半径。スカラーとして指定します。

    例: port.Position.Center = [31.41 27.18];

    例: port.Position.Radius = 16.18;

    端子またはジャンクションのラベルの位置とサイズ。[left top width height] 形式の 4 要素数値ベクトルとして指定します。

    入力遷移の矢印のサイズ。スカラーとして指定します。

    階層

    このプロパティは読み取り専用です。

    端子またはジャンクションを含むチャート。Stateflow.Chart オブジェクトとして指定します。

    このプロパティは読み取り専用です。

    端子またはジャンクションのサブビューアー。Stateflow.ChartStateflow.StateStateflow.Box、 のいずれかのオブジェクトとして指定します。サブビューアーは、端子をグラフィカルに表示できるチャートまたはサブチャートです。

    このプロパティは読み取り専用です。

    所属先のステートまたはサブチャート。Stateflow.State または Stateflow.AtomicSubchart のいずれかのオブジェクトとして指定します。入口端子または出口端子の所属先は、その端子を境界上に含むステートまたはサブチャートです。このプロパティは、入口端子と出口端子に対してのみ適用されます。

    このプロパティは読み取り専用です。

    端子またはジャンクションを含むマシン。Stateflow.Machine オブジェクトとして指定します。

    このプロパティは読み取り専用です。

    モデルの階層構造における端子またはジャンクションの親の場所。文字ベクトルとして指定します。

    このプロパティは読み取り専用です。

    端子またはジャンクションに対応するジャンクションまたは端子があるかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。このプロパティはチャート内部の矛盾を検出するために使用されます。

    識別

    端子またはジャンクションの説明。string スカラーまたは文字ベクトルとして指定します。

    端子またはジャンクションのドキュメント リンク。string スカラーまたは文字ベクトルとして指定します。

    端子またはジャンクションのユーザー定義のタグ。任意の型のデータとして指定します。

    このプロパティは読み取り専用です。

    セッションに依存しない識別子。整数スカラーとして指定します。このプロパティを使用して、端子またはジャンクションをモデル内の他のオブジェクトと区別します。

    このプロパティは読み取り専用です。

    一意の識別子。整数スカラーとして指定します。SSIdNumber とは異なり、このプロパティの値は新しい MATLAB® セッションを開始するたびに再割り当てされ、オブジェクトが削除されるとリサイクルされる場合があります。

    オブジェクト関数

    getParentオブジェクトの親の特定
    sinkedTransitions指定した遷移先をもつ遷移の特定
    sourcedTransitions指定した遷移元をもつ遷移の特定
    dialogプロパティ ダイアログ ボックスを開く
    isCommentedグラフィカル オブジェクトがコメントアウトされているかどうかの判別
    view編集環境でオブジェクトを表示
    highlightグラフィカル オブジェクトの強調表示
    fitToViewグラフィカル オブジェクトの拡大表示

    すべて折りたたむ

    チャート ch 内で、Atomic サブチャート A に対応する Stateflow.AtomicSubchart オブジェクトを検索します。

    atomicSubchart = find(ch,"-isa","Stateflow.AtomicSubchart",Name="A");

    出口ジャンクションを Atomic サブチャートに追加します。Atomic サブチャートの Subchart プロパティを、出口ジャンクションの親として使用します。出口ジャンクションの PortType プロパティの値を表示します。

    exitJunction = Stateflow.Port(atomicSubchart.Subchart,"ExitJunction");
    exitJunction.PortType
    ans =
    
        'ExitJunction'

    出口ジャンクションのラベルを "exit" に設定します。

    exitJunction.labelString = "exit";

    一致する出口端子の Stateflow.Port オブジェクトを検索します。出口端子の PortType プロパティの値を表示します。

    exitPort = Stateflow.findMatchingPort(exitJunction);
    exitPort.PortType
    ans =
    
        'ExitPort'

    出口端子のラベルを表示します。

    exitPort.labelString
    ans =
    
        'exit'

    ヒント

    • 入口ジャンクションまたは出口ジャンクションを別の親に移動すると、Stateflow は一致する端子の Stateflow.Port オブジェクトを削除し、新しい親に Stateflow.Port オブジェクトを作成します。一致する新しい端子を特定するには、関数 Stateflow.findMatchingPort を使用します。

    バージョン履歴

    R2021b で導入