複数のフォルダーから複数のレイヤーをQGISプロジェクトにすばやく追加する必要がある


12

複数の画像Zipファイル(それぞれのコンテンツはjp2、jpg、jpw、xml、htm、および.dbf、.prj、.sbn、.sbx、.shp、.shxです)をダウンロードし、この画像をすばやく追加したいQGIS 2.6.1の私の作業プロジェクト。各ファイルに個別に移動して追加する必要を回避しようとしています。各ファイルは異なるフォルダーにあるため、複数のファイルを一度に追加する方法を見つけることができませんでした。


あなたはあなたのフォルダにzipファイルを持っていますか、すでにzipファイルのコンテンツを抽出していますか?後者の場合の答えを詳しく説明しています。前者の場合、少し(Python)スクリプトが必要になるのではないかと心配しています。
ゲルマンカリージョ

すでにコンテンツを抽出しています。
-reevesii

回答:


23

必要なのはQGISプラグインLoad Them Allです。一度に複数のディレクトリからファイルをロードする以外に、次のことができます。

  • QGIS目次にディレクトリ構造を反映します(ネストされたレイヤーグループを使用)。
  • 英数字フィルターを適用して、フィルターに一致するレイヤーをロードするだけです(正規表現を考えてください)。
  • 特定のジオメトリまたはラスタータイプのみを読み込みます(たとえば、ポリゴンベクトルまたはマルチバンドラスターのみ)。
  • 特定のファイル拡張子のみをロードします(たとえば、.shpファイルのみ)。
  • 内部にある、または特定の境界ボックスと交差するレイヤーのみをロードします。

もっと。詳細については、https://github.com/gacarrillor/loadthemallをご覧ください。

ここに画像の説明を入力してください


@GermánCarrilloそれは私のニーズに最適なプラグインのようですが、ファイルをロードしようとすると、「このフィルターでベースディレクトリからロードするKMLファイルがありません。これらのパラメーターを変更して再試行してください」というエラーが表示されます。私はQGIS 2.14.2を使用しています。すべてのフィルターがオフになっており、選択したマップにはそれぞれ1つのkmlファイルを持つ2つのマップが含まれています(テストするために、インポートするデータセットが大きくなります)。
ハンネスレデゲン

@HannesLedegen 'Contains'の代わりに 'Interesects'フィルターを試しましたか?それでもうまくいかない場合は、プロジェクトのGitHubページで新しい問題を開いて、すべてを詳細に説明してください。
ゲルマンカリージョ

2

プラグインを使用する代わりに、Add Layerコマンドにファイルのセミコロン区切りリストを指定できます。このようなリストは、次の方法で作成できます。

cd /d <Path_to_the_directory_where_your_files_are>
dir *.shp /s /b >All.txt

これにより、という名前All.txtのファイルが作成されます。このファイルには、特定の拡張子を持つすべてのファイルへのパスが含まれます(ファイルごとに異なるマスクを使用できます)。各ファイルは新しい行にあります。

D:\Data\01\data01_1.shp
D:\Data\01\data01_2.shp
D:\Data\02\data02_1.shp
D:\Data\02\data02_2.shp

次に、すべての改行を;テキストエディタ(Notepad ++など)を使用して置き換え、Add Vector Layer...ダイアログに結果を貼り付けます。

メモ帳のため++あなたは、拡張に置き換えるモードを変更し、交換する必要がある\r\n;。次のようなファイルが得られます。

D:\Data\01\data01_1.shp;D:\Data\01\data01_2.shp;D:\Data\02\data02_1.shp;D:\Data\02\data02_2.shp

0

Linuxでは、.shpファイルのリストを抽出し、「ベクターのインポート」ダイアログに直接入力できます。

#on the command line
ls /home/yourpath/*/*shp|tr "\n" '@'|sed 's/@/" "/g'|sed 's/^/"/g'

ここに画像の説明を入力してください

これはQGIS Dockerの下で、「Load Them All」プラグインがダイアログを表示していなかったために便利だと思いました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.