コンテンツにスキップ
JP

プラグインAPIとは?

更新日

プラグインAPIは、プラグインが Re:Earth Visualizer と通信するための仕組みです。Visualizer のソースコードへアクセスしなくても、データの読み取り、ユーザー操作への応答、地図上の表示制御、独自 UI の管理などを行えます。

API 全体は、reearth という 1 つのグローバルオブジェクトを通じて利用できます。プラグインに必要なすべての機能は、このオブジェクトからアクセスします。たとえば、カメラの操作には reearth.camera、レイヤの操作には reearth.layers を使用します。

API は、プラグインが行うことを基準に構成されています。プラグインはユーザーにインターフェースを提供し、地図、レイヤ、データから成るシーンを操作します。API の各要素には次の役割があります。

  • プラグイン自身(reearth.extension: 設定されたプロパティ、UI とのメッセージ通信、ライフサイクルイベントなど、プラグイン自身のコンテキストを扱います。
  • プラグインのインターフェース(reearth.uireearth.modalreearth.popup: メイン UI パネル、ダイアログ、小さなアンカーウィンドウなど、ユーザーが見て操作する要素を扱います。
  • シーン(reearth.viewerreearth.camerareearth.timeline: ビューアの環境と設定、視点、時間に基づく再生など、ユーザーが見ている空間を扱います。
  • コンテンツ(reearth.layersreearth.data: 地図レイヤやクライアント側のデータストレージなど、地図に表示するデータとプラグインが保持するデータを扱います。
  • 描画・位置ツール(reearth.sketchreearth.spatialId: 地図上への図形の描画や、空間 ID による位置参照を扱います。
  • システム情報(reearth.versionreearth.apiVersionreearth.engine: Visualizer のバージョンやレンダリングエンジンなど、プラグインが動作する環境の基本情報を提供します。

これらの要素は、どのプラグインでも連携して動作します。イベントも同じ構成に含まれます。reearth.viewer はマウスイベント、reearth.timelinetickreearth.extension はメッセージを発行します。イベントを監視するときは、そのイベントに対応するオブジェクトへリスナーを登録します。

たとえば、保存した場所へ移動するプラグインでは、reearth.extension から設定を読み取り、reearth.ui でクリック可能な一覧を表示し、場所が選択されたときに reearth.camera で視点を移動します。

利用できるすべてのプロパティとメソッドについては、API リファレンスを参照してください。