Outdated version of the documentation. Find the latest one here.

QGISコマンダー

プロセシング にはツールボックスを使わないでアルゴリズムを実行する実用的なツールが含まれています,ここでは実行したいアルゴリズムの名前をタイプすれば実行できます.

このツールは QGIS commander という名前で自動補完機能つきのシンプルなテキストボックスで提供されています.このツールで実行したいコマンドをタイプできます.

../../../_images/commander1.png

QGISコマンダー

コマンダーは*処理*メニューから、あるいはより実用的には Shiftキー+ Ctrlキー+ M (別のものを好む場合は、QGISの設定で、デフォルトのキーボードショートカットを変更できます)を押すことによって起動されます。それを閉じるには、 ESC を押すだけです。処理アルゴリズムを実行することとは別に、コマンダーではQGISでの機能のほとんどにアクセスできます、それはQGISのタスクを実行しているの実用的かつ効率的な方法を与えることを意味し、ボタンやメニューの使用を減らしつつQGISを制御できます。

また、コマンダーは設定可能ですので、カスタムコマンドを追加して、わずか数キーストローク離れてそれらを持って、QGISで毎日の仕事をより生産的にするのに役立つ強力なツールとします。

利用可能コマンド

コマンダーで利用できるコマンドは以下のカテゴリに入ります:

  • プロセシングアルゴリズム. これらは プロセシングアルゴリズム: <name of the algorithm> として表示されます.

  • メニュー項目。これらは メニュー項目として表示されます。<menu entry text>。QGISインターフェースから利用できるすべてのメニュー項目は、それらがサブメニューに含まれている場合でも、ご利用いただけます。

  • Python 関数. 利用可能コマンドリストに含めることができる短い Python関数を作成することができます. それらは Function: <function name> として表示されます

上記のものを実行するためにはタイプを開始して入力したテキストを補完して表示されるコマンドリストから必要なエレメントを選択すればよいです.

(例えば、 ``:機能:removeall)Pythonの関数を呼び出した場合は、 機能が付けられ、リスト内のエントリを、選択することができ、または単に直接 `(関数名を入力します前の例の `removeall)。関数名の後に括弧を追加する必要はありません。

カスタム機能の作成

カスタム関数は、ユーザーフォルダ内の `` .qgis2 /処理/ commander``ディレクトリに発見された `` commands.py``ファイルに対応するPythonコードを入力することによって追加されています。それは必要とする機能を追加できる単純なPythonのファイルです。

いくつかの例では、コマンダーを初めて開いたときの機能を備えたファイルが作成されます。まだコマンダーを立ち上げていない場合は、ファイルを自分で作成できます。コマンドファイルを編集するには、お好みのテキストエディタを使用します。また、コマンダーから `` edit``コマンドを呼び出すことにより、内蔵のエディタを使用できます。これは、コマンドファイルを使用してエディタを開きます、そして、それを直接編集して変更を保存できます。

例えば、すべてのレイヤを削除する次の関数を追加できます:

from qgis.gui import *

def removeall():
    mapreg = QgsMapLayerRegistry.instance()
    mapreg.removeAllMapLayers()

機能を追加したら、それはコマンダーに利用できるようになります、そして、 `` removeall``を入力して、それを呼び出しできます。機能自体を書くことを除けば何もする必要はありません。

関数はパラメータを受け取ることができます。引数を受け取るために関数定義にargs`` * ``を追加します。コマンダーから関数を呼び出すときは、パラメータはスペースで区切って渡さなければなりません。

ここでレイヤーをロードし、ロードするためのレイヤのファイル名でパラメータを取る関数の例を次に示します。

import processing

def load(*args):
  processing.load(args[0])

If you want to load the layer in /home/myuser/points.shp, type in the Commander text box:

``load /home/myuser/points.shp``