GSJMap - API

名前空間と定数 | 汎用オブジェクト | 汎用関数
Map | Layer
Marker | Icon | Popup | Polyline | Style | Controller | Geocoder | Promise

 GSJMapでは,いわゆるクラスを使用しません.必要なオブジェクトは全て関数の結果として得られます.特に,オブジェクト生成専用の関数をファクトリー関数と呼んでいます.このため,以下では例えば「Map」のように総称名として記述しますが,そのようなクラス名(やオブジェクト名)が実装されているわけではありません.
 なお,引数に型名が指定されている場合でも,常にファクトリー関数から生成する必要はありません.オブジェクトリテラル表現で必要なプロパティを記述すれば,通常は内部で適切に処理されます.

※GSJMapは現在開発中です.このページに記述されている機能のいくつかは実装されていません.特にCesiumエンジンはまだほとんどの機能が未実装です.

・データ型の表現について

 このページでは,データ型を表すために以下の表現を使用します.

Number, String, Boolean, Object, Function, DOMElement

 また,配列は[ ]で中に型名を入れて表現し,同じ型を列記できる場合は「, ...」を追記します.複数の型を利用できる場合は | を挟んで列挙します.

名前空間と定数

GSJ

 名前空間を定義するためのオブジェクトで,外部に直接提供される唯一のオブジェクトです.このライブラリのすべての定数,オブジェクト,関数は,このオブジェクトの直接ないし間接のプロパティとして定義されます.

定数

定数名 内容
GSJ.DEFAULT_BASE (地理院地図標準) デフォルトの背景地図 
GSJ.DEFAULT_ENGINE 'leaflet' デフォルトのマップエンジン名
GSJ.EARTH_R  6378137 地球の長半径(WGS84, 単位m)
GSJ.ZOOM_LIMIT 24 このライブラリで利用できるズームレベルの限界値

汎用オブジェクト

Coord

 タイル座標(X, Y)及びズームレベルを表します.ズームレベルは省略されることがあります.

プロパティ 説明
x Number X座標
y Number Y座標
z Numbet  ズームレベル 

LatLng

 地理的な位置を表します.

プロパティ 説明
lat Number 緯度(360度法)
lng Number 経度(360度法)

 このオブジェクトの生成用関数 GSJ.latLng() が利用できます.

Point

 平面上のX, Y座標を表します.

プロパティ 説明
x Number X座標
y Number Y座標

 このオブジェクトの生成用関数 GSJ.Point() が利用できます.

Bounds

 地理的な矩形範囲を表します.

プロパティ 説明
sw LatLng 南西端
ne LatLng 北西端

 このオブジェクトの生成用関数 GSJ.bounds() が利用できます.

Event

 イベントを表します.

プロパティ 説明
domEvent DOMEvent オリジナルのDOMイベントオブジェクト. 省略されることがあります.
original Object 地図ライブラリ固有のイベントオブジェクト.省略されることがあります.
latLng LatLng イベントが発生した地理上の位置.省略されることがあります.
target Object イベントが発生したオブジェクト
type String イベントタイプ

汎用関数

汎用オブジェクトファクトリー関数

関数 引数 戻り値 説明
GSJ.latLng( latLng ) [ Number, Number ]
| String
| LatLng
LatLng
 | null
緯度経度を表すLatLngオブジェクトを生成します 
引数が文字列型の場合はカンマ区切りの文字列と解釈されます
生成に失敗するとnullを返します
GSJ.latLng( lat,
 lng )
Number,
Number
GSJ.point( point )  [ Number, Number ]
| String
| Point
Point
| null 
平面上の座標を表すPointオブジェクトを生成します 
引数が文字列型の場合はカンマ区切りの文字列と解釈されます
生成に失敗するとnullを返します
GSJ.point( x,
 y )
