フィルタダイアログ
ショートカットキー: Alt+Shift+F
フィルタダイアログを使うと、一時的に特定のタイプのオブジェクトをJOSMの画面上で非表示にすることができます。 テキストボックスに属性や文字列を入力することでフィルタを使えます。 入力された文字列や属性の基準に合うオブジェクトはJOSMの画面で非表示になります。 この機能を使うと混み合ったエリアの編集が楽になります。 複数行のフィルタを有効にする際、以下の四種類のオプションを利用できます。 フィルタ行は上から下に向かって評価され、その際にフィルタの各行で指定された選択方法が使われます。 モード"R"が指定された場合、そのフィルタより上の全フィルタが無効になります。 モード"D"が指定された場合、上位でフィルタされたオブジェクトのうち基準に合致するものをフィルタから外します。 おそらくモード"A"をよく使うことになるでしょう。 このモードのフィルタは他のフィルタとは独立で互いに無関係になります。 (モード"F"の挙動は不明...)
何らかのフィルタが有効になっている場合、忘れないように半透明のメッセージボックスが表示されます。
有効にする方法
メインウィンドウ左下のアイコンをクリックします。 アイコンが無い場合はJOSMのバージョンが3189以上かどうかを確認してください。 それでも表示されていない場合は、高度な設定で displayfilter=true
の指定を試してみてください(要再起動)。
オプション
- E (Enable): フィルタ行を有効にするか無効にするかを指定します。
- H (Hide elements): このオプションがチェックされていると、選択されたオブジェクトは完全に非表示になります。 チェックされていない場合、オブジェクトは操作対象から外れるとともに灰色で薄く表示されるようになります。
- Text: フィルタ対象のオブジェクトを定義する検索基準や属性です。
- I (Inverse Filter): 通常は指定されたオブジェクトが非表示になり、それ以外のオブジェクトが表示された表帯になります。 このオプションが指定された場合、逆に指定されたオブジェクトだけが表示され、それ以外は非表示になります。
- M (Filter Mode): 以下の4種類があります: R: replace selection(選択を上書き), A: add to selection(選択に追加), D: remove from selection(選択から削除), F: find in selection(選択内で検索)。 このモード選択はそのフィルタが前のフィルタとどのように組み合わせられるかを定義します。
フィルターモードオプションは検索文字列を指定するポップアップウィンドウで設定します。 多くの例が表示されます。 EからIオプションは(通常、画面の右側に表示される)フィルタボックス内で対応するチェックボックスをクリックすることで選択できます。 特定のバージョンのJOSMでは、各チェックボックスの上のテキスト表示がドットだけになっていることがあります。これは修正される予定です。 チェックボックスの順番は左から右に次の通りです: フィルタ行の有効・無効 / フィルタ対象を非表示 / フィルタの検索文字列 / 表示・非表示の切り替え / モードを表す文字。
例
フィルタ文字列 | 説明 |
((landuse:|natural:|leisure:|building:) | (role:outer|role:inner)) | マップをすっきりさせます。 リレーションの扱いは完璧ではありません |
-highway: | type:node | マップをすっきりさせます |
type:node & untagged | ウェイを選択しやすくします |
modified | 変更部分を一目で分かるようにします |
child (type:way & highway:) | 道路を構成する全てのノードを表します |
child (type:relation & (natural:|landuse:)) | naturalとlanduseのリレーションで作られたエリアを表します |
-((highway | child highway | untagged | public_transport) & -(highway=footway | highway=path | highway=steps | highway=track)) | 公共交通用の道路のみを表します。 バス路線のマッピングに有効です |
他にも気の利いたフィルタがあったらここに追加してください。
正規表現
フィルタ機能はJavaの正規表現をサポートしています。 詳細については http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html を参照してください。