このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
slreportgen.finder.DiagramFinder クラス
名前空間: slreportgen.finder
ブロック線図のファインダーを作成する
作成
説明
は、指定された finder
= DiagramFinder(container
)container
内のコメントのない Simulink ブロック線図と Stateflow チャート図をすべて既定で検索するファインダーを作成します。特定タイプのブロック線図を含めるように検索を制約するには、このファインダーのプロパティを使用します。
メモ
このファインダーは、検索モードまたは反復子モードのいずれかで動作可能です。検索モードでは、その find
メソッドを使用して、検索結果を結果の配列として返します。反復子モードでは、その hasNext
メソッドと next
メソッドを使用して、検索結果を 1 つずつ返します。多数のモデル参照をもつモデルを検索する場合は、反復子モードを使用します。反復子モードではモデルのコンパイルと検索の後にモデルを閉じますが、検索モードでは検索したすべてのモデルを開いたままにします。開いたモデルが多数あると、すべてのシステム メモリが消費され、レポート生成が遅くなる可能性があります。反復子モードは検索モードより遅いため、他のモデルをほとんど、またはまったく参照しないモデルを検索するには検索モードを使用します。
は、名前と値のペアを使用してプロパティを設定します。複数の名前と値のペアの引数を任意の順序で指定できます。finder
= DiagramFinder(Name=Value
)
プロパティ
Container
— 検索するモデル コンテナー
パス | ハンドル | チャート ID | チャート オブジェクト
検索の対象となるモデル コンテナー。次のいずれかの値として指定します。
Simulink モデル、サブシステム、またはモデル ブロックのハンドル
Simulink モデル、サブシステム、またはモデル ブロックへのパス
Stateflow Chart ブロックのハンドル
Stateflow Chart ブロックへのパス
Stateflow チャート ID
Stateflow チャート オブジェクト
SearchDepth
— システム ブロック線図の検索の深さ
inf
(既定値) | 正の整数
システム ブロック線図の検索の深さ。inf
または正の整数として指定します。SearchDepth
は、ブロック線図コンテナーをブロック線図について検索するレベルの深さを指定します。すべてのレベルを検索するには、inf
を使用します。
IncludeMaskedSubsystems
— マスク サブシステムの検索
true
(既定値) | false
マスク サブシステムを検索するかどうかの選択。logical として指定します。このプロパティが true
の場合、ファインダーはブロック線図コンテナー内のマスク Subsystem ブロックを検索します。指定された SearchDepth
まで検索し、見つかったブロック線図を検索結果に含めます。
IncludeReferencedModels
— モデル参照の検索
true
(既定値) | false
参照モデルを検索するかどうかの選択。logical として指定します。このプロパティが true
の場合、ファインダーはブロック線図コンテナー内で参照されるモデルを検索します。指定された SearchDepth
まで検索し、見つかったブロック線図を検索結果に含めます。
IncludeReferencedSubsystems
— 参照サブシステムを検索するかどうか
true
または 1
(既定値) | false
または 0
参照サブシステムを検索するかどうか。数値か logical 1
(true
) または 0
(false
) として指定します。結果は、参照サブシステム ブロックの個々の出現ではなく、ソース サブシステム ブロックを示します。そのため、複数回参照される単一のサブシステムの結果は 1 つのみとなります。
IncludeSimulinkLibraryLinks
— Simulink ライブラリ リンクの検索
true
(既定値) | false
Simulink ライブラリ リンクを検索するかどうかの選択。logical として指定します。このプロパティと IncludeMaskedSubsystems
がいずれも true
の場合、ファインダーはブロック線図コンテナー内にある、Simulink ライブラリの Subsystem ブロックとマスク Subsystem ブロックの両方へのリンクを検索します。指定された SearchDepth
まで検索し、見つかったブロック線図を検索結果に含めます。このプロパティが true
で IncludeMaskedSubsystems
が false
の場合、ファインダーは Simulink ライブラリの Subsystem ブロックへのリンクのみを検索します。
IncludeUserLibraryLinks
— ユーザー ライブラリ リンクの検索
true
(既定値) | false
ユーザー ライブラリ リンクを検索するかどうかの選択。logical として指定します。このプロパティが true
で IncludeMaskedSubsystems
プロパティが true
の場合、ファインダーはブロック線図コンテナー内にある、ユーザー ライブラリの Subsystem ブロックとマスク Subsystem ブロックへのリンクを検索します。指定された SearchDepth
まで検索し、見つかったブロック線図を検索結果に含めます。このプロパティが true
で IncludeMaskedSubsystems
プロパティが false
の場合、ファインダーはユーザー ライブラリの Subsystem ブロックへのリンクのみを検索します。
IncludeCommented
— コメントアウトされたブロック線図を含める
false
(既定値) | true
コメントアウトされたブロック線図を検索結果に含めるかどうか。logical として指定します。false
の場合、コメントアウトされたブロック線図は検索結果から除外されます。
IncludeVariants
— ブロック線図のバリアントを含める
string | 文字ベクトル
ブロック線図を検索するためのバリアント。string または文字ベクトルとして指定します。既定値は Active
です。有効な値は次のとおりです。
All
— すべてのバリアントActive
— アクティブなバリアントのみActivePlusCode
— すべてのアクティブなバリアントとコード バリアント
SortType
— ファインダーの結果の並べ替え
"none"
(既定値) | "alphabetical"
| "numBlocks"
| "depth"
ファインダーの結果を並べ替えます。次のいずれかの値として指定します。
値 | 説明 |
---|---|
"none" | 結果を並べ替えません。 |
"alphabetical" | 結果を名前のアルファベット順に並べ替えます。 |
"numBlocks" | 結果をシステム内のブロック数順に並べ替えます。並べ替えられたリストの最初のブロックには、最大数のブロックが含まれます。 |
"depth" | 結果をモデルの階層構造の深さ順に並べ替えます。並べ替えられたリストの最初のシステムは、階層内で最上位のシステムです。たとえば、モデルとそのサブシステムは、 myModel 、myModel/subsystem1 、myModel/subsystem1/nestedSubststem の順に並べ替えられます。 |
Properties
— 検索対象とするオブジェクトのプロパティ
cell 配列
検索対象とするオブジェクトのプロパティ。名前と値のペアの cell 配列として指定します。ファインダーは、指定のプロパティが指定の値をもつオブジェクトのみを返します。
例: finder.Properties = {'Gain','5'}
AutoCloseModel
— モデルを閉じるかどうか
true
(既定値) | false
モデルを閉じるかどうか。true
または false
として指定します。true
の場合、ファインダーの next
メソッドは、検索対象の次のモデルに移動する前に現在開いているモデルを閉じます。モデルを閉じることで、多数のモデルを参照するモデルを検索する際にメモリが過剰に消費されるのを防止します。
メモ
ファインダーの find
メソッドはこのプロパティを無視し、すべての参照モデルを開いたままにします。このため、多数のモデル参照があるモデルの検索では find メソッドを使用すべきではありません。
メソッド
パブリック メソッド
find |
メモ
|
hasNext |
メモ 現在の結果が、現在のモデルに対する検索キューの最後の結果であり、
|
next |
|
例
すべてのブロック線図と Stateflow チャートの検索
sf_car
モデル内のすべてのブロック線図のイメージを含むレポートを作成します。この例で使用するモデルにはモデル参照はありませんが、反復子モードを使用して構文を説明しています。
import mlreportgen.report.* import slreportgen.report.* import slreportgen.finder.* model_name = "sf_car"; load_system(model_name); rpt = slreportgen.report.Report("output","pdf"); add(rpt, TitlePage(Title=model_name+" Systems")); finder = DiagramFinder(model_name); while hasNext(finder) add(rpt,next(finder)); end close(rpt); close_system(model_name); rptview(rpt);
サブシステムのすべてのブロック線図の検索
sf_car
モデルを開き、その Engine
サブシステム内のすべてのブロック線図を検索します。サブシステムへのパスか、またはそのハンドルを使用します。その後、結果をレポートに含めることができます。
import mlreportgen.report.* import slreportgen.report.* import slreportgen.finder.* model_name = "sf_car"; load_system(model_name); % Use path enginePath = "sf_car/Engine"; finder = slreportgen.finder.DiagramFinder(enginePath); results = find(finder); % or use handle engineHandle = get_param("sf_car/Engine","Handle"); finder = slreportgen.finder.DiagramFinder(engineHandle); results_enginehandle = find(finder);
特定のプロパティ値をもつブロック線図要素の検索
特定のプロパティ値をもつ要素を検索するには、slreportgen.finder.DiagramElementFinder
クラスのオブジェクトを使用します。f14
モデルを開き、値 Zw
をもつ Gain ブロックをすべて検索します。
model = 'f14'; openExample(model); finder = slreportgen.finder.DiagramElementFinder(model) finder.Properties = {'Gain','Zw'}; results = find(finder);
バージョン履歴
R2017b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)