Number,
Number
GSJ.bounds( bounds ) [ LatLng, LatLng ]
| [ [ Number, Number ], [ Number, Number ] ]
| Bounds
Bounds
| null 
経緯度で指定された矩形領域をあらわすBoundsオブジェクトを生成します
生成に失敗するとnullを返します  
GSJ.bounds( sw,
 ne )
LatLng | [ Number, Number ],
LatLng | [ Number, Number ]
GSJ.bounds( s,
 w,
 n,
 e )
Number,
Number,
Number,
Number 

地理座標変換

関数 引数 戻り値 説明
GSJ.latLngToPoint( latLng,
 zoom )
LatLng,
Number
Point 緯度経度とズームレベルを指定して,ピクセル座標を取得します.
ここでのピクセル座標とは,そのズームレベルにおいて256ピクセルのタイルを使用した場合の座標で,左上を原点,右及び下をX, Y座標の正としたものです.
GSJ.pointToLatLng( point,
zoom )
Point,
Number
LatLng ピクセル座標とズームレベルを指定して緯度経度に変換します.
ピクセル座標の定義はlatLngToPoint()関数と同じです.

ズームレベルとスケールの変換

関数 引数 戻り値 説明
GSJ.zoomToScale(  zoom,
 lat )
Number,
Number
Number ズームレベルをスケール(m/ピクセル)に変換します.
変換には緯度(360度法)も必要です
GSJ.scaleToZoom( scale,
 lat )
Number,
Number
Number スケール(m/ピクセル)をズームレベルに変換します.
変換には緯度(360度法)も必要です

標高

関数 引数 戻り値 説明
GSJ.getElevation( latLng,
 z,
 params)
LatLng,
Number,
Object,
Promise 指定した位置(latLng)とズームレベル(z)の標高を取得するプロミスを発行します.
paramsでは取得方法をパラメータオブジェクトで指定します.このオブジェクトのtypeプロパティに'm'を指定すると1m精度,'cm'を指定するとcm精度となります.
プロミス成功時の引数には標高値(m)が渡されます.

マップエンジン

関数 引数 戻り値 説明
GSJ.getEnginNames() なし [ String ]  使用できるマップエンジン名のリストを取得します

ファイルのロード

関数 引数 戻り値 説明
GSJ.loadCSV( url,
 sep ) 
String,
String
Promise CSVファイルをロードするプロミスを生成します.
プロミス成功時の引数には2重配列としてデータが渡されます.
プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます.
sepは項目の区切り文字を指定します.省略すると','となります.
GSJ.loadImage( url,
 params )
String,
Object,
Promise  画像ファイルをロードするプロミスを生成します.paramsを設定すると,内部生成するImageオブジェクトに設定されます.プロミス成功時の引数にはImageオブジェクトが渡されます.
プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます.
GSJ.loadImagePixel( url,
 i,
 j ) 
String,
Number,
Number
Promise  画像ファイルの位置(i,j)のデータロードするプロミスを生成します.
プロミス成功時の引数にはピクセルデータ(R,G,B,Aの4成分の配列データ)が渡されます.
プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます.
GSJ.loadJSON( url )  String  Promise JSONファイルをロードするプロミスを生成します.
プロミス成功時の引数にはJSONオブジェクトが渡されます.
プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます.
GSJ.loadText( url )  String Promise テキストファイルをロードするプロミスを生成します.
プロミス成功時の引数にはテキストが渡されます.
プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます.
GSJ.loadXML( url ) String Promise XMLファイルをロードするプロミスを生成します.
プロミス成功時の引数にはxmlオブジェクトが渡されます.
プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます.

Map

 Mapオブジェクトは地図全体を示すオブジェクトで,GSJMapの最も基本となるオブジェクトです,

・生成関数

