重要

翻訳は あなたが参加できる コミュニティの取り組みです。このページは現在 100.00% 翻訳されています。

3.2. Webマップサービス (WMS)

QGISサーバに実装された 1.1.11.3.0 のWMS標準は、QGISプロジェクトから作成された地図又は凡例画像を要求するためのHTTPインターフェースを提供します。典型的なWMSリクエストは、使用するQGISプロジェクト、レンダリングするレイヤ、生成する画像の形式を決定します。Styled Layer Descriptor (SLD) ではベーシックサポートも利用できます。

仕様:

QGIS Serverが提供する標準リクエスト

リクエスト

説明

GetCapabilities

サーバーに関する情報を含むXMLメタデータを返します

GetMap

マップを返します

GetFeatureInfo

ピクセル位置のデータ(ジオメトリと値)を取得します

GetLegendGraphic

凡例シンボルを返します

GetStyle(s)

SLD によるスタイル記述の XML 文書を返します

DescribeLayer

ベクタレイヤとラスタレイヤについて、それぞれWFSとWCSの有無に関する情報を返します

QGIS Serverが提供するベンダーのリクエスト:

リクエスト

説明

GetPrint

QGISのレイアウトを返します

GetProjectSettings

QGIS Server に関する特定の情報を返します

GetSchemaExtension

オプションの拡張機能に関する XML メタデータを返します

3.2.1. GetCapabilities

OGC WMS 1.1.1 及び 1.3.0 仕様に従った GetCapabilities リクエストの標準パラメータ:

パラメータ

必須

説明

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetCapabilities)

VERSION

No

サービスのバージョン

GetCapabilities リクエストは以下のベンダーパラメータもサポートしています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetCapabilities

3.2.2. GetMap

OGC WMS 1.1.1 及び 1.3.0 仕様に従った GetMap リクエストの標準パラメータ:

パラメータ

必須

説明

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetMap)

VERSION

Yes

サービスのバージョン

LAYERS

No

表示するレイヤ

STYLES

No

レイヤのスタイル

SRS / CRS

Yes

座標参照系

BBOX

Yes

マップの範囲

WIDTH

Yes

ピクセル単位の画像の幅

HEIGHT

Yes

ピクセル単位の画像の高さ

FORMAT

No

画像の形式

TRANSPARENT

No

透明な背景

SLD

No

スタイリングに使用するSLDのURL

SLD_BODY

No

スタイリングに使用するインラインSLD(XML)

QGIS Serverでは、標準的なものに加えて、 redliningexternal WMS layers、および以下の追加パラメータがサポートされています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

BGCOLOR

No

背景色を指定します

DPI

No

出力解像度を指定します

IMAGE_QUALITY

No

JPEG圧縮

OPACITIES

No

レイヤまたはグループの不透明度

FILTER

No

地物のサブセット

SELECTION

No

地物を強調します

FILE_NAME

No

ダウンロードするファイルのファイル名

FORMAT=application/dxf の場合のみ

FORMAT_OPTIONS

No

指定されたファイル形式のオプション

FORMAT=application/dxf の場合のみ

TILED

No

tiledモード での作業

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetMap
&MAP=/home/qgis/projects/world.qgs
&LAYERS=mylayer1,mylayer2,mylayer3
&STYLES=style1,default,style3
&OPACITIES=125,200,125
&CRS=EPSG:4326
&WIDTH=400
&HEIGHT=400
&FORMAT=image/png
&TRANSPARENT=TRUE
&DPI=300
&TILED=TRUE

VERSION

このパラメータでは、使用するサービスのバージョンを指定することができます。VERSION パラメータに指定できる値は以下の通りです:

  • 1.1.1

  • 1.3.0

バージョン番号によって、次のパラメータで説明するように、若干の違いがあることが予想されます:

  • CRS / SRS

  • BBOX

LAYERS

マップ上に表示するレイヤーを指定するパラメータです。名前はカンマで区切る必要があります。

さらに、QGIS Serverでは、レイヤを選択するためのオプションがいくつか導入されています:

  • レイヤID:レイヤをIDで選択できるプロジェクトオプションは、プロジェクト ► プロパティ... ダイアログの QGISサーバー ► WMS タブにあります。このオプションを有効にするには、レイヤIDを名前に使う チェックボックスにチェックを入れます。

  • 短い名前

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&LAYERS=mylayerid1,mylayerid2
&...

STYLES

このパラメータは、レンダリングステップのレイヤのスタイルを指定するために使用されます。スタイルはカンマで区切る必要があります。デフォルトのスタイル名は default です。

SRS / CRS

このパラメータは、WMS 1.1.1 におけるマップ出力の空間参照系を示すもので、EPSG:XXXX のような形式で指定する必要があります。なお、現在のバージョンが 1.1.1 の場合は CRS もサポートされます。

WMS 1.3.0 では、CRS パラメータが望ましいですが、SRS もサポートされています。

もし CRSSRS の両方のパラメータがリクエストに含まれていた場合、 VERSION パラメータで示される現在のバージョンが決定的に重要であることに注意してください。

次のケースでは、CRS が指示されていないため、SRS パラメータは VERSION パラメータが何であろうと保持されます:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&SRS=EPSG:2854
&...

次のケースでは、VERSION パラメータのため、CRS の代わりに``SRS``パラメータが保持されます:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.1.1
&CRS=EPSG:4326
&SRS=EPSG:2854
&...

次のケースでは、VERSION パラメータのため、SRS の代わりに CRS パラメータが保持されます:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&CRS=EPSG:4326
&SRS=EPSG:2854
&...

BBOX

このパラメータを使用すると、現在のCRSに従った単位でマップの範囲を指定することができます。座標はカンマで区切る必要があります。

BBOX パラメータは min_a,min_b,max_a,max_b のように形成されますが、ab の軸の定義は、現在の VERSION パラメータによって異なります:

  • WMS 1.1.1 において、軸の順序は常に東/北です

  • WMS 1.3.0 において、軸の順序はCRSの権限に依存します

例えば EPSG:4326 と WMS 1.1.1 の場合、a は経度(東)、b は緯度(北)で、次のようなリクエストとなります:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.1.1
&SRS=epsg:4326
&BBOX=-180,-90,180,90
&...

