ホーム » tarumi の投稿 (ページ 8)

作者アーカイブ: tarumi

プロジェクトのCRSを設定

[code]
from qgis.core import QgsProject
crs = QgsCoordinateReferenceSystem("EPSG:2541")
prj = QgsProject.instance()
prj.setCrs(crs)
[/code]

設定した投影がステータスバーに反映される

設定した内容を確認

[code]
print("CRS Description: {}".format(crs.description()))
CRS Description: JGD2000 / Japan Plane Rectangular CS IX
[/code]

Pythonでプラグインをロードする

どこかのサイトで以下のコードでプラグインをロードできるとあった。
試してみるとプラグインの選択画面ではチェックが付くが実際にはプラグインの中の関数は呼ばれない
[code]
qgis.utils.loadPlugin(‘myplugin’)
[/code]

以下も同時にやるといいみたい。
でもチェックが付かない?
[code]
qgis.utils.startPlugin(‘myplugin’)
[/code]

起動時に実行するPythonスクリプトではPluginの設定はできない

QGISは実行パラメータ–codeで起動時にPythonのスクリプトを実行できる。

どこかのサイトでこのスクリプトの中で以下のようにQgsSettingsを設定すれば起動時にプラグインをロードできると記載があったが

[code]
QSettings().setValue( "/PythonPlugins/myplugin", True )
[/code]

これはダメ!

起動時に指定したスクリプトはプラグインのロード終了後実行されるので、影響がない

起動時にGUIをカスタマイズ

QGISの起動パラメータ–customizationfileと設定ファイルを渡すとGUIのカスタマイズが可能

設定ファイルのフォーマットは実際にQGISの設定メニューにあるインターフェイスのカスタマイズで確認が可能

QGISをsilent install

QGISのインストーラ(Windows)版はNSISで作成されているので引数に/S、/Dを指定してsilentインストールができる

Qt BottomDockWidgetAreaをCentral WidgetとRightDockWidgetAreaの下に配置

Central WidgetとRightDockWidgetAreaが配置されたQMainWindowにBottomDockWidgetAreaを追加すると
Central Widgetに下、もしくはRightDockWidgetAreaの下にBottomDockWidgetAreaに配置される。

BottomDockWidgetAreaをCentral WidgetとRightDockWidgetAreaの下に配置するにはBottomDockWidgetAreaを配置した後に
以下のコードを実行すればよい

[code]
mainWindow->setCorner(Qt::BottomLeftCorner, Qt::BottomDockWidgetArea);
mainWindow->setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);
[/code]

Qtデザイナ

CentrlaWidgetの設定

QGIS3をWindows上でBUILD

参考サイト

更に正確なサイト

Compiling QGIS on Windows

セットアップ先

Windows10(Pro) 64bit

CMakeをインストール

cmake-3.13.0-win64-x64.zipをダウンロードしてC:\Program Files\cmakeにインストール

cygwinをインストール

cygwinをC:\cygwinにインストール

※デフォルトのインストール先はC:\cygwin64

cygwinよりflex(2.6.4-2)とBison(3.0.2-1)をインストール

Gitをインストール

GitのサイトよりGit-2.19.2-64-bit.exeをダウンロード後、C:\Gitにインストール

C:\Git\cmdにPATHを通す

Visual Studio 2015をインストール

Visual Studio 2015 Pro Update 3をインストールする

※Communityでも同じ?

Windows 10 SDK 10.0.14393.0 を必ず選択してインストール(package-nightly.cmdでWindows 10 SDK 10.0.14393.0のSetupAPI.Libを使用)

osgeo4wをインストール

osgeo4w-setup-x86_64.exeをダウンロード

起動後、アドバンスインストールを選択

Libs以下のqgis-dev-depsを選択

以下も選択

oci-devel
python3-gdal
python3-jinja2
python3-owslib
python3-psycopg2
python3-pygments

依存するモジュールもインストール

依存関係に対応するパッケージをインストールを選択

ninjaをインストール

https://github.com/ninja-build/ninja/releases/download/v1.7.1/ninja-win.zip

をダウンロード、展開してninja.exeをC:\OSGeo4W64\binにコピー。

QGISの最新ソースをダウンロード

CドライブにディレクトリPROJECTSを作成しカレントを移動し以下のコマンドでclone

[code]
git clone https://github.com/qgis/QGIS.git
[/code]

以下のディレクトリに展開

BUILD

環境変数のバッチを作成

以下のバッチをC:\OSGeo4W64\QGIS-Dev.batに保存

[code]
@echo off
set SOURCE=C:\Projects\QGIS
call "%SOURCE%\ms-windows\osgeo4w\msvc-env.bat" x86_64
@cmd
[/code]

C:\OSGeo4W64\QGIS-Dev.batをダブルクリックして実行すると環境設定を行いDOS画面が表示されるので カレントをC:\PROJECTS\QGIS\ms-windows\osgeo4wに移動し、configonly.batを実行。

DOS画面上でdevenvコマンドを実行してVisualStudioを起動し、C:\PROJECTS\QGIS\ms-windows\osgeo4w\build-qgis-test-x86_64\qgis.sinを開く。

ソリューションエクスプローラのALL_BUILDを選択して右クリックしビルドを実行。

コンパイル時に文字コードのエラーが発生した時はコンパイルオプションに/source-charset:utf-8を設定。

以下はqgis_coreの設定例

BUILDが終了したらALL_BUILDプロジェクトのデバッグ用のコマンドをC:\PROJECTS\QGIS\ms-windows\osgeo4w\build-qgis-test-x86_64\output\bin\RelWithDebInfo\qgis.exeに設定

F5キーでデバッグを実行

確認メッセージが表示されたらいいえを押す。

以上でQGIS起動

C:\PROJECTS\QGIS\ms-windows\osgeo4w\configonly.batは内部でpackage-nightly.cmdを呼んでいる。

package.cmdを呼ぶとリリース版のコンパイルか?

Visual Studio 2015 ビルド順

「プロジェクト」メニューの「プロジェクトのビルド順序」を選択


「ビルド順序」を表示

Visual Studio 2015でQString型の変数の値を見る

Visual Studio 2015でQGISをデバッグするとQString型の変数の内容が見れない。

Watch式に(char*)変数名.d+変数名.d->offset,su と記述すると見れる