Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Stateflow エディターの操作

Stateflow エディター

Stateflow® エディターでは、Stateflow チャートの描画、ズーム、修正、印刷、および Simulink® モデルへの保存ができます。新しい Stateflow チャートを開くと、Stateflow エディターにそのチャートが表示されます。

Stateflow エディターで新しい Stateflow チャートを開くには、MATLAB® コマンド プロンプトに次を入力します。

  1. コマンド結果
    sfnew
    既定のアクション言語でチャートを作成します。詳細については、sfnewを参照してください。
    sfnew -MATLAB
    MATLAB をアクション言語として空のチャートを作成します。
    sfnew -C
    空の C チャートを作成

    Simulink エディターが開き、空のチャートがキャンバスに表示されます。

  2. Stateflow エディターを開くには、チャート オブジェクトをダブルクリックします。

Default view of the Stateflow Editor.

Stateflow エディターの主要なコンポーネントは、チャート キャンバス、オブジェクト パレット、[シンボル] ペイン、および [プロパティ インスペクター] です。

  • チャート キャンバスは、ステート、遷移、およびその他のグラフィカル要素を組み合わせてチャートを作成するための描画領域です。

  • キャンバスの左側にあるオブジェクト パレットには、チャートにグラフィカル要素を追加するための一連のツールが表示されます。詳細については、グラフィカル オブジェクトを参照してください。

    オブジェクトを追加するには、次を行います。

    • オブジェクトのアイコンをクリックして、カーソルを描画領域内のオブジェクトを配置する場所に移動します。

    • オブジェクトのアイコンを描画領域にドラッグします。

    • オブジェクトのコピーを作成するには、アイコンをダブルクリックして、描画領域内を複数回クリックします。

  • キャンバスの右側にある [シンボル] ペインでは、チャートに新しいデータを追加して未定義や未使用のシンボルをすべて解決します。また、キャンバスの右側にある [シンボル] ペインの上に、[プロパティ インスペクター] もあります。[シンボル] ペインにリストされているシンボルのプロパティを変更するには、[プロパティ インスペクター] を使用します。詳細については、Stateflow エディターでのシンボルの管理を参照してください。

エディターの操作を元に戻す/やり直す

チャート内で実行した操作を元に戻したり、やり直すことができます。操作を元に戻すと、最後に実行した編集操作がキャンセルされます。チャートで操作を元に戻した後は、同じ操作を 1 つずつやり直すことも可能です。

  • チャートで操作を元に戻すには、Ctrl + Z を押す。

  • チャートで操作をやり直すには、Ctrl + Y を押す。

元に戻す操作の例外

すべてのエディターの操作は元に戻したりやり直したりすることができますが、以下の例外があります。

チャートの色とフォントの指定

Stateflow でチャートの個々の要素を表示する方法を変更したり、チャート全体で使用するグローバル表示オプションを指定したりできます。

単一要素のサイズ変更

チャート内の単一の要素の表示サイズを変更するには、その要素を右クリックし、コンテキスト メニューから新しい [書式設定] オプションを選択します。使用可能なオプションは、選択する要素によって異なります。

オプションステート遷移ジャンクション注釈その他の要素
フォント サイズ使用可能使用可能使用不可使用可能使用可能
矢印サイズ使用可能使用可能使用可能使用不可使用不可
ジャンクション サイズ使用不可使用不可使用可能使用不可使用不可
フォント スタイル使用不可使用不可使用不可使用可能使用不可
影を付ける使用不可使用不可使用不可使用可能使用不可
テキスト配置使用不可使用不可使用不可使用可能使用不可

グローバル表示オプションの変更

[色とフォント] ダイアログ ボックスを使用すると、チャートのカラー スキームを指定したり、チャート内のオブジェクト タイプごとに色やラベル フォントを指定したりできます。[色とフォント] ダイアログ ボックスを開くには、[書式設定] タブの [スタイル] をクリックします。

Colors and fonts dialog box.

[色とフォント] ダイアログ ボックスでは、描画領域に、チャートの現在のカラー スキームで指定されている色とラベル フォントの例が表示されます。[スキーム] メニューから、別のカラー スキームを選択できます。単一タイプのチャート要素の表示オプションを変更するには、サンプル オブジェクトの上にポインターを配置します。

  • 要素の色を変更するには、サンプル オブジェクトをクリックして、ダイアログ ボックスで新しい色を選択します。

    State and frame color dialog box.

  • 要素のフォントを変更するには、サンプル オブジェクトを右クリックし、ダイアログ ボックスで新しいフォント、スタイル、またはサイズを選択します。

    Select font dialog box.