しかし、WMS 1.3.0 の場合、EPSGデータベースで定義されている軸の順序は北/東なので、a は緯度、b は経度です:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&CRS=epsg:4326
&BBOX=-90,-180,90,180
&...

WIDTH

出力画像の幅をピクセル単位で指定することができるパラメータです。

HEIGHT

出力画像の高さをピクセル単位で指定することができるパラメータです。

FORMAT

このパラメータは、マップ画像の形式を指定するために使うことができます。使用可能な値は次の通りです:

  • jpg

  • jpeg

  • image/jpeg

  • image/png

  • image/png; mode=1bit

  • image/png; mode=8bit

  • image/png; mode=16bit

  • image/webp

  • application/dxf: WFSサービスで読み取り権限を持つレイヤーのみがDXF形式でエクスポートされます

    URLの例:

    http://localhost/qgisserver?
    SERVICE=WMS&VERSION=1.3.0
    &REQUEST=GetMap
    &FORMAT=application/dxf
    &LAYERS=Haltungen,Normschacht,Spezialbauwerke
    &CRS=EPSG%3A21781
    &BBOX=696136.28844801,245797.12108743,696318.91114315,245939.25832905
    &WIDTH=1042
    &HEIGHT=811
    &FORMAT_OPTIONS=MODE:SYMBOLLAYERSYMBOLOGY;SCALE:250
    &FILE_NAME=plan.dxf
    

TRANSPARENT

この ブール型パラメータを使って、背景の不透明度を指定することができます。使用可能な値は以下の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

ただし、FORMAT で示される画像の形式がPNGと異なる場合、このパラメータは無視されます。

BGCOLOR

このパラメータはマップ画像の背景色を指定することができます。ただし、PNG画像の場合は TRANSPARENT パラメータと組み合わせることができません(透明度が優先されます)。色はリテラルでも16進数でもかまいません。

リテラル表記によるURLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&BGCOLOR=green
&...

16進数表記によるURLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&BGCOLOR=0x00FF00
&...

DPI

このパラメータを使って、要求される出力分解能を指定することができます。

IMAGE_QUALITY

このパラメータは、JPEG画像に対してのみ使用されます。デフォルトでは、JPEGの圧縮率は -1 です。

QGISプロジェクトごとのデフォルトは、 プロジェクト ► プロパティ... ダイアログの OWS Server ► WMS capabilities メニューで変更することができます。GetMap リクエストでオーバーライドしたい場合は、IMAGE_QUALITY パラメータを使用することができます。

OPACITIES

不透明度の値をカンマで区切ったリストです。不透明度は、レイヤまたはグループレベルで設定することができます。設定可能な値は、0 (完全に透明)から 255 (完全に不透明)までの範囲です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&WIDTH=400
&HEIGHT=200
&CRS=EPSG:4326
&LAYERS=countries,places
&BBOX=42,-6,52,15
&OPACITIES=255,0
../../../_images/wms_getmap_opacities.png

図 3.2 左は OPACITIES=255,0、右は``OPACITIES=255,255``

FILTER

FILTER パラメータを使用すると、レイヤーのサブセットを選択することができます。構文は基本的にQGISのサブセット文字列と同じです。ただし、QGIS Serverを介したデータベースへのSQLインジェクションを避けるために、いくつかの制限があります。パラメータに危険な文字列が見つかった場合、QGIS Serverは次のエラーを返します:

<ServiceExceptionReport>
  <ServiceException code="Security">The filter string XXXXXXXXX has been rejected because of security reasons.
  Note: Text strings have to be enclosed in single or double quotes. A space between each word / special character is mandatory.
  Allowed Keywords and special characters are IS,NOT,NULL,AND,OR,IN,=,<,=<,>,>=,!=,',',(,),DMETAPHONE,SOUNDEX.
  Not allowed are semicolons in the filter expression.</ServiceException>
</ServiceExceptionReport>

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&WIDTH=400
&HEIGHT=300
&CRS=EPSG:4326
&BBOX=41,-6,52,10
&LAYERS=countries_shapeburst,countries,places
&FILTER=countries_shapeburst,countries:"name" = 'France';places: "name" = 'Paris'
../../../_images/wms_getmap_filter.png

図 3.3 FILTERパラメータを指定したGetMapリクエストに対するサーバーの応答

この例では、同じフィルター "name" = 'France' がレイヤ countriescountries_shapeburst に適用され、フィルター "name" = 'Paris'places にのみ適用されています。

注釈

FILTERがある場合は、GetFeatureInfoで属性検索を行い、X/Yパラメータを省略することが可能です。QGIS Serverは、マッチした地物の情報を返し、XML出力に結合バウンディングボックスを生成します。

SELECTION

SELECTION パラメータは、1つまたは複数のレイヤから地物をハイライトすることができます。ベクタ地物は、地物IDをカンマで区切ったリストを渡すことで選択することができます。

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&LAYERS=mylayer1,mylayer2
&SELECTION=mylayer1:3,6,9;mylayer2:1,5,6
&...

次の画像は、SELECTION オプションを使ったGetMapリクエストの応答を示しています 例 http://myserver.com/...&SELECTION=countries:171,65

これらの地物IDは、ソースデータセットでは FranceRomania に対応しているので、黄色でハイライトされています。

../../../_images/server_selection_parameter.png

図 3.4 SELECTIONパラメーターを指定したGetMapリクエストに対するサーバーの応答

FORMAT_OPTIONS

