GSJMap
GSJMapは,2015年公開に公開する日本シームレス地質図新ビューアのためのJavaScript地図描画ライブラリです.
http://gsj-seamless.jp/labs/gsjmap/gsjmap.js
↓ ダウンロード ( version 0.1.4, 開発中最新版 )
旧版(安定板)
http://gsj-seamless.jp/labs/gsjmap/0.1.3/gsjmap.js
↓ ダウンロード ( version 0.1.3 )
http://gsj-seamless.jp/labs/gsjmap/0.1.2/gsjmap.js
↓ ダウンロード ( version 0.1.2 )
http://gsj-seamless.jp/labs/gsjmap/0.1.1/gsjmap.js
↓ ダウンロード ( version 0.1.1 )
http://gsj-seamless.jp/labs/gsjmap/0.1.0/gsjmap.js
↓ ダウンロード ( version 0.1.0 )
※GSJMapは,2014年11月現在開発中です
※名称に「GSJ」がついていますが,地質調査総合センター(Geological Survey of Japan))の公式プロジェクトではありません
※GSJMapの利用は自由ですが,このライブラリ自身の正式提供およびサポートは計画しておりません
GSJMapは,それ自体は地図描画そのものを行う機能は持たず,leaflet.js, Cesium等の地図描画ライブラリを呼び出して使用するための地図描画プラットフォームを提供します.このプラットフォームには,独自の地図描画エンジンを作成して組み込むことも可能です.
・基本コンセプト
基本的にはMapオブジェクトとLayerオブジェクトを提供します.これらは,いわゆるクラスとしては実装されておらず,生成するための関数が提供されます.生成されたMapオブジェクトやLayerオブジェクトは動的に値を変更できるプロパティを持ち,変更は速やかに描画に反映されます.
・データファイルフォーマット
地図上に表示するデータのファイルフォーマットとしては以下を扱います.
- PNG, GIF, JPEG
- SVG
- KML, GeoJSON
逆に,BMP,TIFF,SHAPE,DLG,E00は扱わない予定です.TopoJSONは検討中です.
これらのデータは,通常はタイルサービス(WMTS, TMS, そのほか)もしくは単独ファイルとして扱います.WMS, WFS, WPSには対応しない予定です.
・対応地図描画ライブラリ(地図描画エンジン)
GSJMapでは,呼び出す地図描画ライブラリを地図描画エンジンと呼んでいます.以下の地図描画ライブラリ/エンジンに対応します.
- Leaflet.js (ラッパー作成中)
- Cesium (ラッパー作成予定)
- My3D (GSJMapオリジナル) (エンジン作成予定)
今後の予定
- 2015年
- 4月
- My3Dエンジン作成
- Mappableオブジェクト検討
- Leaflet 1.0対応
- 外部公開を検討-名称,ライセンス
- セキュリティ対策
- ver 0.2.0 リリース
- Cesiumエンジン作成開始
- 標高プロバイダ対応
- 5月
- インデックスマップコントロール検討
- エンジン実装法再検討
- SVG対応
- GeoJson対応
- Leap Motionのインターフェイス再検討
- ver 0.3.0 リーリス
- 6月
- エラー例外処理
- ソース圧縮検討
- コントローラ制御の高速化
- 7月
- Cesiumエンジン完成
- ver 0.4.0 リーリス
履歴
- 2014-07-05 GSJMapテストサイト作成,ドキュメント公開
- 2014-10-01 バージョン 0.1.0(安定板) リリース
- 2014-10-21 バージョン 0.1.1(安定板) リリース
- 2014-10-25 バージョン 0.1.2 (開発中最新版) 更新
- getPixelInfo仕様再変更.一致を検査するデフォルトプロパティをcolorからfillに変更,RGB整数値との比較を追加,test関数の指定を可能に
- GSJ.geocoder()に別のジオコーダやジオコーダ配列を扱える仕様を追加
- GSJ.contain()関数の追加
- Layerオブジェクトのattribution_urlをattributionUrlに変更
- Gampepadオブジェクトに速度設定用プロパティを追加
- LayerオブジェクトにmaxNativeZoomプロパティを追加
- ImageオブジェクトのgetPixel(), getPixelRGB(), getPixelInfoメソッド実装
- 無地の背景を表す定数GSJ.BLANK_MAPを追加
- Map.addControl(), removeControl()を追加
- 2014-10-27
- Layer.maxNativeZoomプロパティを追加
- 2014-10-28
- ImageオブジェクトのgetPixel(), getPixelRGB(), getPixelInfoメソッド実装
- 2014-10-29
- loadImagePixel, getPixel, getPixelRGBで画像範囲外はnullを返すように変更
- 2014-10-30
- 無地の背景を表す定数GSJ.BLANK_MAPを追加
- 2014-11-05
- Map.addControl(), removeControl()を追加
- 2014-12-01
- Map, Layer, Marker, Polyline, GeometryGroupにゲッターメソッドを追加
- 2014-12-09 バージョン 0.1.2 (安定板) リリース
- 2014-12-25 バージョン 0.1.3 (開発中最新版) 更新
- PNG標高タイルテストサービスのバージョン変更(0.6)に伴い,GSJ.getElevation()の動作を修正
- 2015-01-11
- LayerのConvertTile()メソッドで元の画像サイズを保持するようにleafletエンジンの実装を変更
- 2015-01-13
- 2015-01-14
- loadXML(), LoadText(), LoadCSV(), loadJson()関数にheader引数追加
- 2015-01-20
- 2015-01-24
- GSJ.promiseAll(), GSJ.promiseFinishing()で引数が空のリストの場合,成功するプロミスを返すように修正
- 2015-01-30
- 2015-01-31
- Layer.setUrl(), getUrl()を実装
- 2015-02-05
- Map.addPopup()のパラメータオブジェクト変更(autoPan等を追加)
- loadUrl(), loadBlob(), loadArrayBuffer(), loadPngZipの実装
- 2015-02-07
- 名前空間のデフォルトをGSJからGSJMapに変更
- Popup.autoPanを実装,Marker.setPopupの引数をPopupオブジェクトに変更
- 2015-02-10
- GSJ.getElevation()のパラメータオブジェクトにpngzipオプションを追加
- Popup.setOpen(), getOpen()を実装
- 2015-02-19
- Popup.setContent(), getContent()を実装
- 2015-02-26
- 2015-03-15
- 2015-03-16
- GSJ.promise.resolve(),GSJ.promise.reject()関数実装
担当 西岡芳晴 ( y-nishioka@aist.go.jp )
2015-03-23 更新