PCBフィルタパネル
親ページ:PCBパネル
PCB Filterパネル
概要
PCB Filterパネルは、論理クエリの作成を通じてフィルタを構築するためのコントロールを提供します。定義されたフィルタは、アクティブなPCBに適用され、複数のオブジェクトを非常に正確かつ効率的に選択および編集できます。
パネルアクセス
PCBエディタでパネルにアクセスする方法は以下の通りです:
-
ワークスペースの右下にあるPanelsボタンをクリックし、PCB Filterを選択します。
-
メインメニューからView » Panels » PCB Filterをクリックします。
-
F12 ショートカットキーを使用します。
パネルセクション
PCBフィルタパネルは、3つの領域で構成されています。最初の2つは選択可能なリストエリアで、フィルタリングの範囲を定義します:ObjectとLayer。
3つ目の領域、Filterは、現在選択されているオブジェクトとレイヤーに基づいて作成されたクエリを表示します。
シンプルなフィルタ式の構築
パネルのメイン領域には、任意のオブジェクトの組み合わせを対象としたシンプルなフィルタ式を迅速に構築するためのコントロールが提供されています。オブジェクトタイプは、「オブジェクトマトリックス」に配列され、ネットオブジェクト(Net)、コンポーネントオブジェクト(Comp)、またはフリーオブジェクト(Free)であるかに応じて分類されます。以下のコアオブジェクトリストは、これら3つのグループにわたって複製されます:
- トラック
- アーク
- ビア
- パッド
- フィル
- リージョン
Text
オブジェクトは、Comp
とFree
のグループに含まれていますが、このオブジェクトタイプはネット認識がないため、Net
グループには含まれていません。さらに、Free
グループには、Component
、Component Body
、Room
、およびPolygon
も含まれています。
例えば、これらがそれぞれ「コンポーネント」と「トップレイヤー」に設定されている場合、ボードビューはトップレイヤーのコンポーネントを強調表示します。両方のパネルセクションの選択は、複数のフィルタリングアクションの段階の累積効果を表しており、任意のタイプの設計オブジェクトを迅速に強調表示するために使用できます。
フィルタ式の構築にオブジェクトを使用する場合、つまりそのオブジェクトによるフィルタリングを行う場合、オブジェクトマトリックス内の該当するオブジェクトに関連付けられたチェックボックスを有効にしてください。領域の右クリックメニューで利用可能なコマンドを使用すると、マトリックス内のすべてのエントリをすばやくチェックまたはチェック解除したり、マトリックス内のすべてのチェックボックスの状態を切り替えたりすることができます。
Layer領域を使用して、フィルタを特定のレイヤーまたはレイヤーの特定のクラスに制限します。リストされているエントリは以下を反映します:
-
ボードの定義されたレイヤークラスで、デフォルトは以下の通りです:
-
<All Layers>
-
<Component Layers>
-
<Electrical Layers>
-
<Signal Layers>
-
-
Layer Stack Managerダイアログで提示されるレイヤースタック内の定義されたレイヤー。
-
トップとボトムのペーストマスクレイヤー。
フィルタリング選択を行うと、結果のクエリ式が動的に構築され、パネルのFilter領域に表示されます。必要に応じてフィルタクエリ式が定義されたら、それを別のアクションとして適用する必要があります。これを行うには、パネルの下部にあるApply to Allボタンをクリックします。また、ワークスペースで現在選択されているオブジェクトにのみ適用する場合は、Apply to Selectedボタンをクリックします。
オブジェクトによるフィルタリング
パネルのObjectリストでの選択は、基本設計オブジェクトを表示するためにボードビューをフィルタリングします。すべてのオブジェクトが強調表示されますが、Objectおよび/またはLayerフィルタリストの設定によって変更される場合があります。
表示されているボードでは、Component Body
と Pad (In Any Component)
がObjectの下で選択されています。Layerは <All> に設定されています。
表示されている基板はObjectがTracks(In Any Net)
およびPads (In Any Net)
に設定されています。
Layerは<All>に設定されています。
レイヤーによるフィルタリング
パネルのLayerリストでの選択は、指名された物理設計レイヤー(シグナル、マスク、シルクスクリーンレイヤー)上のオブジェクトを表示するためにボードビューをフィルタリングします。有効なレイヤーオブジェクトは、Layerおよび/またはObjectsフィルタリストの設定によって変更されない限り、強調表示されます。
表示されている基板ではObjectsがComponentsに、
Pads (In Any Component)に設定されています。LayersはTop Layerに設定されています。
示されているボードではObjectが任意のNet内のトラックに設定されています。LayerはBottom Layerに設定されています。
フィルタリングされたオブジェクトの選択
パネルによって提供される集合フィルタアクションは、興味のあるボードデザインオブジェクトの表示と選択の両方を支援します。
ハイライトされた(フィルタリングされた)オブジェクトのみが選択可能であり、オブジェクトの位置を特定し、編集し、情報を見つけることが容易になります。
現在適用されているフィルタをClearボタンをクリックしてクリアします。
ビジュアルフィルタリングの設定
ドキュメントに適用されたフィルタリングの視覚的結果は、一連のハイライト制御によって決定されます。エディタビューに課される効果は、Normal、Mask、またはDimに設定でき、実際にはMaskが最も明確なハイライト効果を持ちます。 Normal / Mask /Dimのドロップダウンリストは、ワークスペース内のフィルタリングされたオブジェクトとフィルタリングされていないオブジェクトを視覚的に対照的にするオプションを提供します。
マスキングモードのドロップダウンリストを使用して、適用される視覚フィルタリングのタイプを選択します。
各マスキングモードにおける視覚的ハイライト効果:
-
Normal - フィルタリングされたオブジェクトはワークスペースに表示され、フィルタリングされていないオブジェクトの外観は変わりません。
-
Mask - フィルタリングされたオブジェクトはワークスペースで強調表示され、他のすべてのオブジェクトはモノクロになります。
-
Dim - フィルタリングされたオブジェクトはワークスペースで強調表示され、他のすべてのオブジェクトはその色を保持しますが、色あせます。
フィルタクエリの定義
パネルの中央領域には、論理クエリの入力を通じてフィルタを構築するためのコントロールが提供されています。
フィールドに直接クエリを入力することができ、入力すると、支援として可能なキーワードのリストが表示されます。
クエリの作成を助けるために利用できる2つの機能があります - クエリヘルパーとクエリビルダーです。クエリの構文や使用可能なキーワードが不確かな場合に非常に役立ちます。
クエリヘルパー
クエリヘルパーを使用するには、HelperボタンをクリックしてQuery Helperダイアログを開きます。基盤となるクエリエンジンがドキュメントを分析し、クエリで使用するための全ての利用可能なオブジェクトと一般的なキーワードをリストアップします。
ダイアログの上部セクションを使用して、利用可能なPCB Functions、PCB Object Lists、System Functionsを使ってクエリ式を作成します。ダイアログの中央領域には、式を構築する際に使用する一連の演算子が提供されています。Check Syntaxボタンを使用して、式が文法的に正しいかどうかを確認します。
クエリの式が必要に応じて定義されたら、OKをクリックして、クエリをパネルの中央領域に読み込み、フィルタを適用する準備をします。
クエリビルダー
クエリビルダーを使用するには、パネルのBuilderボタンをクリックしてBuilding Query from Boardダイアログを開きます。このダイアログでは、AND条件および/またはOR条件の文字列の構築によって、設計ドキュメント内の特定のオブジェクトをターゲットにするクエリを作成できます。ダイアログの左側は、必要なオブジェクトのセットをターゲットにするために必要な条件を指定するために使用されます。初期状態では、Condition Type/Operator列にはAdd first condition
と表示されます。このエントリを一度クリックすると、条件タイプのドロップダウンリストが表示されます。
リストされている条件タイプは、ボード設計に関連するもののみを反映します。
希望する条件を選択し、その条件タイプに対する可能な値のドロップダウンリストにアクセスするためにCondition Value列をクリックします。ダイアログの左側で条件を定義すると、現在構築されているクエリのプレビューが右側に表示されます。
必要に応じて、対象となる設計オブジェクトのセットを絞り込むためにさらに条件を追加し続けます。条件はANDまたはORで結合できます。デフォルトの論理演算子はANDで、別の条件を追加すると自動的に挿入されます。
条件間の論理演算子を変更するには、Condition Type/Operator列のANDまたはORエントリをクリックし、必要な演算子を選択します。クエリのプレビューはそれに応じて更新されます。
優先順位の指定
および
ボタンは、Building Query from Boardダイアログの上部にあり、現在選択されている条件の周りに括弧を追加または削除する(インデントの増減)ことができます。これにより、特定の論理的にANDされた条件または論理的にORされた条件に優先順位を付けることができます。
たとえば、以下のようなクエリが構築されたと考えてみましょう:
InNet('5V') AND (OnLayer('TopLayer')
最初の条件は条件タイプBelongs to Net
で、値は16M_IN
と設定されました。次に、条件タイプExists on Layer
を使用して、値TopLayer
を持つ別の条件が追加されました。
この段階で、ダイアログで2番目の条件が選択され、右矢印ボタンがクリックされました。2番目の条件の周りに自動的に括弧が追加され、その括弧のペア内に条件を追加する可能性が出てきました。
次に、条件タイプがObject Kind isで、値がTrackの3番目の条件が括弧内に追加されます。
ダイアログの左上にあるShow Levelドロップダウンを使用して、条件の構造化された文字列内のレベルの視覚表示を制御します。これは基本的に、括弧の表示の展開/折りたたみを行います。括弧を追加することで、新しいレベルが作成されます。レベル1-5を表示できますが、それ以上のレベルを追加した場合は、Show All Levelsオプションを使用してください。
または、括弧で囲まれた条件に関連付けられた展開または縮小の記号をクリックして、次のレベルを表示したり、現在のレベル(およびその下のすべてのレベル)をそれぞれ隠したりします。 および
ボタンをダイアログの上部で使用して、現在選択されている条件を展開または縮小することもできます。
ダイアログの上部にあるおよび
ボタンを使用して、クエリ文字列内の選択された条件を移動します。サブレベルを持つ条件(つまり、括弧で囲まれた条件)の場合、レベル構造内の任意の条件を移動できます。レベルが展開されている場合、条件はレベルを通じて下または上に移動できます。レベルが折りたたまれている場合、条件はレベル構造を越えて移動されます。
条件を削除するには、それを選択して、ダイアログの上部にあるボタンをクリックするか、削除キーを使用します。
クエリの式が必要に応じて定義されたら、OKをクリックして、クエリをPCBフィルタパネルの中央領域に読み込み、フィルタを適用する準備をします。
履歴クエリ
新しいクエリを入力して適用すると、そのクエリは履歴リストに追加されます。Historyボタンをクリックすると、このリストにアクセスできます。Expression Managerダイアログが開き、Historyタブがアクティブになります。
履歴からクエリを使用するには、そのエントリを選択してApply Expressionボタンをクリックするか、エントリを直接ダブルクリックします。ダイアログが閉じ、クエリの式がPCBフィルタパネルの中央領域に読み込まれます。
履歴クエリをお気に入りのクエリリストに追加するには、そのエントリを選択してAdd To Favoritesボタンをクリックします。Clear Historyボタンを使用すると、履歴リストを「フラッシュ」できます。リストから最も最近使用されたクエリ式のうち9つまでが、パネルの右クリックメニューから使用できるようになります。
お気に入りクエリ
定義されたクエリは、次の2つの方法でお気に入りクエリのリストに追加できます:
-
パネルの中央領域で現在定義されているクエリ式を追加するには、Add To Favoritesボタンをクリックします。
-
Expression ManagerダイアログのHistoryタブで履歴クエリエントリを選択し、Add To Favoritesボタンをクリックします。
FavoritesボタンをPCB Filter panelでクリックして、このリストにアクセスしてください。Expression ManagerダイアログがFavoritesタブがアクティブな状態で開きます。
リストからお気に入りのクエリを使用するには、エントリを選択してからApply Expressionボタンをクリックするか、エントリをダブルクリックします。ダイアログが閉じ、クエリの式がPCB Filterパネルの中央領域に読み込まれます。
クエリ式をFavoritesリストに追加すると、一意の名前が割り当てられます。デフォルトでは、一般的な名前 - Favorite_n
- が割り当てられます。ここでn
は、次に利用可能な未使用の番号です。エントリの名前は、次の方法のいずれかを使用して、いつでも変更できます:
-
クエリエントリを選択して、Renameボタンをクリックします。
-
クエリエントリを選択して、右クリックメニューからEditコマンドを選択します。
-
クエリエントリを選択してから、Nameフィールド内を再度クリックします。
各ケースで、必要に応じて新しい名前を入力し、Nameフィールドの外側をクリックして変更を適用します。
Favorites リストからクエリを削除するには、リスト内のエントリを選択してから、Removeボタンをクリックするか、右クリックメニューからRemoveコマンドを選択します。削除の確認を求めるダイアログが表示されます。リストに最近追加されたクエリ式のうち最大10件が、パネルの右クリックメニューの上部から使用できます。なお、Favoritesリストの内容は、PCB FilterパネルとPCBLIB Filterパネルの両方で共通しており(両方からアクセス可能です)、です。
設計ルールの作成
PCB Filterパネルでは、現在パネルの中央領域で定義されているクエリ式を使用して、設計ルールを作成する機能も提供しています。
新しい設計ルールを追加するには、PCB FilterパネルのCreate Ruleボタンをクリックします。Choose Design Rule Typeダイアログが開きます。
このダイアログには、PCBドキュメントで利用可能なルールカテゴリとルールタイプがリストされています。作成したいルールのタイプを選択し、OKをクリックします(または、エントリー上でダブルクリックします)。PCB Rules and Constraints Editorダイアログが開きます。
新しく作成されたルール名は、左側のナビゲーションツリーで選択されて表示されます。ルールクエリ式は、ダイアログの右上のペインにあります。
選択したタイプのルールが作成され、ルールの特定の制約を定義する準備ができたルールのメイン編集ウィンドウが表示されます。PCB Filterパネルからのクエリ式がダイアログのFull Query領域に入力されます。必要に応じてルール設定を洗練させ、新しいルールを適用します。
フィルタの適用とクリア
クエリを定義し、パネルのオプションを必要に応じて設定したら、フィルタはパネルのApplyボタンをクリックするか、Enterをクリックすることで適用できます。
パネル内で現在適用されているフィルタをクリアするには、パネルの中央領域にあるクエリ式を選択して削除し、その後ApplyボタンのいずれかをクリックするかEnterを押します。設計ワークスペース内のすべてのオブジェクトが完全に可視化され、選択/編集できるようになります。
右クリックメニュー
PCB Filterパネル内で右クリックすると、ポップアップメニューを通じて追加のオプションとコマンドにアクセスできます。
パネルのObject領域またはLayer領域で右クリックすると、次のコンテキストメニューオプションが開きます:
-
Toggle Check - オプションを切り替えるために有効にします。現在選択されているオプションは選択解除され、選択されていないオプションは選択されます。
-
Check All - 利用可能なすべてのオプションを選択するために有効にします。
-
Uncheck All - 利用可能なすべてのオプションの選択を解除するために有効にします。
ヒント
一般
-
F12キーを押すと、ワークスペース内のパネルの表示が切り替わります。
-
クエリビルダー(Building Query from Boardダイアログ)は、関連する「ビルディングブロック」のみを使用して構築できる、敏感な条件タイプと値を使用したクエリの簡単な方法を提供します。完全なキーワード指定と演算子構文を使用した高度なクエリ構築には、Query Helperダイアログを使用してください。
-
適用されたフィルタに合格しているオブジェクトと合格していないオブジェクトの表示オプションが分離されているため、以前のフィルタリングの結果に基づいて新しいフィルタクエリを効果的に適用できます。
クエリ式を構築する際に
- クエリが正しく解釈されない可能性がある場合は、括弧を使用することを強くお勧めします。
-
括弧は、さまざまな演算子に対して定義された優先順位の中で最も高い優先順位を持ち、ユーザーが括弧を提供していない場合にソフトウェアによってクエリがどのように解釈されるかを決定します。この優先順位の順序は以下の通りです:
括弧
Not
^, *, /, Div, Mod, And
+, -, Or, Xor
=, <>, <, >, <=, >=
&&, ||
この優先順位はPascalタイプの言語で使用されるものと似ています。しかし、括弧をたっぷり使うことで疑問が解消され、結果として得られるクエリが他の人にとって読みやすくなります。 - 曖昧さは左から右へと働きかけることで解決されます。
- 括弧内は内側から外側へと評価され、同じレベルは左から右へと行われます。