このパラメータは、選択された形式のオプションを指定するために使用できます。GetMapリクエストの FORMAT=application/dxf の場合のみです。セミコロンで区切られた、キー:値 ペアのリストを受け取ります:

  • SCALE: シンボロジルール、フィルター、スタイルに使用されます(データの実際のスケーリングではありません - データは元の縮尺のままです)。

  • MODE: QGIS DesktopのDXFエクスポートダイアログで提供されるエクスポートオプションに対応します。可能な値は NOSYMBOLOGYFEATURESYMBOLOGYSYMBOLLAYERSYMBOLOGY です。

  • LAYERATTRIBUTES: ひとつのフィールドか、レイヤが多い場合は DXFレイヤ名に対応する値を含んだフィールドのカンマ区切りリストを指定します。指定しない場合は、元のQGISレイヤ名が使われます。

  • USE_TITLE_AS_LAYERNAME: 有効にすると、レイヤのタイトルがレイヤ名として使用されるようになります。

  • CODEC: エンコードに使用するコーデックを指定します。デフォルトはISO-8859-1です。有効な値については、QGISデスクトップのDXFエクスポートダイアログを確認してください。

  • NO_MTEXT: ラベルに MTEXT の代わりに TEXT を使用します。

  • FORCE_2D:2D出力を強制します。ポリライン幅に必要です。

TILED

パフォーマンス上の理由から、QGIS Serverはタイルモードで使用することができます。このモードでは、クライアントが複数の小さな固定サイズのタイルを要求し、それらを組み立ててマップ全体を形成します。この場合、2つのタイルの境界付近のシンボルは、どちらかのタイルにしか存在しないため、カットされて表示されることがあります。

TILED パラメータを TRUE に設定すると、QGIS Serverに タイル モードで動作し、QGISプロジェクトで設定された タイルバッファ を適用するように指示します( プロジェクトを設定する を参照)。

TILEDTRUE で、かつ QGIS プロジェクトで非ゼロのタイルバッファが設定されている場合、タイル境界でのカットシンボルを避けるために、タイル範囲外の地物が描画されます。

TILED のデフォルトは FALSE です。

3.2.3. GetFeatureInfo

OGC WMS 1.1.1 および 1.3.0 仕様に従った GetFeatureInfo リクエストの標準パラメータ:

パラメータ

必須

説明

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetFeatureInfo)

VERSION

No

サービスのバージョン

QUERY_LAYERS

Yes

クエリするレイヤ

LAYERS

Yes

表示するレイヤ(QUERY_LAYERS と同じ)

STYLES

No

レイヤのスタイル

SRS / CRS

Yes

座標参照系

BBOX

No

マップの範囲

WIDTH

Yes

ピクセル単位の画像の幅

HEIGHT

Yes

ピクセル単位の画像の高さ

TRANSPARENT

No

透明な背景

INFO_FORMAT

No

出力形式

FEATURE_COUNT

No

返す地物の最大数

I

No

クエリする点のピクセル列

X

No

I パラメータと同じだが、WMS 1.1.1 の場合

J

No

クエリする点のピクセル行

Y

No

J パラメータと同じだが、WMS 1.1.1 の場合

WMS_PRECISION

No

ジオメトリを返す際に使用する精度(桁数)( how to add geometry to feature response を参照してください)。デフォルト値は -1 で、プロジェクトで定義された精度が使用されることを意味します。

QGIS Serverは、標準的なものに加えて、以下の追加パラメータをサポートしています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

FILTER

No

地物のサブセット

FI_POINT_TOLERANCE

No

ポイントレイヤに対するピクセル単位の許容範囲

FI_LINE_TOLERANCE

No

ラインレイヤに対するピクセル単位の許容範囲

FI_POLYGON_TOLERANCE

No

ポリゴンレイヤに対するピクセル単位の許容範囲

FILTER_GEOM

No

ジオメトリのフィルタリング

WITH_DISPLAY_NAME

No

出力に地物の表示名を追加します

WITH_MAPTIP

No

出力にマップチップを追加します

WITH_GEOMETRY

No

出力にジオメトリを追加します

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetMap
&MAP=/home/qgis/projects/world.qgs
&LAYERS=mylayer1,mylayer2,mylayer3
&CRS=EPSG:4326
&WIDTH=400
&HEIGHT=400
&INFO_FORMAT=text/xml
&TRANSPARENT=TRUE
&QUERY_LAYERS=mylayer1
&FEATURE_COUNT=3
&I=250
&J=250

INFO_FORMAT

このパラメータは結果のフォーマットを指定するために使用されます。利用可能な値は以下のとおりです:

  • text/xml

  • text/html

  • text/plain

  • application/vnd.ogc.gml

  • application/json

QUERY_LAYERS

このパラメータは、マップ上に表示するレイヤを指定します。名前はカンマで区切られます。

さらに、QGIS Serverでは、レイヤーを選択する以下のオプションを導入しています:

  • 短い名前

  • レイヤid

詳しくは GetMap で定義されている LAYERS パラメータを参照してください。

FEATURE_COUNT

このパラメータは、レイヤーごとに返す地物の最大数を指定します。例えば、 QUERY_LAYERSlayer1,layer2 で、 FEATURE_COUNT3 の場合、レイヤ1から最大3つの地物が返されることになります。同様に、レイヤ2からは最大3つの地物が返されます。

デフォルトでは1つの地物だけが返されます。

I

WMS 1.3.0で定義されたパラメータで、クエリポイントのピクセル列を指定することができます。

X

I と同じパラメータですが、WMS 1.1.1 で定義されています。

J

WMS 1.3.0で定義されたパラメータで、クエリポイントのピクセル行を指定することができます。

Y

J と同じパラメータですが、WMS 1.1.1 で定義されています。

FI_POINT_TOLERANCE

このパラメータではラインレイヤでの許容誤差(ピクセル)を指定します。

FI_LINE_TOLERANCE

ラインレイヤの許容範囲をピクセル単位で指定するパラメータです。

FI_POLYGON_TOLERANCE

ポリゴンレイヤの許容範囲をピクセル単位で指定するパラメータです。

FILTER_GEOM

このパラメータは、地物が交差しなければならないWKTジオメトリを指定します。

WITH_DISPLAY_NAME

このパラメータは、出力に地物の表示名を加えるかどうかを指定します。

利用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

WITH_MAPTIP

このパラメータは、出力にマップチップを加えるかどうかを指定します。

利用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

WITH_GEOMETRY

このパラメータは、出力にジオメトリを追加するかどうかを指定します。この機能を使用するには、まずQGISプロジェクトで Add geometry to feature response オプションを有効にする必要があります。Configure your project を参照してください。

利用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

3.2.4. GetLegendGraphic

