地 理 院 地 図 Vector（ 仮 称 ） 地 図 デ ザ イ ン フ ァ イ ル 仕 様2020 年 7 月 1 日時点

1. 記 述 形 式
最上位の要素は下記の項目で構成される（その他の要素が存在する場合は無視される）。
title

このスタイルの名前を設定する。

group

グループの一覧を定義する。定義したグループの ID を各項目のitem 要素の group 内で指定する。最初に記述したグループから順に描画され、最後のグループが一番上に表示される。
directory, item, layer, draw の各要素の入れ子データを記述する（各list項目については後述）。

group についてグループを定義する。下記の項目の配列で構成される。
id

文字列必須。group 内で一意の ID を設定する。

title

文字列

必須。グループ名を設定する。

editZIndex

Boolean

管理用。基本的に true とする。

zoom

配列

このグループが表示されるズームレベルを、整数の配列で指定する。

additional-配列

このグループを mapbox のレイヤとして地図に追加する時に、追加される filter である。（現状は立体交差を表現するためのみにfilter利用している。）"additional-filter": ["==","lvOrder",3]filter

配列

特定のレイヤのみ表示するために利用する filter である。
（現状はアウトライン（道路のフチの線など）を表示するためのみに利用している。）"filter": [["==","line-role",1

"outline"]]directory 要素
フォルダを構成するための要素。下記の項目で構成される。
title

文字列

フォルダ名を設定する。

type

文字列“directory” と指定する。

list配列directory か item 要素で構成する。

filter配列

対象とするデータを特定するための、情報を記述する。
詳細は Mapbox Style Specification の filter を参照。

item 要素地物の種類を定義するための要素。下記の項目で構成される。
title

文字列

地物の種類名を設定する。

type

文字列

“item” と指定する。

group

配列

所属するグループの ID を配列で指定する。

list

配列

layer 要素で構成する。

ｚIndex

数値

所属するグループ内での表示順序を指定する。
値が大きいほど上に表示される。

filter

配列

対象のデータを特定するための、情報を記述する。
詳細は Mapbox Style Specification の filter を参照。
省略した場合、所属する directory 要素の filter が適用される。

layer 要素子要素である draw 要素で記述するスタイルを適用する source-layer や最小・最大ズームレベル等を定義するための要素。下記の項目で構成される。
title

文字列

スタイルの名称（通常、省略している）。

type

文字列

“layer” と指定する。

visibleBoolean

表示=true, 非表示=false と指定する。
省略した場合、true と判断されるので、基本的に省略する。

minzoom

数値表示される最小ズームレベル。

maxzoom

数値表示される最大ズームレベル。
maxzoom+1 未満のズームレベルで表示される。

2source-layer

文字列

ベクトルタイルの source-layer を指定。
子要素に指定がある場合は無視される。

list配列draw 要素で構成された配列。

filter

配列

対象のデータを特定するための、情報を記述する。
詳細は Mapbox Style Specification の filter を参照。
省略した場合、所属する item 要素の filter が適用される。

draw 要素
スタイルを記述するための要素。下記の項目で構成される。
type

文字列

“fill”（面データの描画）, ”line”（線データの描画）, ”symbol”（点データの描画）のいずれかを指定する。

visibleBoolean

表示=true, 非表示=false を指定する。
省略した場合、所属する layer 要素の visible が適用される（通常、省略している）。

source文字列

ベクトルタイルの source-layer を指定する。
省略した場合、所属する layer 要素の source-layer が適用され-layerる（通常、省略している）。
info

連想配列

type="symbol"のテキスト表示に関する情報を指定する。
text-vertical-field:縦書きフラグのプロパティ名を指定
text-rotate-field:回転情報のプロパティ名を指定
text-anchor-field:テキストアンカー位置のプロパティ名を指定
text-field:テキストのプロパティ名を指定
text-field-round:テキストの小数点以下表示桁数を指定

draw

連想配列

Mapbox Style Specification における layout,paint の値を設定する。
・type=”fill” で設定可能な項目
fill-visible

Boolean

塗りつぶしを表示するか否か

outline-Boolean

枠線を表示するか否か

fill-color

文字列

塗りつぶしの色

fill-style

文字列

塗りつぶしのスタイル

visiblefill=通常
ltrb=左上から右下の斜線
rtlb=右上から左下の斜線

