ここでは,地図描画エンジンを実装する際に必要となる仕様および補足事項について記述します.
※このページの内容はGSJMapを利用する際には必要ありません.
※GSJMap内の内部関数APIのすべてを対象としているわけではありません.
地図描画エンジンが生成する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に実数が渡される可能性があります.実装上は四捨五入するなどして整数のみを扱うだけでも構いません. |
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日更新