OGC WMS 1.1.1および1.3.0仕様に従った GetLegendGraphic リクエストの標準パラメータ

パラメータ

必須

説明

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetLegendGraphic)

VERSION

No

サービスのバージョン

LAYERS

Yes

表示するレイヤ

STYLES

No

レイヤのスタイル

SRS / CRS

No

座標参照系

BBOX

No

マップの範囲

WIDTH

No

ピクセル単位の画像の幅

HEIGHT

No

ピクセル単位の画像の高さ

FORMAT

No

凡例の形式

TRANSPARENT

No

透明な背景

QGIS Serverでは、標準的なパラメータに加えて、凡例要素のサイズやレイヤタイトルやアイテムラベルのフォントプロパティを変更するための追加パラメータをサポートしています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

SRCWIDTH

No

マップの幅

SRCHEIGHT

No

マップの高さ

SHOWFEATURECOUNT

No

地物の地物数を追加します

RULE

No

ルールシンボルをレンダリング

RULELABEL

No

アイテムラベルをレンダリング

BOXSPACE

No

凡例フレームと内容の間隔 (mm)

LAYERSPACE

No

レイヤの垂直間隔 (mm)

LAYERTITLESPACE

No

レイヤタイトルとアイテムの垂直間隔 (mm)

SYMBOLSPACE

No

シンボルとアイテムの垂直間隔 (mm)

ICONLABELSPACE

No

シンボルとラベルの水平間隔 (mm)

SYMBOLWIDTH

No

シンボルプレビューの幅 (mm)

SYMBOLHEIGHT

No

シンボルプレビューの高さ (mm)

LAYERTITLE

No

レイヤタイトルをレンダリング

LAYERFONTFAMILY

No

レイヤのフォントファミリー

LAYERFONTBOLD

No

レイヤタイトルを太字でレンダリング

LAYERFONTSIZE

No

レイヤタイトルのフォントサイズ (pt)

LAYERFONTITALIC

No

レイヤタイトルを斜体でレンダリング

LAYERFONTCOLOR

No

レイヤタイトルの色

ITEMFONTFAMILY

No

アイテムのフォントファミリー

ITEMFONTBOLD

No

アイテムラベルを太字でレンダリング

ITEMFONTSIZE

No

アイテムラベルのフォントサイズ (pt)

ITEMFONTITALIC

No

アイテムラベルを斜体でレンダリング

ITEMFONTCOLOR

No

アイテムラベルの色

ADDLAYERGROUPS

No

JSON出力にレイヤグループを追加する

BBOX

このパラメータは凡例が作成される地理的な区域を指定するために使用することができます(その形式の説明は ここ にあります)が、 RULE パラメータと組み合わせることはできません。SRS/CRS パラメータは BBOX パラメータを使用する際に必須となります。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries,airports
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326

注釈

BBOX パラメータが定義されている場合、凡例は 内容型の凡例 として参照されます。

WIDTH

このパラメータはデフォルトでは使用されませんが、 RULE パラメータが設定された場合には必須となります。この場合、出力画像の幅をピクセル単位で指定することができます。

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=getlegendgraphic
&LAYER=testlayer%20%C3%A8%C3%A9
&RULE=rule1
&WIDTH=30
&HEIGHT=30

HEIGHT

このパラメータはデフォルトでは使用されませんが、 RULE パラメータが設定されている場合は必須となります。この場合、出力画像の高さをピクセル単位で指定することができます。

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYER=testlayer%20%C3%A8%C3%A9
&RULE=rule1
&WIDTH=30
&HEIGHT=30

FORMAT

このパラメータを使用して、凡例画像の形式を指定することができます。使用可能な値は以下の通りです:

  • image/jpeg

  • image/png

  • application/json

JSONの場合、シンボルはBase64でエンコードされ、レイアウトやフォントに関するその他のオプションは、凡例がクライアント側で構築される必要があるため、考慮されません。RULE パラメータはこの形式と組み合わせることができません。

URLの例とそれに対応するJSONの出力:

http://localhost/qgisserver?
SERVICE=WMS&
REQUEST=GetLegendGraphic&
LAYERS=airports&
FORMAT=application/json

そして、それに対応するJSONの出力:

{
  "nodes":[
    {
      "icon":"<base64 icon>",
      "title":"airports",
      "type":"layer"
    }
  ],
  "title":""
}

SRCWIDTH

このパラメータは RULE パラメータが設定されているときに定義することができます。この場合、SRCWIDTH の値は WIDTH パラメータとして基となる GetMap リクエストに転送され、WIDTH パラメータは GetLegendGraphics の画像凡例の大きさに使われます。

SRCHEIGHT

このパラメータは RULE パラメータが設定されているときに定義することができます。この場合、SRCHEIGHT の値は HEIGHT パラメータとして基となる GetMap リクエストに転送され、HEIGHT パラメータは GetLegendGraphics の画像凡例の大きさに使われます。

SHOWFEATURECOUNT

このパラメータは、凡例で地物カウントを有効にするために使用することができます。使用可能な値は以下の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

例:

../../../_images/getfeaturecount_legend.png

RULE

このパラメータは Rule-based レンダリングを持つレイヤで使用でき、指定したルールシンボルだけで凡例を作成することができるようになります。このパラメータは BBOX パラメータや JSON形式と組み合わせることはできません。HEIGHTWIDTH は指定する必要があります。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=mylayer,
&RULE=myrulename,
&WIDTH=20,
&HEIGHT=20

RULELABEL

このパラメータは、アイテムラベルの描画を制御することができます。使用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE: アイテムラベルを表示します

  • FALSE: アイテムラベルを隠します

  • AUTO: 単一のシンボル レンダリングのレイヤのアイテムラベルを隠します

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries,airports
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&RULELABEL=AUTO
../../../_images/wms_getlegendgraphic_rulelabel.png

図 3.5 単一シンボルのレイヤにはラベルを使わずに凡例をレンダリング

BOXSPACE

このパラメータでは、凡例フレームと内容の間隔をミリメートル単位で指定することができます。デフォルトの間隔は 2 mm です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&BOXSPACE=0
../../../_images/wms_getlegendgraphic_boxspace.png

