タグ付けされた質問 「qgis-processing」

QGISに高度な分析機能をもたらす空間データ処理フレームワーク。

4
PyQGISでラインに沿って同じサイズのポリゴンを生成しますか?
次のステップでAtlasCreatorに使用するために、ラインに沿ってポリゴンを作成したいと思います。 ArcMapには、Strip Map Index Featuresというツールがあります。 このツールを使用して、ポリゴンの高さと幅(たとえば8km x 4km)を選択し、ラインに沿って自動的に生成/回転できます。 各ポリゴンの生成された属性の1つは、後でAtlas Generatorで北向き矢印を回転させるために必要な回転角度です。 QGIS / pyQGISでこのタスクを解決する方法を誰かが考えていますか?GrassまたはSAGAアルゴリズム、またはカスタムプラグイン内で使用できるprossessing-toolbox-modelも問題ありません;)ある種の概観図としてのすべてのポリゴン/範囲。 Edit2:QGIS以外のソフトウェアをインストールすることなく QGISプラグインで使用できるPyQGISソリューションを探しているので、私は報奨金を提供しています(PostGIS / OracleのようなRDBMSはありません)


5
QGISを使用してベクトルポイントデータ内のクラスターを識別しますか?
田舎のブロードバンドデータポイントのベクトルデータセット(どのくらい高速かなど)があり、同様の特性を持つポイントのクラスターがあるかどうかを調べ、それらを囲むポリゴンをプロットしたいと思います。 たとえば、1つのPostGISデータセットに45,000ポイントがあり、ランドスケープに分散している場合があります。互いにx km以内にあり、速度がy kbps未満であるクラスターを識別し、適格なクラスターごとに凸包を生成します。 たとえば、QGISでこれを行う簡単な方法はありますか?