関数 引数 戻り値  説明
GSJ.map( params ) String | Object Map Mapオブジェクトを作成します.
引数には地図を描画するDOMを指定するid属性値またはパラメータオブジェクトを指定します.
省略すると<body>要素が描画要素となります.
GSJ.createMap( params ) String | Object Promise Mapオブジェクトを作成するプロミスを生成します.
引数はGSJ.map()とまったく同様です.
成功すると引数にMapオブジェクトが渡されます.
※非同期でMapオブジェクトを生成するエンジンの場合に使用するもので,Leaflet.jsやCesiumでは不要です.

 パラメータオブジェクトは以下のプロパティを持つことができます.

プロパティ デフォルト 説明
bases [ Layer | String, .. .] [ (地理院地図標準) ] 背景レイヤー(またはそれを識別するレイヤーid*)のリスト
center LatLng { lat: 0, lng: 0 } 地図の中央の地理的な位置
engine String  'leaflet'  マップエンジンを指定
'leaflet'(Leaflet.js),Cesium(Cesium)が指定できます.
maxZoom Number  GSJ.ZOOM_LIMIT ズームレベルの最大値 
minZoom Number ズームレベルの最小値
overlays [ Layer, ... ] [ ] オーバーレイレイヤーのリスト
owner String | DOMElement body要素 地図を描画するDOMElement
文字列の場合はid属性と解釈して要素を探します
zoom Number 0 ズームレベル
*レイヤーidは,レイヤーを指定するための文字列です.デフォルトで以下のレイヤー情報とレイヤーidが予約されており,レイヤーオブジェクトを直接指定する代わりに利用できます.
'CHIRIIN_STD' ... 地理院地図(標準)
'OPEN_STREET_MAP' ... Open Street Map
'GOOGLEMAPS_LOAD' ... Googleマップ(道路)

・プロパティ

プロパティ デフォルト 生成後の使用 説明
maxZoom Number  GSJ.ZOOM_LIMIT 読込のみ ズームレベルの最大値 
minZoom Number 読込のみ ズームレベルの最小値
promise Promise なし  読込のみ  非同期でMapオブジェクトが生成される場合に,GSJMapによりセットされます 

・メソッド

メソッド 引数の型 戻り値 説明
add( object ) Object  Object ポリライン,マーカー,ポップアップ,背景レイヤー,オーバーレイレイヤー,コントローラーを追加します.
このメソッドは,引数の内容に応じてそれぞれaddPolyline, addMarker, addPopup, addBase, addOverlay, addControllerメソッドを呼び出します.引数には,各メソッドに渡される引数をフィールドに持つオブジェクトを指定します.
addBase( layer ) Layer  Layer  背景レイヤーを追加
layerにはLayerオブジェクトを生成するためのオブジェクトリテラルを渡します.
addControler( controller ) String | Controller Controller  戻り値には追加されたコントローラが返されます.追加に失敗するとnullが返されます.
コントローラ名には'gamepad' または 'leap'が指定できます.Leafletエンジンではゲームパッドはデフォルトで使用できます.
addMarker( latLng,
 options )
LatLng | [ Number, Number ],
Object
Marker 指定した位置にマーカを追加
optionsのtitleプロパティにテキストを設定すると,ツールチップとして表示されます.
optionsのpopupプロパティにテキストを設定すると,ポップアップウィンドも表示されます.leafletエンジンの場合,html要素が使用できます.
optionsのiconプロパティでIconオブジェクト指定することによりアイコンを変更することができます.
optionsでは,生成するMarkerオブジェクトのdraggableプロパティを指定することができます.
addPolyline( latLngs,
 close,
 style )
[ LatLng, ... ],
Boolean,
Style
Polyline   ポリライン(ポリゴンを含む)を追加します
latLngsに位置の配列を指定します.
closeにfalseを指定するか省略するとポリラインを描き,trueを指定すると閉じてポリゴンを描きます).
styleにはStyleオブジェクトを指定し,color(ストロークカラー), opacityをなどが設定できます.
引数に,latLngs, close, styleフィールドを持つオブジェクトを与えることもできます.
戻り値には追加されたポリライノブジェクトを返します(ただし,引数にオブジェクトを与えた場合,それはコピーされますので,戻り値のオブジェクトとは一致しません).
addPolyline( Object ) Polyline
addPopup( latLng,
 content )