図 3.6 左は BOXSPACE=0、右は BOXSPACE=15

LAYERSPACE

このパラメータでは、レイヤ間の垂直間隔をミリメートル単位で指定することができます。デフォルトの間隔値は、3 mmです。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERSPACE=0
../../../_images/wms_getlegendgraphic_layerspace.png

図 3.7 左は LAYERSPACE=0、右は LAYERSPACE=10

LAYERTITLESPACE

このパラメータでは、レイヤのタイトルとそれに続くアイテムの間の垂直間隔をミリメートル単位で指定することができます。デフォルトの間隔は 3 mm です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERTITLESPACE=0
../../../_images/wms_getlegendgraphic_layertitlespace.png

図 3.8 左は LAYERTITLESPACE=0、右は LAYERTITLESPACE=10

SYMBOLSPACE

このパラメータでは、シンボルとそれに続くアイテムの間の垂直間隔をミリメートル単位で指定します。デフォルトの間隔は 2 mm です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&SYMBOLSPACE=0
../../../_images/wms_getlegendgraphic_symbolspace.png

図 3.9 左は SYMBOLSPACE=0、右は SYMBOLSPACE=5

ICONLABELSPACE

このパラメータでは、シンボルとラベルテキストの間の水平間隔をミリメートル単位で指定することができます。デフォルトの間隔は 2 mm です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=getlegendgraphic
&LAYERS=countries,
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ICONLABELSPACE=0
../../../_images/wms_getlegendgraphic_iconlabelspace.png

図 3.10 左は ICONLABELSPACE=0、右は ICONLABELSPACE=10

SYMBOLWIDTH

このパラメータでは、シンボルプレビューの幅をミリメートル単位で指定することができます。デフォルトの幅は 7 mm です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries,
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&SYMBOLWIDTH=2
../../../_images/wms_getlegendgraphic_symbolwidth.png

図 3.11 左は SYMBOLWIDTH=2、右は SYMBOLWIDTH=20

SYMBOLHEIGHT

このパラメータでは、シンボルプレビューの高さをミリメートル単位で指定することができます。デフォルトでは、高さは 4 mm です。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries,
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&SYMBOLHEIGHT=2
../../../_images/wms_getlegendgraphic_symbolheight.png

図 3.12 左は SYMBOLHEIGHT=2、右は SYMBOLHEIGHT=6

LAYERTITLE

このパラメータは、レイヤのタイトルを描画するかどうかを指定します。

利用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE (デフォルト値)

  • FALSE

LAYERFONTFAMILY

このパラメータは、レイヤタイトルの描画に使用するフォントファミリーを指定します。

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries
&LAYERFONTFAMILY=monospace

LAYERFONTBOLD

このパラメータは、レイヤのタイトルを太字で描画するかどうかを指定します。使用可能な値は以下の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTBOLD=TRUE
../../../_images/wms_getlegendgraphic_layerfontbold.png

図 3.13 LAYERFONTBOLD=TRUE の凡例

LAYERFONTSIZE

このパラメータは、レイヤのタイトルを描画する際のフォントサイズをポイント単位で指定します。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTSIZE=20
../../../_images/wms_getlegendgraphic_layerfontsize.png

図 3.14 LAYERFONTSIZE=20 の凡例

LAYERFONTITALIC

このパラメータは、レイヤーのタイトルを斜体で描画するかどうかを指定します。使用可能な値は以下の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTITALIC=TRUE
../../../_images/wms_getlegendgraphic_layerfontitalic.png

図 3.15 LAYERFONTITALIC=TRUE の凡例

LAYERFONTCOLOR

このパラメータはレイヤタイトルの色を指定します。色はリテラル(red, green, ...)または16進数表記(0xFF0000, 0x00FF00, ...)で指定できます。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTCOLOR=0x5f9930
../../../_images/wms_getlegendgraphic_layerfontcolor.png

図 3.16 LAYERFONTCOLOR=0x5f9930 の凡例

ITEMFONTFAMILY

このパラメータは、アイテムラベルを描画するのに使うフォントファミリーを指定します。

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=countries
&ITEMFONTFAMILY=monospace

ITEMFONTBOLD

このパラメータは、アイテムラベルを太字で描画するかどうかを指定します。使用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTBOLD=TRUE
../../../_images/wms_getlegendgraphic_itemfontbold.png

図 3.17 ITEMFONTBOLD=TRUE の凡例

ITEMFONTSIZE

このパラメータは、レイヤのタイトルを描画する際のフォントサイズをポイント単位で指定します。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTSIZE=20
../../../_images/wms_getlegendgraphic_itemfontsize.png

図 3.18 ITEMFONTSIZE=30 の凡例

ITEMFONTITALIC

このパラメータは、アイテムラベルを斜体で描画するかどうかを指定します。利用可能な値は次の通りです(大文字と小文字は区別されません):

  • TRUE

  • FALSE

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTITALIC=TRUE
../../../_images/wms_getlegendgraphic_itemfontitalic.png

図 3.19 ITEMFONTITALIC=TRUE の凡例

ITEMFONTCOLOR

このパラメータは、アイテムラベルの色を指定します。色はリテラル(red, green, ...)または16進数表記(0xFF0000, 0x00FF00, ...)で指定することができます。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphic
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTCOLOR=0x5f9930
../../../_images/wms_getlegendgraphic_itemfontcolor.png

図 3.20 ITEMFONTCOLOR=0x5f9930 の凡例

ADDLAYERGROUPS

このパラメータは、JSON出力に凡例エントリ内のレイヤグループ(およびサブグループ)の名称も表示するかどうかを指定します。 可能な値は次のとおりです:

  • TRUE: グループラベルを表示します

  • FALSE (デフォルト): グループラベルの非表示

../../../_images/wms_getlegendgraphic_addlayergroups.png

図 3.21 レイヤグループラベル表示のない凡例(左)とある凡例(右)

グループ名を示すJSON出力は次のようになります:

