名前空間と定数 | 汎用オブジェクト | 汎用関数
Map | Layer
Marker | Icon | Popup | Polyline | Style | GeometryGroup
Controller | Geocoder | Promise
GSJMapでは,いわゆるクラスを使用しません.必要なオブジェクトは全て関数の結果として得られます.このため,以下では例えば「Map」のように総称名として記述しますが,そのようなクラス名(やオブジェクト名)が実装されているわけではありません.
特に,オブジェクト生成専用の関数をファクトリー関数と呼んでいます.ただし,通常Mapオブジェクト以外はファクトリー関数を使用する機会はほとんど無く,addMarker()等のメソッド利用時に自動的に生成されます.特に,LatLngオブジェクト等のファクトリ関数が用意されている汎用オブジェクトでは,引数にそれらが指定されている場合,GSJMap内部で自動的にファクトリー関数が呼ばれるので,さまざまが記述表現が可能です.
※GSJMapは現在開発中です.このページに記述されている機能のいくつかは実装されていません.特にCesiumエンジンはまだほとんどの機能が未実装です.
このページでは,データ型を表すために,このページで記述されているデータ型と以下の表現を使用します.
Number, String, Boolean, Object, Function, DOMElement, DOMEvent, Eney(型を問わない)
配列は[ ]で中に型名を入れて表現します.同じ型を列記でする場合は,「型名, ...」と表記します.複数の型を利用できる場合は | を挟んで列挙します.
名前空間を定義するためのオブジェクトで,外部に直接提供される唯一のオブジェクトです.このライブラリのすべての定数,オブジェクト,関数は,このオブジェクトの直接ないし間接のプロパティとして定義されます.
定数 値 説明 GSJ.DEFAULT_BASE (地理院地図標準) デフォルトの背景地図 GSJ.DEFAULT_ENGINE 'leaflet' デフォルトのマップエンジン名 GSJ.EARTH_R 6378137 地球の長半径(WGS84, 単位m) GSJ.ZOOM_LIMIT 24 このライブラリで利用できるズームレベルの限界値
タイル座標(X, Y)及びズームレベルを表します.ズームレベルは省略されることがあります.
プロパティ 型 必須 説明 x Number ○ X座標 y Number ○ Y座標 z Numbet ズームレベル
地理的な位置を表します.
プロパティ 型 必須 説明 lat Number ○ 緯度(360度法.北緯が正,南緯が負) lng Number ○ 経度(360度法.東経が正,西経が負)
このオブジェクトの生成用関数 GSJ.latLng() が利用できます.
平面上のX, Y座標を表します.
プロパティ 型 必須 説明 x Number ○ X座標 y Number ○ Y座標
このオブジェクトの生成用関数 GSJ.Point() が利用できます.
地理的な矩形範囲を表します.
プロパティ 型 必須 説明 sw LatLng ○ 南西端の地理座標 ne LatLng ○ 北東端の地理座標
通常は,sw.lat < ne.latでなければなりません.また,sw.lng > ne.lng の場合は子午線をはさんだ範囲となります.
このオブジェクトの生成用関数 GSJ.bounds() が利用できます.
イベントを表します.これらのすべの値が常に利用できるわけではありません.
プロパティ 型 説明 domEvent DOMEvent オリジナルのDOMイベントオブジェクト. 省略されることがあります. original Object 地図ライブラリ固有のイベントオブジェクト.省略されることがあります. latLng LatLng イベントが発生した地理上の位置.省略されることがあります. target Object イベントが発生したオブジェクト type String イベントタイプ altitude Number WGS84楕円体を基準とする高度 accuracy Number 水平方向精度(m単位) altitudeAccuracy Number 垂直方向精度(m単位) headding Number 方位(北から時計回りの角度) speed Number 速度(m/秒) time Date 取得時刻
関数 | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
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プロパティを持つ)が渡されます. urlは同一生成元か,CORS設定がされている必要があります |
GSJ.loadText( url ) | String | Promise | テキストファイルをロードするプロミスを生成します. プロミス成功時の引数にはテキストが渡されます. プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます. urlは同一生成元か,CORS設定がされている必要があります |
GSJ.loadXML( url ) | String | Promise | XMLファイルをロードするプロミスを生成します. プロミス成功時の引数にはxmlオブジェクトが渡されます. プロミス失敗時の引数にはエラーレスポンスオブジェクト(msgとstatuscodeプロパティを持つ)が渡されます. urlは同一生成元か,CORS設定がされている必要があります |
※iOS(Safari, Chorme)では,CORS設定がされていてもloadJSON, loadText, loadXMLで読み込むことができないようです.
関数 | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
GSJ.mapToKMZ( canvas, bounds, filename, params ) |
Canvas, Bounds, String, Object |
なし | Canvasに描かれた地図画像をKMZとして保存します. paramsではname, descriptionを指定でき,KMZ内のGroundOverlayの<name>要素や<description>要素として書き込まれます. |
GSJ.saveURL( url, failename ) |
String, String |
なし | urlで指定した内容をクライアント環境に保存します. |
関数 | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
GSJ.base64url.encode( array ) | [ Boolean, ... ] | String | 論理型の配列をbase64urlでエンコードします. 論理型の代わりに 0 (偽 ),1 ( 真 ) を指定することも可能です. |
GSJ.base64url.decode( str ) | String | [ Boolean, ... ] | base64urlでエンコードされた文字列をデコードします. |
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)が指定できます. |
home | Object | (center,zoomの指定による) | reset()メソッド実行時に移動する中心とズームレベル centar(LatLng型)とzoom(Number)型からなるオブジェクト 指定がなれば,パラメータオブジェクトのcenterとzoomの値となります. |
maxZoom | Number | GSJ.ZOOM_LIMIT | ズームレベルの最大値 |
minZoom | Number | 0 | ズームレベルの最小値 |
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 | 0 | 参照のみ | ズームレベルの最小値 |
promise | Promise | なし | 参照のみ | 非同期でMapオブジェクトが生成される場合に,GSJMapによりセットされます |
メソッド | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
add( object ) | Object | Object | ポリライン,マーカー,ポップアップ,ジオメトリーグループ,背景レイヤー,オーバーレイレイヤー,コントローラーを追加します. このメソッドは,引数の型に応じて対応する追加メソッド(addPolylineなど)を呼び出します.引数には,各メソッドに渡される引数をフィールドに持つオブジェクトを指定します. |
addBase( layer ) | Layer | Layer | 背景レイヤーを追加 layerにはLayerオブジェクトを生成するためのオブジェクトリテラルを渡します. |
addControler( controller ) | String | Controller | Controller | 戻り値には追加されたコントローラが返されます.追加に失敗するとnullが返されます. コントローラ名には'gamepad' または 'leap'が指定できます.Leafletエンジンではゲームパッドはデフォルトで使用できます. |
addGeometryGroup( geometries ) | [ Object, ... ] | GeometryGroup | ジオメトリーグループを追加します. 引数には Geometryオブジェクト(マーカー,ポップアップ,ポリライン,イメージ)の配列,またはGeometryGroupオブジェクトのリテラルを指定します.引数を省略すると要素を持たないGeometryGroupオブジェクトが生成されます. 戻り値には追加されたGeometryGroupオブジェクトが返されます. |
addGeometryGroup( geometryGrouop ) | GeometryGroup | ||
addMarker( latLng, options ) |
LatLng, 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, String |
Popup | 指定した位置にポップアップウィンドウを追加 Popupオブジェクト(latLng, contentフィールドに値がセットされます)が返されます. |
cutImage( bounds, zoom, filename, params) |
Bounds, Number, String, Object |
Promise | boundsで指定した範囲の,ズームレベルzoomの画像を切り出します. 結果はプロミスとして返され,プロミス成功時の引数には画像が描かれたCanvasが渡されます. bounds, zoomは省略でき,省略すると現在表示されている範囲全体とズームレベルとなります. filenameを指定するとクライアント環境にそのファイル名でダウンロードされます(PNG形式).filenameの拡張子をkmzにすると,kmzファイルとしてダウンロードされます.この場合,さらにparamsパラメータオブジェクトを指定することができ,name, descriptionプロパティがKMZ内のGroundOverlayの<name>要素や<description>要素として書き込まれます(GSJ.mapToKMZと同様). |
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プロパティの値として検索し,削除します. 現在表示されている背景を削除すると,最後に追加した背景レイヤが表示されます. |
removeGeometryGroup( geometryGroup ) | GeometryGroup | なし | 指定したGeometryGroupオブジェクトを削除します. |
removeMarker( marker ) | Marker | なし | 指定したマーカーを削除します markerを省略すると全てのマーカーを削除します. |
removePolyline( object ) | Polyline | なし | 指定したポリラインを削除します. 引数がポリラインオブジェクトでなければ何もしません. |
removePopup( popup ) | Popup | なし | 指定したポップアップを削除します. |
removeOverlay( layer ) | Layer | String | なし | 指定したオーバーレイレイヤーを削除します. 引数に文字列を指定すると,idまたはtitle属性として検索します. 引数を省略すると全てのオーバーレイレイヤを削除します. |
redraw() | なし | なし | 全てのレイヤーを再描画します ※現在の実装(ver. 0.1.1)では,タイルレイヤーのみを再描画します |
reset() | なし | なし | 中心とズームレベルをホームに変更します. |
scaleControl( show ) (未実装) |
Boolean | なし | スケールコントロールを表示( showがtrueのとき)または非表示( showがfalseのとき) |
set( params, value ) |
Object | String, Eney |
Layer | Eney | このオブジェクトのプロパティ値をセット paramsがオブジェクトの場合,連想配列と解釈して各プロパティとその値を設定し,自分自身を返します. paramsが文字列の場合,paramsをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します. プロパティ名には,'bounds', 'center', 'draggable'及び'zoom'が指定できます. paramsへのオブジェクト指定は未実装 |
setBase( layer ) | Layer | Nmber |String | Layer | 背景レイヤーをlayerに変更 すでに背景として登録されているもののみが指定できます layerがStringの場合は,idプロパティまたはtitleプロパティの値として検索し,変更します. layerを省略すると,現在表示されている背景レイヤーを返します |
setBounds( bounds ) | Bounds | Bounds | null | 南西および北東の緯度経度を指定して,その範囲が収まりかつ最大になるように描画位置と範囲を変更 最終的な範囲を返します. マップエンジンの状態等により情報取得に失敗することがあり,その場合はnullを返します. |
setCenter( latLng, options ) |
LatLng, Object |
LatLng | 地図の中心を指定 引数を省略すると現在の中心が返されます. optionsに{ animate: false }を指定するとアニメーションを抑止します. |
setDraggable( draggable ) | Boolean | Boolean | マウスで地図をドラッグ可能にするかを指定します. 返り値には現在の状態を返します. |
setHf( f ) | Number | Number | 高さ誇張係数を指定 引数を省略すると現在の誇張係数を返します. 2Dマップ(leaflet.js)では使用できません |
setHome( home ) | Object | Object | ホーム(reset()メソッド実行時に移動する中心とズームレベル)を設定します. 引数はcentar(LatLng型)とzoom(Number)型からなるオブジェクトです. homeを省略すると,現在のホームを返します. |
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 }を指定するとアニメーションを抑止します |
startLocation( options ) | Object | なし | 位置情報の取得を開始します. options.watchにtrueを指定すると位置が変わるたびに位置情報をけとります(デフォルトfalse).options.automoveにtureを指定すると位置取得時に中心を移動します(デフォルトfalse).options.enableHighAccuracyにtrueを指定すると位置精度が上がります(デフォルトfalse). 位置情報の取得に成功すると'locationfound'イベントが発生し,失敗すると'locationerror'イベントが発生します. |
stopLocation() | なし | なし | 位置情報の取得を終了します. |
addEventListner()メソッドでは以下のイベントが扱え,typeプロパティの値として指定できます.
イベント 説明 click 地図上のクリックまたはタップで発生 dblclick 地図上のクリックまたはダブルタップで発生 locationfound 位置情報が取得された時に発生 locationerror 位置情報取得に失敗した時に発生 mousedown 地図上でマウスボタン押されて下がった時に発生 mouseup 地図上でマウスボタン押されて上がった時に発生 mouseover マウスが地図内に入った時に発生 mouseout マウスが地図外に出たときに発生 mousemove マウスが地図内で移動したときに発生 move マップの表示位置が変化しているときに発生 movestart マップの表示位置の変化が開始したときに発生 moveend マップの表示位置の変化が終了したときに発生 zoomstart ズームレベルの変化の直前に発生(アニメーションの開始時) zoomend ズームレベルが変化した後に発生
また,イベントハンドラの引数には,Eventオブジェクトが渡されます.
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は予約されています. |
legend | [Object] | なし | setLegend() | 凡例情報を保持する配列です. getPixelInfo()メソッドで使用します. |
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ファイルで利用できる要素は,本来の仕様のごく一部です(たとえば,ネットワークリンク,アニメーション等は含みません).
メソッド | 引数の型 | 戻り値 | オーバーライド | 説明 |
---|---|---|---|---|
cutImage( bounds, zoom, filename, params) |
Bounds, Number, String, Object |
Promise | boundsで指定した範囲の,ズームレベルzoomの画像を切り出します. 結果はプロミスとして返され,プロミス成功時の引数には画像が描かれたCanvasが返されます. bounds, zoomは省略でき,省略すると現在表示されている範囲全体とズームレベルとなります. filenameを指定するとクライアント環境にそのファイル名でダウンロードされます(PNG形式).filenameの拡張子をkmzにすると,kmzファイルとしてダウンロードされます.この場合,さらにparamsパラメータオブジェクトを指定することができ,name, descriptionプロパティがKMZ内のGroundOverlayの<name>要素や<description>要素として書き込まれます(GSJ.mapToKMZと同様). |
|
convertTile( canvas, coord ) |
Canvas, Coord |
なし | 可 | Canvasに与えらた画像を表示用に変換 初期状態ではこのメソッドは実装されておらず,変換は行いません. ユーザカスタマイズする場合にオーバーライドします. Canvasには,drawTile()メソッドで画像が描かれた状態でこのメソッドが実行されます. |
drawTile( canvas, coord ) |
Canvas, Coord |
なし | 可 | 通常の画像ファイルの描画の代わりに,canvasに直接描画 初期状態では,coordに対応したタイルをそのまま描画します. ユーザカスタマイズする場合にオーバーライドします. |
getPixel( latLng, zoom ) | LatLng, Number | Promise | 緯度経度に対応するピクセルの色を取得するプロミスを発行. 取得は非同期に行われます.プロミス成功時の引数にはサイズ4の配列(RGBAの値を保持)が与えられます. |
|
getPixelInfo( latLng, zoom property ) |
LatLng, Number, String |
Promise | 緯度経度に対応するピクセル情報を取得するプロミスを発行. 取得は非同期に行われます.プロミス成功時の引数には凡例情報オブジェクトが与えられます. 凡例情報オブジェクトはlegendプロパティで与えられた配列から検索し,デフォルトではcolorフィールドがピクセルの色(RGBの16進6桁表示)と一致するものを返します.propertyで別のフィールド名に変更することができます. |
|
getTileUr( coord ) | Coord | 0 | 可 | URLテンプレートをもとにタイル座標からタイルURLを生成 |
redraw() | なし | なし | レイヤーを再描画します | |
set( params, value ) |
Object | String, Eney |
Layer | Eney | レイヤーのプロパティをセット paramsがオブジェクトの場合,連想配列と解釈して各プロパティとその値を設定し,自分自身を返します. paramsが文字列の場合,paramsをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します. セット後に内部でredraw()が呼ばれます |
|
setLegend( legend ) | [Object] | String |
[Object] | レジェンドを設定し,最終的なレジェンドを返します.引数に文字列を指定した場合は,JSONファイルとして読み込みます. | |
setOpacity( opacity ) | Number | Number | 不透明度を設定(引数を指定した場合)し,最終的な不透明度を返します | |
setVisibility( visibility ) | Boolean | Boolean | レイヤーの表示・非表示をセット すでに背景レイヤーまたはオーバーレイレイヤーとして登録されている場合のみ有効 |
※「オーバーライド」に「可」としたメソッドは,オーバーライドすることにより動作を変更できます.ただし,オーバーライドはメソッド生成時(map()関数,addBase()関数, addOverlay()関数呼び出し時)にのみ行えます.
Markerオブジェクトは地図上に表示するマーカーを表します.Makerオブジェクトの生成は,Map.addMarker()メソッドでお行います.
プロパティ | 型 | デフォルト | 生成後 | 説明 |
---|---|---|---|---|
latLng | LatLng | 必須 | setLatLng() | ポップアップを表示する地理上の位置 |
draggable | Boolean | false | 参照のみ | ドラッグ可能とするか否か |
icon | Icon | なし | 参照のみ | マーカーアイコン |
opacity | Number | 1 | setOpacity | 不透明度 |
original | Object | なし | 参照のみ | (存在すれば)地図ライブラリが生成する固有のオブジェクトです. |
vsibility | Boolean | true | setVisiblity | 表示するか |
メソッド | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
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オブジェクトの生成は,Map.addMarker()の中で,parms.iconプロパティの設定をもとに行なわれます.
プロパティ | 型 | デフォルト | 説明 |
---|---|---|---|
url | String | 必須 | 画像ファイルの絶対または相対パスを指定します |
size | Point | なし | アイコンのサイズをピックセルで指定します |
anchor | Point | なし | アンカーの位置を左上を原点とする座標値で指定します |
Popupオブジェクトは地図上にポップアップ(吹き出し)を表示します.Popupの生成はMap.add()またはMap.addPopup()メソッドで行います.削除はMap.remove()またはMap.removePolyline()オブジェクトで行います.
なお,GSJMapでは,ポップアップは常に1つしか表示されません.
Markerに直接関連付けるポップアップを表示するときは,Marakerのpopupプロパティを使います.
プロパティ | 型 | デフォルト | 説明 |
---|---|---|---|
latLng | LatLng | 必須 | ポップアップを表示する地理上の位置 |
content | String | 必須 | アイコンのサイズをピックセルで指定します |
original | Object | なし | (存在すれば)地図ライブラリが生成する固有のオブジェクトです. |
Polylineオブジェクトは地図上に描画するポリライン(ポリゴンを含む)を表します.Polylineの生成は,Map.add()または,Map.addPolyline()で行います.削除はMap.remove()またはMap.removePolyline()メソッドで行います.
プロパティ | 型 | デフォルト | 生成後 | 説明 |
---|---|---|---|---|
close | Boolean | false | 参照のみ | 始点と終点をつなぐ(ポリゴン)かいなかを指定します |
latLngs | [ latLng, ... ] | 必須 | setLatLngs() addLatLng() |
地理上の点の配列を与えます |
style | Style | なし | 参照のみ | 描画スタイルを設定します |
original | Object | なし | 参照のみ | (存在すれば)地図ライブラリが生成する固有のオブジェクトです. add()またはaddPolyline()メソッドで地図上に追加された際に,GSJMapにより設定されます |
visibility | Booelan | true | setVisibility() | 表示状態 |
メソッド | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
on( type handler ) |
String function |
this | イベントリスナーを登録 addEvnetListnerはonとまったっく同じ機能を提供する |
addEventListener( type, handler ) |
|||
addLatLng | LatLng | [ Number, Number ] | LatLng | 点を追加し,追加した点を返します. |
set( key, value ) |
String Eney |
Eney | このオブジェクトのプロパティ値をセット keyをプロパティ名として,(指定されていれば)valueを設定し,最終的なプロパティ値を返します. プロパティ名には,'latLngs', 'visibility'が指定できます. |
setVisibility( visibility ) | Boolean | Boolean | 表示するか否かを指定します. 引数は省略でき,省略すると現在表示されているか否かを返します. |
setLatLngs( latLngs ) | [ LatLng, ... ] | [ latLng, ... ] | 地理上の点の配列を設定します. 引数を省略すると現在設定されている配列を返します. |
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 | ストロークの曲がり角で使われる形 |
GeometryGroupオブジェクトは地図上に描画する複数のオブジェクト(マーカー,ポップアップ,ポリライン,イメージ)をまとめるためのジオメトリーグループを表現します.GeometryGroupの生成は,Map.add()または,Map.addGeometryGroup()メソッドで行います.削除はMap.remove()またはMap.removeGeometry()メソッドで行います.
プロパティ | 型 | デフォルト | 生成後 | 説明 |
---|---|---|---|---|
geometries | [ Object, ... ] | [] | add(), remove() | 登録したGeometryの配列 |
visibility | Booelan | true | setVisibility() | 表示状態 |
メソッド | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
add( geometry ) | Object | Object | 新しい描画オブジェクトを追加します. 引数にはオブジェクトを表現するリテラルを指定でき,指定方法はMap.add()メソッドと同様です. 戻り値には追加されたオブジェクトを返します. |
remove( geometry ) | Object | なし | 追加した描画オブジェクトを削除します. 引数を省略するとすべてのオブジェクトを削除します. |
setVisibility( visibility ) | Boolean | Boolean | 表示するか否かを指定します. 引数は省略でき,省略すると現在表示されているか否かを返します. |
Controllerオブジェクトは,ゲームパッドやLeap Motionなどの入力デバイスを表現します.
通常はMap.addController()関数の引数にコントローラ名を指定して生成します.コントローラ名には'gamepad'または'leap'を指定できます.
オプション | 型 | デフォルト | 説明 |
---|---|---|---|
id | String | なし | コントローラー名.'gamepad'または'leap' |
地名等と緯度経度の変換を行うジオコーダオブジェクトです.
関数 | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
GSJ.geocoder() | なし | Geocorder | Geocoderオブジェクト生成します |
メソッド | 引数の型 | 戻り値 | 説明 |
---|---|---|---|
geocode( addr, params) |
String, Object |
Promise | addrで指定した地名を検索するプロミスを発行します. paramsには,検索時に使用するパラメータオブジェクトを指定します.パラメータオブジェクトではboundsプロパティが指定でき,南西および北東の緯度経度を指定して範囲を限定できます. プロミス成功時には,結果を格納するオブジェクトが渡されます. |
gecode()で取得できる結果オブジェクトは,resultsフィールドを持ちます.このフィールドは以下のプロパティを持つオブジェクトの配列です.
プロパティ 型 説明 title String 住所,地名など latLng LatLng 位置
プロミス(Promise)オブジェクトは,非同期処理で有効な仕組みを提供するためのオブジェクトで,その時点ではまだ完了していない処理を表現します.ほかのライブラリではfuture,
delayと呼ばれることもあります.
GSJMapでは,画像の読み込みや標高データの読み込みで利用され,しばしば戻り値としてプロミスオブジェクトが返されます.通常の利用では,このオブジェクトのthen()メソッドを使って,プロミス完了時(成功時や失敗時)の処理を登録するだけで利用できます.
GSJ.promise()を使て自作のプロミスを生成させることができます.この場合,プロミスオブジェクトのresolve(),reject()メソッドを使って,成功時や失敗時をプロミスに通知する必要があります.GSJ.allPromise()関数を使て複数のプロミスがすべて終わった時点に動作するプロミスを生成することができます.
関数 | 引数 | 戻り値 | 説明 |
---|---|---|---|
GSJ.promise( starter ) | Function | Promise | 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.promiseAll( promise1, promise2, ... ) | Promise, ... | Promise | すべての子プロミスが成功したときに成功となるプロミスを生成します 子プロミスは可変引数として与えるか,配列として与えます. 成功したとき結果は全てのプロミスから得られた値の配列として渡されます.失敗したとき、直ちに失敗したプロミスの結果をもって失敗が返されます. |
GSJ.promiseAll( promiselist. ) | [ Promise, ...] | ||
GSJ.promiseFinishing( promise1, promise2, ... ) | Promise, .. | Promise | すべての子プロミスの完了(成功または失敗)したときに成功となるプロミスを生成します. 子プロミスは可変引数として与えるか,配列として与えます. 結果は全てのプロミスから得られた値(失敗の場合はundefined)の配列として渡されます. |
GSJ.promiseFinishing( promiselist. ) | [ Promise, ...] | Promise | |
GSJ.allPromise( promise1, promise2, ... ) (廃止予定) |
Promise, ,.. | Promise | すべての子プロミスの終了を監視するプロミスを生成 子プロミスは可変引数として与えるか,配列として与えます. ※名称がES6の「Promise.all()」と紛らわしいため,ver 0.1.1ではpromiseFinishing()に変更しました |
GSJ.allPromise( promiselist ) (廃止予定) |
[ Promise, ...] |
2014年10月21日更新