LatLng | [ Number, Number ],
String
Popup 指定した位置にポップアップウィンドウを追加
Popupオブジェクト(latLng, contentフィールドに値がセットされます)が返されます.
findBase( layer ) String | Layer Layer | [ Layer ] 
| null
背景レイヤーの検索
引数に文字列を指定した場合,idまたはtitleが一致する背景レイヤーを検索し,最初に見つかったものを返します.見つからなければnullを返します
引数にLayerオブジェクトを指定した場合,レイヤが含まれればそのレイヤー自身を返します.
引数を省略すると全ての背景レイヤーのリストを返します.
findOverlay( layer ) String | Layer Layer | [ Layer ] | null オーバーレイレイヤーの検索
引数に文字列を指定した場合,idまたはtitleが一致するオーバーレイレイヤーを検索し,最初に見つかったものを返します.見つからなければnullを返します.
引数にLayerオブジェクトを指定した場合,レイヤが含まれればそのレイヤー自信を返します.
引数を省略すると全てのオーバーレイレイヤーのリストを返します.
layerControl( show )
(未実装)
Boolean  なし レイヤーコントロールを表示( showがtrueのとき )または非表示( showがfalseのとき )
on( type,
 handler )
String,

Function
this  イベントリスナーを登録
addEvnetListnerはonとまったっく同じ機能を提供する 
addEventListener( type,
 handler )
remove( object ) Polyline なし  ポリライン,マーカー,ポップアップ,オバーレイレイヤー,コントローラーを取り除きます.
removeController( controller ) Controller なし  コントローラーを削除します.
引数にはコントローラ名か生成したコントローラオブジェクトを指定します.
コントローラ名には'gamepad' または 'leap'が指定できます. 
removeBase( layer ) Layer | String なし 背景レイヤーを削除 
layerがStringの場合は,idプロパティまたはtitleプロパティの値として検索し,削除します.
現在表示されている背景を削除すると,最後に追加した背景レイヤが表示されます.
removeMarker( marker ) Marker  なし 指定したマーカーを削除します
markerを省略すると全てのマーカーを削除します.
removePolyline( object ) Polyline  なし  指定したポリラインを削除します. 
引数がポリラインオブジェクトでなければ何もしません.
removePopup( popup ) Popup なし 指定したポップアップを削除します. 
removeOverlay( layer ) Layer | String なし 指定したオーバーレイレイヤーを削除します.
引数に文字列を指定すると,idまたはtitle属性として検索します.
引数を省略すると全てのオーバーレイレイヤを削除します. 
scaleControl( show )
(未実装)
Boolean なし スケールコントロールを表示( showがtrueのとき)または非表示( showがfalseのとき)
set( params,
 value )