スキームをチャートに適用するには、[適用] をクリックします。スキームを適用してダイアログ ボックスを閉じるには、[OK] をクリックします。

このスキームをすべてのチャートの既定のスキームにするには、[オプション][この設定を ''既定'' のスキームにする] を選択します。

既定のカラー スキームへの変更を保存するには、[オプション][既定の設定をディスクに保存] を選択します。変更後のスキームが既定のスキームでない場合は、[既定の設定をディスクに保存] を選択しても影響はありません。

Stateflow オブジェクトのコンテンツ プレビュー

チャートが閉じているときは、Simulink で Stateflow チャートのコンテンツをプレビューできます。チャートのコンテンツのアウトラインを確認できます。シミュレーション中は、チャートのアニメーションを見ることができます。チャートが開いているときは、サブチャートのコンテンツと Simulink 関数をプレビューできます。

Stateflow チャートおよびサブチャートのコンテンツ プレビューをオンにするには、チャートを右クリックし、[書式設定][コンテンツ プレビュー] を選択します。Simulink 関数の場合は、関数を右クリックして [コンテンツ プレビュー] を選択します。Simulink におけるコンテンツ プレビューの詳細については、モデル コンポーネントの内容のプレビュー (Simulink)を参照してください。

たとえば、Temporal Logic チャートではコンテンツ プレビューが使用されています。Without Temporal Logic チャートでは使用されていません。

Two Stateflow charts. One chart has content preview enabled. The other has content preview disabled.

Stateflow チャートの高度なタブ補完

Stateflow のタブ補完では、状況に依存した入力補助を利用できます。タブ補完はタイプミスの回避に役立ちます。また、キーワード、データ、イベント、メッセージおよび関数名に対して、構文に適したオプションを簡単に選択できます。モデル エクスプローラーに移動する必要はありません。Stateflow チャートで、次の手順により入力を実行します。

  1. 対象とする単語の最初の数文字を入力します。

  2. Tab キーを押して一致候補のリストを確認します。

  3. 矢印キーを使用して単語を選択します。

  4. Tab キーを押して選択を決定します。

さらに、以下のことができます。

  • Esc キーを押して、何も選択せずに一覧を閉じます。

  • 一致候補のリストを絞り込むには、最初に入力した言葉に文字を追加入力します。

Tab キーを押しても単語が一覧表示されない場合は、現在の単語が唯一の一致候補であるということです。

アクション言語の構文要素の表示変更

色の強調表示を使用して、以下の構文要素を区別できます。

  • キーワード

  • コメント

  • イベント

  • メッセージ

  • 関数

  • 文字列

  • 数値

  • ローカル データ

  • 定数データ

  • 入力データ

  • 出力データ

  • パラメーター データ

  • データ ストア メモリのデータ

構文の強調表示はモデルの基本設定ではなく、ユーザーの基本設定に該当します。

既定値の構文の強調表示

以下のチャートに、各言語要素の既定の強調表示を示します。

Stateflow chart showing default highlighting.

Stateflow パーサーで構文要素を解析できない場合は、チャートにその要素が既定のテキストの色で表示されます。

構文の強調表示の編集

  1. Stateflow エディターの [書式設定] タブで、[スタイル][構文の強調表示] をクリックします。

    [構文の強調基本設定] ダイアログ ボックスが開きます。

  2. 変更する色をクリックし、カラー パレットから別の色を選択して、[適用] をクリックします。

  3. [OK] をクリックして [構文の強調基本設定] ダイアログ ボックスを閉じます。

構文の強調表示の有効化と無効化

  1. Stateflow エディターの [書式設定] タブで、[スタイル][構文の強調表示] をクリックします。

    [構文の強調基本設定] ダイアログ ボックスが開きます。

  2. [構文の強調表示を有効にする] をオンまたはオフにして、[OK] をクリックします。

ミニチュア マップを使用したズームとナビゲート

Stateflow チャートのズームインまたはズームアウトを行うには、マウスのスクロール ホイールを使用します。ズームするときにスペース キーを押したままにすると、キーボード ショートカットのダイアログが表示されます。

Space bar pop-up

スペース キーを押すと、左下隅にチャートのミニチュア マップも表示されます。Stateflow チャート内でズームやナビゲーションを行うと、ミニチュア マップ上を青の四角が移動し、チャート全体における相対位置が示されます。

