QGISには、プロジェクト内のすべてのファイルを転送可能にパッケージ化する自動機能がありますか?


35

私のプロジェクトでは、さまざまなディレクトリの多くのジオデータを使用しています。次に、QGISプロジェクトを同僚(CDなど)に渡します。

異なるディレクトリから1つのディレクトリに自動的に図形をコピーすることは可能ですか?


1
2016-02-05現在、QConsolidateプラグインは、シェープファイル、tifラスター、および(!)アークカバレッジで正しく機能します。ただし、ファイルジオデータベースフィーチャクラスは(ポイントとして)出力フォルダーにコピーされません。
スチュスミス

回答:


44

QConsolidateプラグインを探していますが、これは非常にうまく機能します。すべてを単一のディレクトリに転送し、新しいソースの場所を指すように.QGSプロジェクトファイル(XMLファイル)を書き換えます。


QConsolidateはまだ試験段階です。設定ダイアログで「実験プラグインも表示する」を有効にする必要があります。

ただし、非常にうまく機能します。ノート:

  • 他の場所に統合する前に、作業中のプロジェクトを保存しておく必要があります。
  • 出力形式は、プロジェクト(.QGS)ファイルと、「サプライズ」というレイヤーを含む「レイヤー」と呼ばれるフォルダーです。
  • QConsolidateはデータベースレイヤーをシェープファイルに変換し、プロジェクトファイルを書き換えて新しいシェープファイルを参照します。
  • 多くの場合、外部/サムドライブで統合プロジェクトを共有したい場合がありますが、低速のメディアに直接統合しようとすると、多くの書き込み操作が遅くなるため、最初にローカルハードドライブに保存します。

どうもありがとうございました。QConsolidateはまさに私が探していたものです。
ヘンドリック・Pehlke

1
同じ問題の答えを探しました。Qconsolidateプラグインとrelocatorプラグインを使用すると、トピックが解決されたと見なすことができます。しかし:。私は本当にQConsolidateはほとんど死んでいるように見えるので、リロケータの開発が拾って願っています:(未単一はgithubのページに2年間でコミット
マーティン

20

さまざまなファイルベースのフォーマットを使用して、プロジェクトファイルで要求されることを実行しようとする3つのプラグインをテストしました。結果は次のとおりです。

テストされたプラグインは次のとおりです。

  • QConsolidate 0.2.1
  • QPackage 1.3
  • リロケーター0.9

テストはWindows 10上のQGIS 2.18.14 64ビットで実行されました

3つのプラグインはすべて、シェープファイルを問題なく処理し、データをターゲットディレクトリに移動し、データセットのローカルコピーを参照するプロジェクトを作成しました。

QConsolidate

  • FileGDB:コピーも変換もされません(データ損失)。プロジェクトファイルはまだレイヤーを参照しています
  • Spatialite:SHPに翻訳
  • ジオパッケージ:翻訳せずにコピー
  • GeoTiff:そのままコピー

Qパッケージ

  • FileGDB:SHPに翻訳
  • Spatialite:SHPに翻訳
  • ジオパッケージ:SHPに翻訳
  • GeoTiff:そのままコピー

リロケーター

  • FileGDB:SHPに変換され、プロジェクトファイルのパスが正しくありません
  • Spatialite:SHPに変換され、プロジェクトファイルのパスが正しくありません
  • ジオパッケージ:SHPに翻訳され、プロジェクトファイルのパスが正しくありません
  • GeoTiff:そのままコピー

3つのうち、QPackageが最適に機能するように見えました。データベース接続とWebサービスレイヤーはテストされていません。


優れた答え-同様に私のものを更新することを考えていて、これを見つけました。書き換えられた.QGSファイル自体について、どのような経験がありますか?少し前のQConsolidateでの私の最後の経験は、データとQGSファイルの不正なディレクトリを与えることでした。
シンバマング

正直に言って、私はプラグインを使用しませんが、必要に応じてQGSファイルのコピーに対するスクリプト変更を行います。この回答は、私がより多くの利益があると思ったクライアントのテストに基づいていました。
アンディハーフット

私はQPackageを使用しましたが、かなりうまく機能します。他の選択肢もありますが、現時点ではその解決策に満足しています...
Paulo Martinho

6

QGIS自体の方法については知りませんが、プロジェクトファイル(.qgs)は単なるテキストファイルです。したがって、プリミティブで効果的な方法は、すべてを1つのディレクトリに手動でコピーしてから、<datasource></datasource>find and replaceまたは正規表現を使用して新しいディレクトリを指すように.qgsファイル内のタグを変更することです。

さまざまなファイル/ディレクトリがたくさんある場合、1つのオプションは、.qgsファイル内の各タグを検索し、その名前の関連ファイルをディレクトリにコピーしてから.qgsを置き換えることにより、Pythonで自動化することです新しいディレクトリでタグ付けします。


4

また、新しいリロケータプラグインもあります。(この時点で実験的としてマークされています)。プロジェクトファイルを含むすべてのレイヤーを1つのディレクトリまたはzipファイルに保存する機会を提供します。

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