{ "nodes":
  [{ "nodes":
     [{ "icon":"iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAUklEQVQ4jWNgGAXDHzASUqCsrPwfmX/37l28evBKKisr/0+a7IMiNi93C15DcUpgM4wYQ5nwuZAcMIQNvHv3LuO83C0kG0hysoFZRrJNo2AYAQC87BpkGQj1fwAAAABJRU5ErkJggg==",
        "title":"layer_a", "type":"layer"
     },
     { "nodes":
       [{ "icon":"iVBORw0KGgoAAAANSUhEUgAAABMAAAAUCAYAAABvVQZ0AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAHUlEQVQ4jWNgGAWjYCQDxh887r8G2hGjYBQMGAAA1x0CR0FzIkYAAAAASUVORK5CYII=",
          "title":"layer_b", "type":"layer"
        },
        { "icon":"iVBORw0KGgoAAAANSUhEUgAAABMAAAAUCAYAAABvVQZ0AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAHUlEQVQ4jWNgGAWjYCQDxtmzZ/8aaEeMglEwYAAAaIoCzTtn5XoAAAAASUVORK5CYII=",
          "title":"layer_c", "type":"layer"
       }],
       "title":"lines", "type":"group"
     },
     { "icon":"iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAKklEQVQ4jWNUVlX/z0AlwMLAwMDAnXmQKoYxUcWUUcNGDRs1bNSwYWYYACXDAsvQaTuVAAAAAElFTkSuQmCC",
       "title":"layer_d", "type":"layer"
     }],
     "title":"top-level-group", "type":"group"
  }],
  "title":""
}

3.2.5. GetStyle(s)

OGC WMS 1.1.1 仕様に準拠した GetStyle (または GetStyles) リクエストの標準パラメータ:

パラメータ

必須

説明

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称(GetStyle 又は GetStyles

LAYERS

Yes

クエリするレイヤ

GetStyle リクエストは、以下のベンダーパラメータもサポートしています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetStyles
&LAYERS=mylayer1,mylayer2

3.2.6. DescribeLayer

OGC WMS 1.1.1 及び 1.3.0 仕様に従った DescribeLayer リクエストの標準パラメータ:

パラメータ

必須

説明

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (DescribeLayer)

LAYERS

Yes

説明するレイヤ

SLD_VERSION

Yes

SLDのバージョン

DescribeLayer リクエストは次のベンダーパラメータもサポートしています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=DescribeLayer
&SLD_VERSION=1.1.0
&LAYERS=mylayer1

XML文書は次のようになります:

<DescribeLayerResponse xmlns="http://www.opengis.net/sld" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ows="http://www.opengis.net/ows" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:se="http://www.opengis.net/se" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/DescribeLayer.xsd">
    <Version>1.1.0</Version>
    <LayerDescription>
        <owsType>wfs</owsType>
        <se:OnlineResource xlink:href="http://localhost/qgisserver" xlink:type="simple"/>
        <TypeName>
            <se:FeatureTypeName>my_vector_layer</se:FeatureTypeName>
        </TypeName>
    </LayerDescription>
    <LayerDescription>
        <owsType>wcs</owsType>
        <se:OnlineResource xlink:href="http://localhost/qgisserver" xlink:type="simple"/>
        <TypeName>
            <se:FeatureTypeName>my_raster_layer</se:FeatureTypeName>
        </TypeName>
    </LayerDescription>
</DescribeLayerResponse>

SLD_VERSION

このパラメータでは、SLDのバージョンを指定することができます。値 `11.0` のみが利用できます。

3.2.7. GetPrint

QGISサーバには、PDFまたはピクセル形式のプリントレイアウト出力を作成する機能があります。公表されたプロジェクトでのプリントレイアウトがテンプレートとして使用されます。GETPRINT要求では、クライアントは含まれているレイアウト地図とラベルのパラメータを指定する可能性があります。

GetPrint リクエストは、 redliningexternal WMS layers のほか、次のパラメータをサポートします:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetPrint)

VERSION

No

サービスのバージョン

LAYERS

No

表示するレイヤ

TEMPLATE

Yes

使用するレイアウトのテンプレート

SRS / CRS

Yes

座標参照系

FORMAT

No

出力形式

FORMAT_OPTIONS

No

指定されたファイル形式のオプション

FORMAT=application/pdf の場合のみ

ATLAS_PK

No

地図帳機能

STYLES

No

レイヤのスタイル

TRANSPARENT

No

透明な背景

OPACITIES

No

レイヤまたはグループの不透明度

SELECTION

No

地物を強調します

mapX:EXTENT

No

map X の範囲

mapX:LAYERS

No

map X のレイヤ

mapX:STYLES

No

map X のレイヤのスタイル

mapX:SCALE

No

map X のレイヤの縮尺

mapX:ROTATION

No

map X の角度

mapX:GRID_INTERVAL_X

No

map X のx軸のグリッド間隔

mapX:GRID_INTERVAL_Y

No

map X のy軸のグリッド間隔

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetPrint
&MAP=/home/qgis/projects/world.qgs
&CRS=EPSG:4326
&FORMAT=png
&TEMPLATE=Layout%201
&map0:EXTENT=-180,-90,180,90
&map0:LAYERS=mylayer1,mylayer2,mylayer3
&map0:OPACITIES=125,200,125
&map0:ROTATION=45

レイアウトテンプレートには複数のマップが含まれている可能性があることに注意してください。このとき、特定のマップを設定したい場合は、 mapX: パラメータを使う必要があります。ここで、 XGetProjectSettings リクエストのおかげで取得できる正の数です。

例:

<WMS_Capabilities>
...
<ComposerTemplates xsi:type="wms:_ExtendedCapabilities">
<ComposerTemplate width="297" height="210" name="Druckzusammenstellung 1">
<ComposerMap width="171" height="133" name="map0"/>
<ComposerMap width="49" height="46" name="map1"/></ComposerTemplate>
</ComposerTemplates>
...
</WMS_Capabilities>

TEMPLATE

このパラメータを使って、印刷に使うレイアウトテンプレートの名前を指定することができます。

FORMAT

このパラメータは、マップ画像の形式を指定します。使用可能な値は以下の通りです:

  • png (デフォルト値)

  • image/png

  • jpg

  • jpeg

  • image/jpeg

  • svg

  • image/svg

  • image/svg+xml

  • pdf

  • application/pdf