Object | String,
Eney
Layer | Eney このオブジェクトのプロパティ値をセット
paramsがオブジェクトの場合,連想配列と解釈して各プロパティとその値を設定し,自分自身を返します.
paramsが文字列の場合,paramsをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します.
プロパティ名には,'bounds', 'center'及び'zoom'も指定できます.
paramsへのオブジェクト指定は未実装
setBase( layer ) Layer | Nmber |String Layer 背景レイヤーをlayerに変更
すでに背景として登録されているもののみが指定できます
layerがStringの場合は,idプロパティまたはtitleプロパティの値として検索し,変更します.
layerを省略すると,現在表示されている背景レイヤーを返します
setBounds( bounds )  [ [ Number, Number ], [ Number, Number ]
| [ LatLng, LatLng ]
| Bounds
Bounds | null 南西および北東の緯度経度を指定して,その範囲が収まりかつ最大になるように描画位置と範囲を変更
最終的な範囲を返します.
マップエンジンの状態等により情報取得に失敗することがあり,その場合はnullを返します.
setCenter( latLng,
 options )
LatLng | [ Number, Number ],
Object
LatLng 地図の中心を指定
引数を省略すると現在の中心が返されます.
optionsに{ animate: false }を指定するとアニメーションを抑止します.
setHf( f ) Number Number 高さ誇張係数を指定
引数を省略すると現在の誇張係数を返します.
2Dマップ(leaflet.js)では使用できません
setScale( scale,
 options )
Number
Object
Number スケール (1ピクセルあたりの長さm ) を指定
引数を省略すると現在のスケールを返します.
optionsに{ animate: false }を指定するとアニメーションを抑止します
setView( view,
 options)
Object,
Object
Object 地図の表示設定を指定します.
引数は,{ centetr: LatLng, zoom: Number }で指定し,フィールドが省略された場合は現在の値となります.
引数自体を省略すると現在の表示設定を返します.
optionsに{ animate: false }を指定するとアニメーションを抑止します
setVisibility( visibility )  Boolean Boolean マップの表示・非表示をセット
引数を省略すると現在の表示状態を返します.
setZoom( zoom,
 options)
Number,
Object
Number ズームレベルをzoomに変更
変更されたズームレベルを返します. 引数を省略すると現在のズームレベルを返します.
zoomには実数値を指定できますが,Leaflet.jsなどのように整数値のズームレベルしか扱えない場合は四捨五入されます.
optionsに{ animate: false }を指定するとアニメーションを抑止します

・イベント

 addEventListner()メソッドでは以下のイベントが扱え,typeプロパティの値として指定できます.

イベント 説明
click 地図上のクリックまたはタップで発生
dblclick 地図上のクリックまたはダブルタップで発生
mousedown 地図上でマウスボタン押されて下がった時に発生
mouseup 地図上でマウスボタン押されて上がった時に発生
mouseover マウスが地図内に入った時に発生
mouseout マウスが地図外に出たときに発生
mousemove マウスが地図内で移動したときに発生
move マップの表示位置が変化しているときに発生
movestart マップの表示位置の変化が開始したときに発生
moveend マップの表示位置の変化が終了したときに発生
zoomstart ズームレベルの変化の直前に発生(アニメーションの買い占め)
zoomend ズームレベルが変化した後に発生

 また,イベントハンドラの引数には,Eventオブジェクトが渡されます.

Layer

 Layerオブジェクトは個々のレイヤーを表します.GSJMapでは背景とオーバレイを分けて扱いますが,Layerオブジェクトの扱い自体には区別はありません.Map.addOverlay()メソッドで生成と同時に取得するなどして使用します.なお,Mapを生成するファクトリー関数( map() )の引数などでLayerオブジェクトを指定する場合は,オブジェクトリテラルとして必要なプロパティを設定するだけで利用できます.

・プロパティ

プロパティ デフォルト 生成後の使用 説明
attribution String '' 呼出のみ 帰属情報
html要素を使用できます.
attribution_url String '' 呼出のみ 帰属情報に紐づけられるリンク先 
base Boolean なし  呼出のみ 背景レイヤーとして使用することを明示する場合にtrueを指定します.
Map.addBase()やMap.addOverlay()を使用する限りは必要ありません.
bounds Bounds なし 呼出のみ レイヤーの地理上の表示範囲を指定します.
画像レイヤーでは必須です. 
filetype String  なし 呼出のみ ファイル形式を指定する文字列です.
ファイル形式は通常は自動判別されますが,このプロパティを使って明示的に指定することができます.
'kml'が指定できます.
id String ''  呼出のみ レイヤーを識別するためのid
CHIRIIN_STD, GOOGLEMAPS_LAD, OPEN_STREET_MAPは予約されています.
maxZoom Number GSJ.ZOOM_LIMIT 呼出のみ 最大ズームレベル
minZoom Number 0 呼出のみ 最小ズームレベル
opacity Number 1 setOpacity() 不透明度(0~1)
オブジェクト生成後に値を取得したり変更する場合はsetOpcaity()を使ってください.
tiling Boolean なし  呼出のみ タイルイング(true)を行うか単独(false)で表示するかを指定します.
通常はurlの内容から自動判別されますが,このプロパティを使って明示的にしていすることができます.
title String ''  呼出のみ レイヤーのタイトル.レイヤーコントローラなどで使用される. 
url String '' 呼出のみ 地図画像ファイルのURL
visibility Boolean true  setVisibility() レイヤーの表示状態
オブジェクト生成後に値を取得したり変更する場合はsetVisibility()を使ってください.

 urlプロパティでは地図画像ファイルをURLテンプレート(タイルレイヤー)または単独のファイル名(非タイルレイヤー)で指定します.
 URLテンプレートにはタイルのX, Y座標(グーグルマップの互換)およびズームレベルを{x}, {y}, {z}の形式で埋め込むことができます.また,TMS(Tile Map Service)などで使用される赤道を原点とするY座標は{ye}として使用できます.南西端を原点とする場合のY座標は{ys}で指定できます.その他,任意の変数を{}に挟んで埋め込むことができ,その場合はLayerオブジェクトの内プロパティの値が埋め込まれます.

※urlプロパティが指定され,かつその中に「{z}」が含まれないとき,単独ファイルが指定されたとみなされます.それ以外はタイルとして描画します.

 単独のファイル名としては,ラスター画像およびKMLファイルが指定可能です.ラスター画像の場合はその範囲を示すboundsプロパティも設定する必要があります.KMLファイルで利用できる要素は,本来の仕様のごく一部です(たとえば,ネットワークリンク,アニメーション等は含みません).

・メソッド

メソッド 引数の型 戻り値 使用法 説明
convertTile( canvas,
 coord )
Canvas,
Coord
なし オーバーライド Canvasに与えらた画像を表示用に変換
初期状態ではこのメソッドは実装されておらず,変換は行いません.
ユーザカスタマイズする場合にオーバーライドします.
Canvasには,drawTile()メソッドで画像が描かれた状態でこのメソッドが実行されます.
drawTile( canvas,
 coord )
Canvas,
Coord
なし オーバーライド 通常の画像ファイルの描画の代わりに,canvasに直接描画
初期状態では,coordに対応したタイルをそのまま描画します.
ユーザカスタマイズする場合にオーバーライドします.
getPixel( latLng,  zoom ) LatLng, Number Promise 呼び出し 緯度経度に対応するピクセルの色を取得するプロミスを発行.
取得は非同期に行われます.ロミス成功時の引数にはサイズ4の配列(RGBAの値を保持)が与えられます.
getTileUr( coord ) Coord 0 オーバーライド/呼出 URLテンプレートをもとにタイル座標からタイルURLを生成
redraw() なし なし 呼出 レイヤーを再描画
set( params,
 value )
Object | String,
Eney
Layer | Eney 呼出 レイヤーのプロパティをセット
paramsがオブジェクトの場合,連想配列と解釈して各プロパティとその値を設定し,自分自身を返します.
paramsが文字列の場合,paramsをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します.
セット後に内部でredraw()が呼ばれます
setOpacity( opacity )  Number Number  呼出 不透明度を設定(引数を指定した場合)し,最終的な不透明度を返します
setVisibility( visibility ) Boolean Boolean 呼出 レイヤーの表示・非表示をセット
すでに背景レイヤーまたはオーバーレイレイヤーとして登録されている場合のみ有効

 使用法に「オーバーライド」としたメソッドは,オーバーライドすることにより動作を変更できます.

Marker

 Markerオブジェクトは地図上に表示するマーカーを表します.Makerオブジェクトの生成は,Map.addMarker()メソッドでお行います.

・プロパティ

プロパティ デフォルト値 説明
latLng LatLng 必須 ポップアップを表示する地理上の位置
draggable Boolean  false ドラッグ可能とするか否か 
icon Icon なし  マーカーアイコン
opacity Boolean  Number 不透明度 
original Object なし (存在すれば)地図ライブラリが生成する固有のオブジェクトです.

・メソッド

メソッド 引数の型 戻り値 説明
closePopup() なし ポップアップウィンドウを閉じます  
openPopup() なし ポップアップウィンドウを表示します
表示する内容は,Marker生成時にpamras.popupプロパティに設定しておく必要があります.
set( key,
 value )
String,
Eney 
Eney このオブジェクトのプロパティ値をセット
keyをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します.
プロパティ名には,'latLng', 'opacity', 'popup', 'visibilityが指定できます.
setLatLng( latLng ) LatLng LatLng 表示する位置を変更します
引数は省略することができ,省略すると現在設定されている位置返します
setOpacity( opacity ) Number opacity 不透明度を設定します.
引数は省略することができ,省略すると現在設定されている不透明度を返します 
setPopup( popup ) String String ポップアップで表示するhtml文字列を設定します.
引数は省略することができ,省略すると現在設定されている文字列を返します
setVisibility( visibility ) Boolean true 表示するか.
引数は省略でき,省略すると現在表示されているか否かを返します. 

Icon

 Iconオブジェクトはマーカーで使用する画像を表します.Iconオブジェクトの生成は,Map.addMarker()の中で,parms.iconプロパティの設定をもとに行なわれます.

・プロパティ

プロパティ デフォルト値 説明
url String 必須 画像ファイルの絶対または相対パスを指定します
size Point なし アイコンのサイズをピックセルで指定します
anchor Point なし アンカーの位置を左上を原点とする座標値で指定します

Popup

 Popupオブジェクトは地図上にポップアップ(吹き出し)を表示します.Popupの生成はMap.add()またはMap.addPopup()メソッドで行います.削除はMap.remove()またはMap.removePolyline()オブジェクトで行います.
 なお,GSJMapでは,ポップアップは常に1つしか表示されません.
 Markerに直接関連付けるポップアップを表示するときは,Marakerのpopupプロパティを使います.

・プロパティ

プロパティ デフォルト値 説明
latLng LatLng 必須 ポップアップを表示する地理上の位置
content String 必須 アイコンのサイズをピックセルで指定します
original Object なし (存在すれば)地図ライブラリが生成する固有のオブジェクトです.

Polyline

 Polylineオブジェクトは地図上に描画するポリライン(ポリゴンを含む)を表します.Polylineの生成は,Map.add()または,Map.addPolyline()で行います.削除はMap.remove()またはMap.removePolyline()オブジェクトで行います.

・プロパティ

プロパティ デフォルト値 説明
close Boolean false 始点と終点をつなぐ(ポリゴン)かいなかを指定します
latLngs [ latLng, ... ] 必須 地理上の点の配列を与えます
style Style なし 描画スタイルを設定します
original Object なし  (存在すれば)地図ライブラリが生成する固有のオブジェクトです.
add()またはaddPolyline()メソッドで地図上に追加された際に,GSJMapにより設定されます
visibility Booelan  true  表示状態

・メソッド

メソッド 引数の型 戻り値 説明
on( type
 handler )
String
function
this イベントリスナーを登録
addEvnetListnerはonとまったっく同じ機能を提供する 
addEventListener( type,
 handler )
set( key,
 value )
String
Eney
Eney このオブジェクトのプロパティ値をセット
keyをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します.
プロパティ名には,'visibility'が指定できます.
setVisibility( visibility ) Boolean true 表示するか.
引数は省略でき,省略すると現在表示されているか否かを返します. 

Style

 StyleオブジェクトはPolylineのスタイルを設定します.

・プロパティ

オプション デフォルト 説明
stroke String '#000' ストロークの色または'none'(線を描画しない)
strokeOpacity Number 1 ストロークの不透明度
strokeWidth Number 1 ピクセル単位のストロークの幅
dashArray String nrull ストロークダッシュパターン
fill String 'none' 塗りつぶしの色または'none'(パス内を塗りつぶさない)
fillOpacity Number 1 塗りつぶしの不透明度
lineCap String null ストロークの端で使われる形
lineJoin String null ストロークの曲がり角で使われる形

Controller

 Controllerオブジェクトは,ゲームパッドやLeap Motionなどの入力デバイスを表現します.
 通常はMap.addController()関数の引数にコントローラ名を指定して生成します.コントローラ名には'gamepad'または'leap'を指定できます.

・プロパティ

オプション デフォルト 説明
id String なし コントローラー名.'gamepad'または'leap'

Geocorder

 地名等と緯度経度の変換を行うジオコーダオブジェクトです.

・ファクトリー関数

ファクトリー 引数 説明
GSJ.geocoder() なし Geocoderオブジェクト生成します

・メソッド

メソッド 引数の型 戻り値 説明
geocode( addr,
 params,
 success,
 error )
String,
Object,
Function, Function
Promise  addrで指定した地名を検索するプロミスを発行します.
paramsには,検索時に使用するパラメータオブジェクトを指定します.パラメータオブジェクトではboundsプロパティが指定でき,南西および北東の緯度経度を指定して範囲を限定できます.
成功するとsuccess, 失敗するとerrorで指定した関数が呼び出されます.
successおよびプロミス成功時の第1引数には,結果を格納するオブジェクトが渡されます.

・geocode()メソッドの結果オブジェクト

 gecode()で取得できる結果オブジェクトは,resultsフィールドを持ちます.このフィールドは以下のプロパティを持つオブジェクトの配列です.

プロパティ 説明
title String 住所,地名など
latLng LatLng 位置

Promise

 プロミス(Promise)オブジェクトは,非同期処理で有効な仕組みを提供するためのオブジェクトで,その時点ではまだ完了していない処理を表現します.ほかのライブラリではfuture, delayと呼ばれることもあります.
 GSJMapでは,画像の読み込みや標高データの読み込みで利用され,しばしば戻り値としてプロミスオブジェクトが返されます.通常の利用では,このオブジェクトのthen()メソッドを使って,プロミス完了時(成功時や失敗時)の処理を登録するだけで利用できます.
 GSJ.promise()を使て自作のプロミスを生成させることができます.この場合,プロミスオブジェクトのresolve(),reject()メソッドを使って,成功時や失敗時をプロミスに通知する必要があります.GSJ.allPromise()関数を使て複数のプロミスがすべて終わった時点に動作するプロミスを生成することができます.

・ファクトリー関数

ファクトリー 引数 説明
GSJ.promise( starter ) Function Promiseオブジェクト生成します.
starterには,対象とする非同期処理を行う関数を記述します.
starter関数は2つのコールバック関数を引数(resolve, reject)にとり,非同期処理に成功した場合はresolve, 失敗した場合はrejectを呼び出します.

・メソッド

メソッド 引数の型 戻り値 説明
reject() any なし プロミス失敗を通知
引数はすべてそのままthen()メソッドのerrorで指定した失敗時の処理関数に渡されます.
resolve() any なし プロミス成功を通知
引数はすべてそのままthen()メソッドのsuccessで指定した成功時の処理関数に渡されます.
then( sucess,
 error )
Function,
Function
Promise プロミス完了時(成功または失敗時)の処理を設定
成功するとsucess,失敗するとerrorで指定した関数が実行されます.
戻り値には,成功・失敗の処理後に実行されるプロミスを返します

・関連関数

関数 引数 戻り値 説明
GSJ.allPromise( promise1, promise2, ... ) Promise, Promise,.. Promise すべての子プロミスの終了を監視するプロミスを生成
子プロミスは可変引数として与えるか,配列として与えます. 
GSJ.allPromise( promiselist. ) [ Promise, Promise, ...]

2014年10月1日更新