GSJMap - 拡張ガイド (作成中)

 ここでは,地図描画エンジンを実装する際に必要となる仕様および補足事項について記述します.

※このページの内容はGSJMapを利用する際には必要ありません.
※GSJMap内の内部関数APIのすべてを対象としているわけではありません.

Map

 地図描画エンジンが生成するmapオブジェクトでは,最低限描画機能を持ったlayerオブジェクトを生成する機能が必要です.そのためには,Map.layer()メソッドを直接記述することもできますが,GSJMapで若干のデフォルト処理を行ってから呼び出される内部関数 _layer()メソッドを記述ほうが簡単です.

・プロパティ

プロパティ デフォルト 説明
original Object  なし

・メソッド

メソッド 引数 戻り値 説明
_on( type, handler ) String, Function  this  typeで指定したイベントに,handlerで指定したイベ関数を登録
未知のイベントタイプについては,可能な場合は,元のとなる地図描画ライブラリのオブジェクトのイベントハンドラにそのまま渡してください.
_addEventLlistener(やaddEventListener)メソッドを地図描画エンジン側で実装する必要はありません.プラットフォーム内でこの_on()メソッドへ読み替えられます.
_addMarker( latLng, params ) LatLng | [ Number, Number],
Object
なし 指定した位置にマーカを追加
paramsのpopupプロパティにテキストを追加すると,ポップアップウィンドも表示されます
_addOverlay( layer ) Layer Layer オーバーレイレイヤーを追加
引数にはMap.layer()メソッドで生成されたLayerオブジェクトが渡されます.
_addPopup( latLng, content ) LatLng | [Number, Number],
String
Object 指定した位置にポップアップウィンドウを追加
_bases( key ) String Layer | Layer[] keyに一致するidまたはtitleプロパティをを持つ背景レイヤーを取得(idが優先)
引数を省略するとすべての背景レイヤーが返されます.
_delMareker() なし なし  最後に追加したマーカーを削除 
_delOverlay( layer ) Layer なし 指定したオーバーレイレイヤーを削除
引数を省略すると最後に追加したオーバーレイレイヤが削除されます. 
_delPopup() なし  なし 最後に追加したポップアップを削除 
_layer( layer ) Layer Layer  layer引数をもとに実際の描画機能を持ったLayerオブジェクトを生成
layer引数には,デフォルトの処理を実装したものが渡されます.
外部地図描画ライブラリのオリジナルLayerオブジェクトがある場合は,layer.originalに設定します.
layerControl( show ) Boolean  なし レイヤーコントロールを表示( showがtrueのとき )または非表示( showがfalseのとき )
_overlays( key ) String  Layer keyに一致するidまたはtitleプロパティを持つオーバーレイレイヤーを取得します(idが優先します).引数を省略するとすべてのオーバーレイレイヤーが返されます.
_scaleControl( show ) Boolean なし スケールコントロールを表示( showがtrueのとき)または非表示( showがfalseのとき)
_set( key, value ) String,
Eney
Layer | Eney このオブジェクトのプロパティ値をセット
keyをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します.
(このメソッドは不要か?)
_setBounds( bbox )  [LatLng, LatLng] [LatLng, LatLng] | null 南西および北西の緯度経度を指定して,その範囲が収まりかつ最大になるように描画位置と範囲を変更,最終的な範囲を取得.
boundsは省略することができ,その場合は現在の範囲が返されます
マップエンジンの状態により情報取得に失敗することがあり,その場合はnullを返します.
_setCenter( latLng ) LatLng LatLng 地図の中心を,latLngで指定した地理上の位置に変更することを試み,最終的な地理上の位置を取得.
centerは省略することができ,省略すると現在の中心位置が返されます.
_setHf( f ) Number Number 高さ誇張係数を指定
fは省略でき,省略すると現在の誇張係数が返されます.
_setZoom( zoom ) Number Number ズームレベルをzoomに変更することを試み,最終的なズームレベルを取得
ズームレベルの概念を持たない場合(Ceisumなど)も,対応する必要があります.
zoomに実数が渡される可能性があります.実装上は四捨五入するなどして整数のみを扱うだけでも構いません.

Layer

 Mapオブジェクトの_layer()メソッドが返すLayerオブジェクトでは,以下のlプロパティおよびメソッドを必要に応じて実装します.

・プロパティ

プロパティ デフォルト値 説明
original Object 無し 外部地図描画ライブラリが提供するオリジナルのレイヤーオブジェクト

・メソッド

メソッド 引数 戻り値 説明
_redraw() なし なし レイヤーを再描画
_set( key, value ) String, Eney Eney レイヤーのプロパティをセットし,最終的な値を取得
valueは省略でき,省略すると現在の値のみが返されます.
この関数内でredraw()を呼ぶ必要はありません.
_setOpacity( opacity )  Number Number  不透明度を設定し,最終的な不透明度を取得
opacityは省略でき,省略すると現在の値が返されます.
_setVisibility( visibility ) Boolean Boolean レイヤーの表示・非表示をセットし,最終的な値を取得
vsibilityは省略でき,省略すると現在の状態が返されます.

2014年9月29日更新