もし FORMAT パラメータがこれらの値のいずれとも異なる場合は、例外が返されます。

FORMAT_OPTIONS

このパラメータは、選択された形式のオプションを指定するために使用できます。GetPrintリクエストの FORMAT=application/pdf の場合のみです。セミコロンで区切られた、キー:値 ペアのリストを受け取ります:

  • RASTERIZE_WHOLE_IMAGE: PDF全体をひとつの画像としてエクスポートするかどうか。デフォルト: false。

  • FORCE_VECTOR_OUTPUT: pdfをベクタとしてエクスポートするかどうか。デフォルト: false。

  • APPEND_GEOREFERENCE: ジオリファレンス情報をpdfに追加するかどうか。デフォルト: true。

  • EXPORT_METADATA: メタデータをpdfに追加するかどうか。デフォルト: true。

  • TEXT_RENDER_FORMAT: pdfエクスポート時のテキストのレンダリング形式を設定します。AlwaysOutlines (デフォルト)または AlwaysText です。

  • SIMPLIFY_GEOMETRY: 地物のジオメトリを簡略化するかどうか。デフォルト: true。

  • WRITE_GEO_PDF: 地図情報PDFをエクスポートするかどうか。デフォルト: false。

  • USE_ISO_32000_EXTENSION_FORMAT_GEOREFERENCING: Iso32000 ジオリファレンスを使用するかどうか。デフォルト:false。

  • USE_OGC_BEST_PRACTICE_FORMAT_GEOREFERENCING: OGCベストプラクティスのジオリファレンスを使用するかどうか。デフォルト:false。

  • EXPORT_THEMES: 地図情報PDFのエクスポートで使用する地図テーマのコンマ区切りリスト

  • PREDEFINED_MAP_SCALES: 地図をレンダリングする地図の縮尺のカンマ区切りのリスト

  • LOSSLESS_IMAGE_COMPRESSION: pdfに埋め込まれた画像を、可逆アルゴリズムで圧縮しなければならないかどうか。デフォルト: false。

  • DISABLE_TILED_RASTER_RENDERING: ラスタをpdfで非タイル化するかどうか。デフォルト:false。

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetPrint
&MAP=/home/qgis/projects/world.qgs
&CRS=EPSG:4326
&FORMAT=pdf
&TEMPLATE=Layout%201
&FORMAT_OPTIONS=FORCE_VECTOR_OUTPUT:TRUE;TEXT_RENDER_FORMAT:AlwaysOutlines;PREDEFINED_MAP_SCALES:250

ATLAS_PK

このパラメータは、印刷したい地物を指定することで、地図帳レンダリングを有効化することができます。すべての地物を含む地図帳を取得するには、* シンボルを使用することができます(プロジェクト設定で許されている地物の最大数に従います)。

FORMATpdf の場合、地物ページを組み合わせた1つのPDFドキュメントが返されます。それ以外の形式の場合は、1つのページが返されます。

mapX:EXTENT

このパラメータは、レイアウトマップアイテムの範囲をxmin,ymin,xmax,ymaxで指定します。

mapX:ROTATION

このパラメータは、マップの角度を度で指定します。

mapX:GRID_INTERVAL_X

このパラメータは、X 方向のグリッド線密度を指定します。

mapX:GRID_INTERVAL_Y

このパラメータは、Y 方向のグリッド線密度を指定します。

mapX:SCALE

このパラメータは、レイアウト地図アイテムの地図縮尺を指定します。これは、クライアントとサーバーで縮尺分母を計算するアルゴリズムが異なる場合でもレイヤとラベルの縮尺に基づく可視性を確保するのに役立ちます。

mapX:LAYERS

このパラメータは、レイアウトマップアイテムのレイヤを指定します。このパラメータの詳細については GetMap Layers を参照してください。

mapX:STYLES

このパラメータは、特定のレイアウトマップアイテムに定義されているレイヤのスタイルを指定します。このパラメータの詳細については GetMap Styles を参照してください。

3.2.8. GetProjectSettings

このリクエストタイプは GetCapabilities と同様に動作しますが、よりQGIS Serverに特化しており、 GetCapabilities の出力では得られない追加情報をクライアントが読み取ることができるようになっています:

  • レイヤーの初期可視性

  • ベクターの属性とその編集タイプに関する情報

  • レイヤーの順序と描画順序に関する情報

  • WFSに掲載されたレイヤのリスト

  • レイヤツリー内のグループが mutually exclusive であるかどうかを表示します

GetProjectSettings リクエストは次のパラメータをサポートしています:

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetProjectSettings)

3.2.9. GetSchemaExtension

GetSchemaExtension リクエストは、QGIS Serverが実装するようなWMSサービスのオプションの拡張機能および操作を取得することができます。

パラメータ

必須

説明

MAP

Yes

QGISプロジェクトファイル

SERVICE

Yes

サービスの名称 (WMS)

REQUEST

Yes

リクエストの名称 (GetSchemaExtension)

URLの例:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetSchemaExtension

XML文書は次のようになります:

<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wms="http://www.opengis.net/wms" xmlns:qgs="http://www.qgis.org/wms" targetNamespace="http://www.qgis.org/wms" elementFormDefault="qualified" version="1.0.0">
    <import namespace="http://www.opengis.net/wms" schemaLocation="http://schemas.opengis.net/wms/1.3.0/capabilities_1_3_0.xsd"/>
    <element name="GetPrint" type="wms:OperationType" substitutionGroup="wms:_ExtendedOperation"/>
    <element name="GetStyles" type="wms:OperationType" substitutionGroup="wms:_ExtendedOperation"/>
</schema>

3.2.10. 外部WMSレイヤ

QGIS Serverでは、WMS GetMap およびWMS GetPrint リクエストに外部のWMSサーバーからのレイヤを含めることができます。これは、ウェブクライアントがウェブマップで外部の背景レイヤを使用する場合に特に便利です。パフォーマンス上の理由から、このようなレイヤはWebクライアントから直接リクエストされるべきです(QGISサーバーを経由してカスケードせずに)。しかし、印刷では、これらのレイヤは、印刷されたマップに表示されるように、QGISサーバー経由でカスケードされるべきです。

