MATLAB コマンド ウィンドウからのプログラムによるモデルの印刷
プログラムによって Simulink® モデルのブロック線図の印刷およびイメージ ファイル形式へのエクスポートを行うことができます。対話的にモデルのブロック線図を印刷およびエクスポートするには、モデル ブロック線図の印刷を参照してください。
印刷コマンド
MATLAB® print
コマンドには、複数の印刷オプションが用意されています。たとえば、sldemo_enginewc
モデル内の Compression
サブシステムを既定のプリンターで印刷するには、MATLAB コマンド ウィンドウで以下のコマンドを入力します。
openExample('sldemo_enginewc'); print -sCompression
print
コマンドを使用する場合、印刷できるのは 1 つのブロック線図だけです。モデルの階層構造内の複数のレベルを印刷するには、印刷するブロック線図ごとに 1 つの print
コマンドを繰り返し使用します。
ヒント
あるいは、対話的に印刷することを検討します。Simulink ツール バーの [シミュレーション] タブの [ファイル] セクションで [印刷] をクリックします。次に、Simulink エディターの [モデルの印刷] ダイアログ ボックスを使用して、印刷するブロック線図を指定します。詳細については、印刷するシステムの選択を参照してください。
以下のパラメーターを指定して関数 set_param
を使用して、モデルの印刷オプションを指定できます。
印刷のモデル パラメーター
パラメーター | 説明 | 値 |
---|---|---|
| 印刷用紙の方向。 |
|
| 用紙の位置のモード。
|
|
| 印刷用紙のタイプ。 |
|
| 印刷用紙のサイズの単位。 |
|
| 各タイル配置ページに関する余白のサイズ。ベクトルの各要素は、個々の端での余白を表します。 | ベクトル — |
複数行の名前またはスペースを含む名前をもつシステムの印刷
名前が複数の行で表示されるシステムを印刷するには、変数にその名前を割り当て、その変数を print
コマンドで使用します。以下の例では、Aircraft Dynamics Model
という名前のサブシステムを印刷する方法を示します。
openExample('simulink_aerospace/AircraftLongitudinalFlightControlExample') open_system('slexAircraftExample/Aircraft Dynamics Model'); sys = sprintf('slexAircraftExample/Aircraft\nDynamics\nModel'); print (['-s' sys])
名前に 1 つ以上のスペースが含まれるシステムを印刷する場合、名前を文字ベクトルとして指定します。たとえば、Throttle & Manifold
サブシステムを印刷するには、以下のコマンドを入力します。
openExample('sldemo_enginewc'); open_system('sldemo_enginewc/Throttle & Manifold'); print (['-sThrottle & Manifold'])
用紙の向きと種類の設定
用紙の向きだけを設定するには、関数 orient
を使用します。あるいは、PaperOrientation
モデル パラメーターを指定して関数 set_param
を使用することでも、用紙の向きを設定できます。
用紙の種類を設定するには、PaperType
モデル パラメーターを指定して関数 set_param
を使用します。たとえば、US Letter サイズの用紙に印刷するには、用紙の種類を 'usletter'
に設定します。
ブロック線図の複数ページへの印刷
既定では、各ブロック線図は 1 枚のページに収まるように印刷処理中にスケーリングされます。大きいブロック線図の場合、このような自動スケーリングにより印刷イメージが見にくくなる場合があります。
タイル配列された印刷により、大きいブロック線図でも明確さや詳細さを失うことなく、印刷を行うことができます。タイル配置印刷により、ブロック線図を複数ページに印刷することができます。たとえば次の図に示すように、タイル配置を使ってモデルを分割し、白いボックスと灰色のボックスでそれぞれ個別の印刷ページを表すことができます。
タイル配置の印刷の有効化
関数
set_param
を使用してPaperPositionMode
パラメーターをtiled
に設定します。print
コマンドで-tileall
引数を指定します。
たとえば、sldemo_enginewc
モデルの Compression
サブシステムに対してタイル配置印刷を有効にするには、以下のコマンドを使用します。
openExample('sldemo_enginewc'); set_param('sldemo_enginewc/Compression', 'PaperPositionMode', ... 'tiled'); print('-ssldemo_enginewc/Compression', '-tileall')
タイル配置ページの境界の表示
プログラムからページの境界を表示するには、モデル パラメーター ShowPageBoundaries
を on
に設定して、関数 set_param
を使用します。
openExample('sldemo_enginewc'); set_param('sldemo_enginewc', 'ShowPageBoundaries', 'on')
タイル配置ページの余白の設定
余白のサイズを減らすことによって、タイル配置ページ内の印刷可能領域が広くなります。タイル配置ページに関連付けられた余白のサイズを指定するには、関数 set_param
の TiledPaperMargins
パラメーターを使用します。既定では、各余白は 0.5 インチです。TiledPaperMargins
の値は、[left top right bottom]
の順番で余白を指定するベクトルです。各要素は、ページの特定の端における余白サイズを指定します。PaperUnits
パラメーターの値は、余白の測定単位を決定します。
印刷するタイル配置ページの範囲の指定
プログラムによりタイル配置ページのページ番号範囲を指定するには、-tileall
引数および -pages
引数を指定して print
コマンドを使用します。-pages
の後に範囲を指定する 2 要素ベクトルを追加します。
メモ
Simulink によりタイル配置ページの番号は行優先で付けられます。たとえば、行 1 の 1 ページ目は 1、行 1 の 2 ページ目は 2 というようになります。
たとえば、2、3、4 ページ目を印刷するには、以下のコマンドを使用します。
openExample('simulink_general/VanDerPolOscillatorExample'); print('-svdp','-tileall','-pages[2 4]')
イメージ ファイル形式へのモデルの出力
モデルを .png
または .jpeg
などのイメージ ファイル形式に出力するには、MATLAB print
コマンドで -device
引数を使用します。たとえば、vdp
モデルを .png
形式に出力するには、次のコマンドを使用します。
openExample('simulink_general/VanDerPolOscillatorExample'); print -dpng -svdp vdp_model.png
プログラムによりモデルをイメージ形式にエクスポートするには、次のようにします。
モデルを MATLAB コマンド ラインで呼び出します。
model %model is your model name
印刷コマンドを使用してモデルを
.jpeg
形式で保存します。print('-smodel', '-djepg', 'new_name')
既定では、エクスポート対象のモデルのキャンバス (背景) は、モデルの色と一致します。別のファイル形式にエクスポートするモデル ファイルで白または透明のキャンバスを使用する場合は、[Simulink 基本設定] 、 [一般] 、 [エクスポート] の基本設定を設定します。詳細については、Simulink Preferencesを参照してください。