Class: Data
GeoJSON の地物をまとめて保持し、地図上に描画するレイヤーです。
一般的な地図 SDK の Data レイヤーに相当します。個別のクラス (Marker / Polyline / Polygon)と異なり、 ジオメトリの型が混在した FeatureCollection をそのまま扱えます。
通常は Map.data 経由で取得します。
Example
map.data.addGeoJson(featureCollection);
map.data.setStyle((feature) => ({
fillColor: feature.getProperty("category") === "park" ? "#00ff00" : "#888888",
strokeWeight: 2,
}));
Extends
Constructors
Constructor
new Data(
options?):Data
データレイヤーを作成します。
Parameters
options?
描画先の地図と初期スタイルです。
Returns
Data
Overrides
Methods
add()
add(
feature):DataFeature
地物を 1 件追加します。
Parameters
feature
DataFeatureOptions | DataFeature
DataFeature または DataFeatureOptions です。
Returns
追加された DataFeature を返します。
addGeoJson()
addGeoJson(
geojson):DataFeature[]
GeoJSON を読み込んで地物を追加します。
Parameters
geojson
Feature<Geometry, GeoJsonProperties> | FeatureCollection<Geometry, GeoJsonProperties>
FeatureCollection または Feature です。
Returns
追加された DataFeature の配列を返します。
Throws
FeatureCollection でも Feature でもない場合に TypeError を投げます。
addListener()
addListener(
eventName,handler):MapsEventListener
指定した名前のイベントが発火するたびに実行されるハンドラを登録します。
Parameters
eventName
string
監視するイベント。"click" や "{property}_changed"
イベントなどです。
handler
イベントが発火するたびに、そのイベントの引数とともに呼び出されます。
Returns
MapsEventListener ハンドル。登録を解除するには remove() を
呼び出します。
Inherited from
bindTo()
bindTo(
key,target,targetKey,noNotify?):void
このオブジェクトの key プロパティを、別のオブジェクトの targetKey
プロパティにバインドします。これにより、key を読み取ると常にターゲットの値が
反映され、ターゲットが変化するたびに {key}_changed イベントが発火します。
Parameters
key
string
このオブジェクト上のプロパティ名。
target
バインド先のオブジェクト。
targetKey
string
ターゲット上のプロパティ名。
noNotify?
boolean = false
true の場合、初回およびそれ以降の {key}_changed
通知を抑制します。
Returns
void
Inherited from
forEach()
forEach(
callback):void
保持しているすべての地物を走査します。
Parameters
callback
(feature) => void
地物を受け取るコールバックです。
Returns
void
get()
get(
key):any
名前付きプロパティの値を返します。一度も設定されていない場合は undefined
を返します。
Parameters
key
string
プロパティ名。
Returns
any
Inherited from
getFeatureById()
getFeatureById(
id):DataFeature|undefined
識別子から地物を取得します。
Parameters
id
string | number
地物の識別子です。
Returns
DataFeature | undefined
見つからない場合は undefined を返します。
getMap()
getMap():
Map|null
このデータレイヤーが追加されている地図を返します。取り外された状態の場合は null を返します。
Returns
Map | null
getStyle()
getStyle():
DataStyleOptions|DataStyleFunction
現在設定されているスタイルを返します。
Returns
DataStyleOptions | DataStyleFunction
notify()
notify(
key):void
プロパティの {key}_changed イベントを手動で発火し、そのすべてのリスナーに
通知します。値が set で再代入されるのではなく、その場で
変更された場合に役立ちます。
Parameters
key
string
プロパティ名。
Returns
void
Inherited from
remove()
remove(
feature):void
地物を削除します。保持していない地物を渡した場合は何もしません。
Parameters
feature
削除する地物です。
Returns
void
set()
set(
key,value):void
名前付きプロパティを設定し、その {key}_changed イベントを発火します。
bindTo でバインドされた値を置き換える場合は、
先にバインディングを削除します。
Parameters
key
string
プロパティ名。
value
any
新しい値。
Returns
void
Inherited from
setMap()
setMap(
map):void
データレイヤーを地図に追加します。null を渡すと、現在の地図から取り外します。
Parameters
map
Map | null
描画先の地図、または取り外す場合は null です。
Returns
void
setStyle()
setStyle(
style):void
描画スタイルを設定します。
Parameters
style
DataStyleOptions | DataStyleFunction
静的なスタイル、または地物ごとにスタイルを返す関数です。
Returns
void
setValues()
setValues(
values):void
複数の名前付きプロパティを一度に設定し、それぞれについて {key}_changed
イベントを発火します。
Parameters
values
Record<string, any>
キーがプロパティ名であるオブジェクト。
Returns
void
Inherited from
toGeoJson()
toGeoJson(
callback):void
現在保持している地物を GeoJSON の FeatureCollection として取り出します。 スタイル用の内部プロパティは含まれません。
Parameters
callback
(geojson) => void
FeatureCollection を受け取るコールバックです。
Returns
void
unbind()
unbind(
key):void
key のバインディングを削除し、最後に同期された値を通常のプロパティとして
保持します。
Parameters
key
string
解放するバインド済みのプロパティ名。
Returns
void
Inherited from
unbindAll()
unbindAll():
void
このオブジェクト上のすべてのバインディングを削除します。
Returns
void