外部レイヤは、LAYERSパラメータにEXTERNAL_WMS: <layername>として追加することができます。外部WMSレイヤのパラメータ(url, format, dpiMode, crs, layers, stylesなど)は,後でサービスパラメータ <layername>: <parameter>として与えることができます。GetMap リクエストでは、次のようになります:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&LAYERS=EXTERNAL_WMS:basemap,layer1,layer2
&OPACITIES=100,200,255
&STYLES=,,
&basemap:url=http://externalserver.com/wms.fcgi
&basemap:format=image/jpeg
&basemap:dpiMode=7
&basemap:crs=EPSG:2056
&basemap:layers=orthofoto
&basemap:styles=default

同様に、外部レイヤーは GetPrint リクエストで使用することができます:

http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetPrint
&TEMPLATE=A4
&map0:layers=EXTERNAL_WMS:basemap,layer1,layer2
&map0:EXTENT=<minx,miny,maxx,maxy>
&OPACITIES=100,200,255
&basemap:url=http://externalserver.com/wms.fcgi
&basemap:format=image/jpeg
&basemap:dpiMode=7
&basemap:crs=EPSG:2056
&basemap:layers=orthofoto
&basemap:styles=default

3.2.11. 赤線引き

この機能は GetMapGetPrint のリクエストで使用することができます。

赤線引き機能は、サーバーが返す標準的な画像(マップ)の上に重ねるジオメトリとラベルをリクエストに渡すために使用されます。ユーザーはこれにより、標準的なマップにはない領域や場所などを強調したり、コメント(ラベル)を追加したりすることができます。

GetMap リクエストは、以下の形式です:

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetMap
&HIGHLIGHT_GEOM=POLYGON((590000 5647000, 590000 6110620, 2500000 6110620, 2500000 5647000, 590000 5647000))
&HIGHLIGHT_SYMBOL=<StyledLayerDescriptor><UserStyle><Name>Highlight</Name><FeatureTypeStyle><Rule><Name>Symbol</Name><LineSymbolizer><Stroke><SvgParameter name="stroke">%23ea1173</SvgParameter><SvgParameter name="stroke-opacity">1</SvgParameter><SvgParameter name="stroke-width">1.6</SvgParameter></Stroke></LineSymbolizer></Rule></FeatureTypeStyle></UserStyle></StyledLayerDescriptor>
&HIGHLIGHT_LABELSTRING=Write label here
&HIGHLIGHT_LABELSIZE=16
&HIGHLIGHT_LABELCOLOR=%23000000
&HIGHLIGHT_LABELBUFFERCOLOR=%23FFFFFF
&HIGHLIGHT_LABELBUFFERSIZE=1.5

GetPrint <wms_getprint>`と同等の形式です(どのマップに赤線が引かれているかを知るために ``mapX:` パラメータが追加されていることに注意してください):

http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetPrint
&map0:HIGHLIGHT_GEOM=POLYGON((590000 5647000, 590000 6110620, 2500000 6110620, 2500000 5647000, 590000 5647000))
&map0:HIGHLIGHT_SYMBOL=<StyledLayerDescriptor><UserStyle><Name>Highlight</Name><FeatureTypeStyle><Rule><Name>Symbol</Name><LineSymbolizer><Stroke><SvgParameter name="stroke">%23ea1173</SvgParameter><SvgParameter name="stroke-opacity">1</SvgParameter><SvgParameter name="stroke-width">1.6</SvgParameter></Stroke></LineSymbolizer></Rule></FeatureTypeStyle></UserStyle></StyledLayerDescriptor>
&map0:HIGHLIGHT_LABELSTRING=Write label here
&map0:HIGHLIGHT_LABELSIZE=16
&map0:HIGHLIGHT_LABELCOLOR=%23000000
&map0:HIGHLIGHT_LABELBUFFERCOLOR=%23FFFFFF
&map0:HIGHLIGHT_LABELBUFFERSIZE=1.5

上記のリクエストによって出力された画像は次のとおりです、ポリゴンとラベルが通常のマップの上に描かれています:

../../../_images/server_redlining.png

図 3.22 赤線引きパラメータを含むGetMapリクエストに対するサーバーの応答

このリクエストには、赤線引き機能を制御するためのいくつかのパラメータがあることがわかります。その全リストは以下の通りです:

  • highlight_geom: POINT、MULTILINESTRING、POLYGONなどを追加することができます。マルチパートジオメトリをサポートしています。以下はその例です: HIGHLIGHT_GEOM=MULTILINESTRING((0 0, 0 1, 1 1)). 座標はGetMap/GetPrintリクエストのCRSにあるはずです。

  • HIGHLIGHT_LABELBUFFERCOLOR: このパラメーターは、ラベルバッファの色を制御します。

  • HIGHLIGHT_LABELBUFFERSIZE: このパラメーターは、ラベルバッファのサイズを制御します。

  • HIGHLIGHT_LABELCOLOR: このパラメーターは、ラベルの色を制御します。

  • HIGHLIGHT_LABEL_DISTANCE: 地物(例 point又はライン)とラベルの間の距離をmmで制御します

  • highlight_labelfont: このパラメータは、ラベルのフォントを制御します(例:Arial)。

  • HIGHLIGHT_LABEL_HORIZONTAL_ALIGNMENT: ラベルを水平方向に指定された整列(例:'left', 'center', 'right' )で配置します。

  • HIGHLIGHT_LABEL_ROTATION: ラベルの角度を度で制御します

  • HIGHLIGHT_LABELSIZE: このパラメーターは、ラベルのサイズを制御します。

  • HIGHLIGHT_LABELSTRING :ラベルのテキストをこのパラメーターに渡すことができます。

  • HIGHLIGHT_LABEL_VERTICAL_ALIGNMENT: 指定された整列(例:'top', 'half', 'bottom')でラベルをポイント上に垂直に配置します。

  • HIGHLIGHT_SYMBOL :ジオメトリの輪郭をどのように表示するかを制御し、ストロークの幅、色、不透明度を変更できます。