Mini map

ミニチュア マップ上の青の四角をクリックしてドラッグしても、Stateflow チャート内でのナビゲーションができます。ズームアウトすると、Stateflow チャート内のテキストのサイズが調整され、可読性が維持されます。

Zoomed out stateflow chart

チャート オブジェクトの書式設定

チャートのオブジェクトを見やすくするには、Stateflow エディターの [書式設定] タブにあるコマンドを使用できます。これらのコマンドには以下のオプションがあります。

  • 配置

  • 整列

  • サイズ変更

以下のチャート オブジェクトを配置、整列、サイズ変更できます。

  • ステート

  • 関数

  • ボックス

  • ジャンクション

これらのオプションのいくつかは、チャート内の要素を選択した後にのみ表示されます。

チャート オブジェクトの配置、整列、サイズ変更

チャート オブジェクトを配置、整列、サイズ変更する基本的な手順は同様です。

  1. パラレル ステートまたは単一の遷移元からの出力遷移が含まれている場合は、明示的な順序付けが使用されていることを確認してください。

    明示的な順序付けを設定するには、[チャート] プロパティ ダイアログ ボックスの [ユーザー指定のステート/遷移実行順序] を選択します。

  2. 配置、整列またはサイズ変更するチャート オブジェクトを選択します。

    オブジェクトは任意の順序で 1 つずつ選択するか、オブジェクトの周囲にボックスを描画することによって選択できます。

  3. その他のチャート オブジェクトを配置、整列、またはサイズ変更するためのアンカーとして使用するオブジェクトを判定します。このオブジェクトは参照オブジェクトです。

    オブジェクトを参照オブジェクトとして設定するには、そのオブジェクトを右クリックします。参照オブジェクトの周囲にはかっこが表示されます。以下の例では、Door ステートおよび Motion ステートが選択されており、Door ステートは参照です。オブジェクトを 1 つずつ選択する場合は、最後に選択するオブジェクトが参照オブジェクトとなります。

    Chart that contains three states: Door, Win, and Motion. Door is the reference state.

  4. [書式設定] タブからオプションを選択して、選択したオブジェクトを配置、整列またはサイズ変更します。

    チャート オブジェクトの整列オプションの詳細は、チャート オブジェクトの整列オプションを参照してください。

チャート オブジェクトの整列オプション

オプション説明
水平方向に整列

任意の 2 つのオブジェクトの中心から中心までの水平距離が同じになります。

整列の水平方向の空間は、最も左のオブジェクトの左端から、最も右のオブジェクトの右端までの距離です。選択したオブジェクトの幅の合計が水平方向の空間におさまらない場合は、整列後にオブジェクトが重なっている場合があります。

垂直方向に整列

任意の 2 つのオブジェクトの中心から中心までの垂直距離が同じになります。

整列の垂直方向の空間は、最も上のオブジェクトの上端から、最も下のオブジェクトの下端までの距離です。選択したオブジェクトの高さの合計が垂直方向の空間におさまらない場合は、整列後にオブジェクトが重なっている場合があります。

水平方向に等間隔にする

任意の 2 つのオブジェクトの水平方向の空白が同じになります。

[水平方向に整列] の空白制約が適用されます。

垂直方向に等間隔にする

任意の 2 つのオブジェクトの垂直方向の空白が同じになります。

[垂直方向に整列] の空白制約が適用されます。

チャートの自動書式設定

[Arrange Automatically] を使用すると、Stateflow でチャートを次のように調整できます。

  • ラベル文字列に適合するようにステートと遷移を拡張する。

  • 類似したステートを同じサイズになるように変更する。

  • ステートの位置がわずかにずれている場合、それらを調整する。

  • 遷移を整列する。

  • 水平方向の遷移ラベルを中間点に再配置する。

[書式設定] タブで [自動調整] をクリックします。

この例では、チャートが次のようになっています。

  1. ステート アクションがステート A の境界線の外にある。

  2. 遷移条件がステート B とオーバーラップしている。

  3. 水平になっていない遷移がある。

Chart before automatic formatting.

レイアウトを自動調整すると、次のようになります。

  1. ステート アクションがステート A 内に含まれている。

  2. 遷移条件がステート B とオーバーラップしていない。

  3. 下側の遷移が水平になっている。

Chart after automatic formatting.

関連するトピック