1
gdal_proximityを使用してフィーチャまでの距離を計算する方法は?
私はgdal_proximityを使用して、米国(48州下)の最も近い主要な川までの距離を見つけています。NHD +ネットワークのフローラインをConus Albers(epsg:5070)に投影し、ストリームの順序が5を超える選択された川、ラスタ化された川を255、燃えない川を0としてラスタライズしました。これで十分です。 50km以内の場所で最も近い川へ。入力ファイルは大陸規模で30mの解像度であるため非常に大きくなりますが、変換は単純なgdal_proximityコマンドである必要があります。 gdal_proximity.bat -values 255 -distunits GEO -maxdist 50000 -nodata -999 infile.tif outfile.tif -co COMPRESS=DEFLATE -co BIGTIFF=YES -co TILED=YES これはほとんど機能しているように見えますが、出力に奇妙な幾何学模様が生成されています(画像を参照)。出力に存在するデータは正しく処理されています。なぜそんなに多くの出力が欠落しているのか、誰でも提案できますか? 編集:これがオプションのパラメーターのいずれかによって引き起こされているかどうかをテストするために、この構成でgdal_proximityを再度実行しました。 gdal_proximity.bat H:\data\tmp\NHDplus_network_flowline_SO6plus.tif H:/data/tmp/NHDplus_network_flowline_SO6plus_proximity.tif -values 255 -maxdist 50000 -of GTiff 本質的に同じ結果が得られました: 私の唯一の考えは、それがラスターのサイズに関係しているかもしれないということです(最大100 GB非圧縮。私が知る限り、BigTiffのサイズに制限はありませんが、gdalができることには制限があるかもしれません効果的に分析しますか?

3
QGISの交差ツールで無効な入力機能を無視しますか?
QGIS 2.18では、ベクター>ジオプロセシングツール>交差ツールを使用したときに、「NULLジオメトリを無視する(オプション)」というオプションをチェックすることができました。 QGIS 3.2をダウンロードしましたが、そのオプションはもう存在しません。しかし、作業中の2つのレイヤー間の交差点を作成しようとすると、どこかに無効なジオメトリがあり、それを修正するか、「処理設定を「無効な入力フィーチャを無視する」に変更する必要があるというメッセージが表示されます'オプション。 " しかし、そのオプションは存在しません!または、存在する場合は、どこにも見つかりません。 QGIS 3.2でこの設定を変更する方法/場所を知っている人はいますか?

2
スタンドアロンPyQGISスクリプト(GUIの外部)からQGIS3処理アルゴリズムを使用する
私はQGIS GUIの外で動作しなければならないスクリプトを書いています。qgis.coreからいくつかのAPI関数を呼び出しますが、処理プラグインを使用したいと思います。 sys.path.append()で処理をインポートできますが、プロセスを実行できません。さらに、QgsApplication.processingRegistry()。algorithms()ですべての「ネイティブ」アルゴリズムが欠落しています。 それで、そのように処理を実行することは可能ですか?私は何が欠けていますか? import os, sys from qgis.core import * QgsApplication.setPrefixPath('/usr', True) qgs = QgsApplication([], False) qgs.initQgis() sys.path.append('/usr/share/qgis/python/plugins') from processing.core.Processing import Processing Processing.initialize() import processing layer1 = QgsVectorLayer('data/ROUTE_PRIMAIRE.SHP') layer2 = QgsVectorLayer('data/ROUTE_SECONDAIRE.SHP') processing.run('qgis:union', layer1, layer2, 'test.shp') # returns nothing 私はQGIS 3.0.1を使用しています-Debian 9

3
OSGeo4wシェルスクリプトの実行時のqgis​​.coreのインポートエラー
この投稿とともに、QGISの外部のOSGeo4w Shellでスクリプトを実行しようとしました。しかし、次のエラーが表示されます。 ImportError:qgis.coreという名前のモジュールはありません また、次の投稿を読んで、さまざまなモジュールをインポートしようとしましたが、役に立ちませんでした: QGIS pythonコンソールの外でsextanteアルゴリズムを実行する方法は? QGIS用のシンプルなPythonスクリプトを外部から実行するには(Sublime Textなど)? PyQGISを使用してスタンドアロンPythonスクリプトを作成しますか? 以下は、グリッドを作成し、その上にポリゴンシェープファイルをクリップする簡単なスクリプトです。 注:このスクリプトはテスト済みであり、QGISで実行すると正常に機能します。 ##Test=name import os import glob import sys sys.path.append("C:\Program Files\QGIS Brighton\lib;%OSGEO4W_ROOT:\=/%/apps/qgis;%OSGEO4W_ROOT%\apps\qgis\bin;%OSGEO4W_ROOT%\apps\grass\grass-6.4.3\lib;%PATH%") from PyQt4.QtCore import * from PyQt4.QtGui import * from qgis.core import * QgsApplication.setPrefixPath("C:\Program Files\QGIS Brighton\apps\qgis", True) QgsApplication.initQgis() from os.path import expanduser home = expanduser("~") # Folder path of the …

2
Pythonで「処理」にアクセスしますか?
スタンドアロンスクリプトからQGIS外のPythonの行展開機能にアクセスしたい。 使用するには、どのモジュールをロードする必要がありますか? どうすればアクセスできますprocessingか? from qgis.core import * layerInput = QgsVectorLayer('test.shp', 'test', 'ogr') processing.runalg('qgis:explodelines', layerInput, 'temp.shp')

1
スタンドアロンのPyQGIS処理スクリプトでインポートの順序が重要なのはなぜですか?
スタンドアロンのPyQGIS処理スクリプトの実行中に奇妙な問題に遭遇しました。スクリプト内のインポートの順序は、通常の実行に影響します。 Pythonコンソールを開いて次のスクリプトを入力することで問題を再現できます(GNU / Linux、QGIS 2.6.1、処理プラグインv.2.2.0-2、Python 2.7.3を使用しています)。 # Prepare the environment import sys from qgis.core import QgsApplication from PyQt4.QtGui import QApplication app = QApplication([]) QgsApplication.setPrefixPath("/usr", True) QgsApplication.initQgis() # Prepare processing framework sys.path.append('/home/YOUR_USER/.qgis2/python/plugins') from processing.core.Processing import Processing Processing.initialize() print Processing.getAlgorithm("qgis:creategrid") # Exit applications QgsApplication.exitQgis() QApplication.exit() 以下を入手する必要があります。 ALGORITHM: Create grid HSPACING <ParameterNumber> VSPACING …

1
GUIからQGIS処理スクリプトをキャンセルするクリーンな方法
最寄り施設の分析を実行するQGIS処理スクリプトを作成しました。完全な入力データセット(開始点として20kのアドレス、〜100のターゲットポイント、〜13kのラインストリングを持つOSM道路網)を取得すると、スクリプトは約3時間実行されるため、さまざまな進行状況インジケーターを使用して、まだ生きている(ログ出力、プログレスバー、残り時間、処理されたばかりの最も近い施設への道を示すラバーバンド、cp。下のスクリーンショット): 次に、実行中のスクリプトをキャンセルしたいと思います。これは[X]、処理スクリプトguiウィンドウの右上でのみ実行できます。 しかし、そうすると、スクリプトは処理時間と進行状況バーだけでなく、青い輪ゴムで示されるように処理を続けます... ...およびタスクマネージャのシステムリソース: ただし、スクリプトの数分(〜14分)後に処理が停止し、システムはリソースを消費しなくなります。 ウィンドウを閉じてから処理を停止するまでの期間はかなり予測できないように思えるので、私の質問は、これはQGIS処理スクリプトをキャンセルする推奨方法ですか、GUIからそのようなスクリプトをきれいにキャンセルする他の方法はありますか?

3
QGIS処理アルゴリズムでメモリレイヤーを使用することは可能ですか?
ローカルネットワーク内のMySQLデータベースに接続するQGISプラグインを構築し、テーブルのいずれかのサブセットをインメモリレイヤーに追加しています。サブセットはデータ通貨に基づいています(測定が行われる各場所の最新の観測値のみを取得します)。このメモリレイヤーは正常に作成されました。 しかし、その後、いくつかのジオプロセシングアルゴリズムを実行したいのですが、いずれのインメモリレイヤーでも使用できません。 self.stationuri = "point?crs=epsg:4326&field=id:integer&field={}:double&index=yes".format(self.cb_field.currentText()) self.vlayer = QgsVectorLayer(self.stationuri,"scratch","memory") if not self.vlayer.isValid(): raise Exception("Failed to create in-memory layer") self.vlayer.startEditing() for i,r in enumerate(result): # Result is row-by-row result of SQL query # Add features ... self.vlayer.commitChanges() self.vlayer.updateExtents() # Add layer to map QgsMapLayerRegistry.instance().addMapLayer(self.vlayer) # Layer is successfully added to map with …

1
QGIS 3.0 Processingの新しいalglistとalghelpは何ですか?
Pythonコンソールを介して新しいQGIS 3.0処理スクリプトにアクセスすることは、特に古いprocessing.alglist()およびprocessing.alghelp()コマンドが機能していないように見えるため、私にとって難題であることが証明されています。 処理スクリプトのリストをどのように呼び出すのですか? 個々のスクリプトのヘルプ情報をどのように呼び出しますか?


1
r.mapcalcはQGISで出力を提供しません
しばらくの間、私はQGIS Processing Toolboxからr.mapcalcを使用しようとしています。ただし、このアルゴリズムでは何も出力されません。いくつかのラスターレイヤーと異なる式を試しましたが、アルゴリズムは「結果ディレクトリ」に何も出力しません。以下は、アルゴリズムのセットアップの簡単な例を示す画像です。たぶん私は何かを見逃していますが、似たようなオンラインは見つかりませんでした。

3
QGIS 2.14スタンドアロンGRASSプロバイダーにMsysフォルダーがなく、ツールを実行できません
QGIS 2.12以下では、GRASSプロバイダーのフォルダーパスを手動で設定しようとすると、これがその方法でした GIS 2.14では、同じパス(... \ apps \ msys)にMsysフォルダーやQGISインストールのその他のフォルダーはありません。 したがって、GRASSツールが機能するためには、QGISスタンドアロンで正しく設定する必要がありますが、それを行うことはできません。 QGIS 2.14でGRASSツールをどのように機能させるのですか?

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