3cross=網掛け
dot=点描fill-hatch-

文字列

ハッチの色

outline-coloｒ

文字列

枠線の色

outline-width

数値

枠線の太さ

outline-配列

枠線を破線にする場合、数値のbgcolor

dasharray

配列で間隔を指定

・type=”line” で設定可能な項目
line-color

文字列

線の色

line-width

数値

線の太さ

line-visible

Boolean

線を表示するか否か

line-cap

文字列

線の終端の形状
butt=終端なし
round=半円
square=線の幅の半分

line-join

文字列

線の接続部の形状
bevel=はみ出しなし
round=交差する地点が中心で半径が線幅の半分となる円
miter=外側の縁を延長してできる三角形

line-role

文字列

線のフチ（アウトライン）として線の本体より下に表示したい場合
は、”outline”を指定

line-配列

dasharrayline-offset

枠線を破線にする場合、数値の配列で間隔を指定

数値

線の描画位置をデータの位置からずらす場合、オフセット値を指定

type=”symbol” で設定可能な項目
icon-visible

Boolean

アイコンを表示するか否か

icon-size

数値

アイコンの倍率

icon-group

文字列

アイコンのグループを指定

4

std=標準地図
pale=淡色地図
icon-image

文字列

アイコンのスプライト ID

icon-

文字列

アイコンのアンカー位置

文字列

地図を画面垂直方向に傾けた時のanchor
icon-pitchalignment
icon-

アイコンの表示方法
文字列

rotation-

地図を傾けた時のアイコンの表示方
法

alignment
text-visible

Boolean

テキストを表示するか否か

text-color

文字列

テキストの色text-size

数値

テキストのサイズ

text-halo-

文字列

テキストの縁取りの色

数値

テキストの縁取りのサイズ

数値

テキストのアンカー（指示点）からのcolor
text-halowidth
text-offset

オフセット値text-

文字列

テキストのアンカー（指示点）の位置

文字列

テキストの縦書きの設定

anchortext-

auto=データに従う

verticalhorz=横書き固定
vert=縦書き固定
text-pitch-

文字列alignment
text-

地図を画面垂直方向に傾けた時のテキストの表示方法

文字列

rotation-

地図を傾けた時のテキストの表示方
法

alignment

2. 地 図 上 の 重 ね 合 わ せ 順 序 に つ い てgroup の記述順を入れ替えることで重ね合わせの順序を変えられる。記述した順に下から描画される。

5

"group": [{"id": "landforma","title": "地形","editZIndex": true},{"id": "structurea","title": "構造物","editZIndex": true},{"id": "line","title": "線",
"editZIndex": true},・・・
同一グループ内の順序は、item 要素のデータの zIndex の値による zIndex が小さい値の地物から順に、下から描画される。
{"title": "5.5m 以上 13m 未満",
"type": "directory","list": [{"title": "トンネル","filter": [・・・],"type": "item","group": ["road-outline","road","road-railway-00","road-railway-01","road-railway-02",

6

"road-railway-03","road-railway-04"],"zIndex": 63, // 数値で指定
・・・]
・・・

3. 地 物 リ ス ト の 順 序 に つ い て地物の記述順を入れ替えると、地理院地図 Vector の左下の地物リストの順序が入れ替わる。
※ 地図上の描画順序は変更されない。
例：湿地と万年雪の順序を入れ替える
変更前{"title": "地形","type": "directory","list": [{"title": "湿地","filter": [・・・],"type": "item","group": ["landforma"],"list": [・・・]},{"title": "万年雪",

7

"filter": [・・・"type": "item","group": ["landforma"],"list": [・・・]},
変更後{"title": "地形","type": "directory","list": [{"title": "万年雪","filter": [・・・"type": "item","group": ["landforma"],"list": [・・・]},{"title": "湿地","filter": [・・・],"type": "item","group": ["landforma"

8],"list": [・・・]},
階層トップの順序は地理院地図 Vector の以下のプログラムファイルで設定されている。
data/config.js 内の GSIBV.CONFIG.TOPORDER// トップ階層の順序
GSIBV.CONFIG.TOPORDER = ["注記","記号","境界","道路","鉄道","航路","建物","交通構造物","構造物","海岸線","河川","湖池","水域","標高","等高線等深線","地形"];
以上

9