WebGL

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

WebGLOverlayView クラス

google.maps.WebGLOverlayView クラス

WebGL オーバーレイ表示では、Google Maps Platform がベクター基本地図のレンダリングに使用しているものと同じ WebGL レンダリング コンテキストに直接アクセスできます。共有レンダリング コンテキストを使用すると、3D の建物のジオメトリによる深度オクルージョンや、2D/3D コンテンツと基本地図のレンダリングの同期などのメリットが得られます。

WebGL オーバーレイ表示を利用すると、WebGL を直接使用したり、Three.js や deck.gl などの一般的なグラフィック ライブラリを使用したりして、地図にコンテンツを追加できます。オーバーレイを使用するには、google.maps.WebGLOverlayView を拡張し、ライフサイクル フック WebGLOverlayView.onAddWebGLOverlayView.onContextRestoredWebGLOverlayView.onDrawWebGLOverlayView.onContextLostWebGLOverlayView.onRemove の実装を実装します。

onRemove() メソッドをトリガーするためには、有効な Map オブジェクトを使用して WebGLOverlayView.setMap を呼び出し、onAdd() メソッドを呼び出すことと、setMap(null) を呼び出す必要があります。setMap() メソッドは、作成時に、またはオーバーレイを削除後に再度表示する必要がある任意の時点で呼び出すことができます。要素の位置(ズーム、中心、地図タイプなど)を変更する可能性のある地図プロパティが変更されると、そのたびに onDraw() メソッドが呼び出されます。WebGLOverlayView は、MapOptions.mapId を持つベクター地図にのみ追加できます。

このクラスは MVCObject を拡張します。

WebGLOverlayView
WebGLOverlayView()
パラメータ: なし
WebGLOverlayView を作成します。
getMap
getMap()
パラメータ: なし
戻り値: Map|null|undefined
onAdd
onAdd()
パラメータ: なし
戻り値: なし
WebGL レンダリング コンテキストにすぐにアクセスする必要がないオーバーレイを描画する前に、このメソッドを実装し、中間データ構造を取得します。
onContextLost
onContextLost()
パラメータ: なし
戻り値: なし
このメソッドは、なんらかの理由でレンダリング コンテキストが失われたときに呼び出されます。不要になった既存の GL の状態はクリーンアップする必要があります。
onContextRestored
onContextRestored(options)
パラメータ:
  • options: デベロッパーが GL コンテキストを復元できるようにする WebGLStateOptions
戻り値: なし
このメソッドは、レンダリング コンテキストが利用可能になると呼び出されます。これを使用して、WebGL の状態(シェーダー、バッファ オブジェクトなど)を初期化、バインドします。
onDraw
onDraw(options)
パラメータ:
  • options: デベロッパーが関連付けられている Google 基本地図にコンテンツをレンダリングできるようにする WebGLDrawOptions
戻り値: なし
WebGL コンテンツを地図に直接描画する場合は、このメソッドを実装します。オーバーレイに新しいフレームを描画する必要がある場合は、WebGLOverlayView.requestRedraw を呼び出します。
onRemove
onRemove()
パラメータ: なし
戻り値: なし
このメソッドは、WebGLOverlayView.setMap(null) でオーバーレイが地図から削除されたときに呼び出されます。中間オブジェクトはすべて削除する必要があります。
onStateUpdate
onStateUpdate(options)
パラメータ:
  • options:  デベロッパーが GL コンテキストを復元できるようにする WebGLStateOptions
戻り値: なし
このメソッドを実装して、レンダリング アニメーション フレームの外部での GL 状態の更新を処理します。
requestRedraw
requestRedraw()
パラメータ: なし
戻り値: なし
地図を再トリガーしてフレームを再描画します。
requestStateUpdate
requestStateUpdate()
パラメータ: なし
戻り値: なし
GL の状態を更新する地図をトリガーします。
setMap
setMap([map])
パラメータ:
  • map: Map optional div、model、view の状態にアクセスするための地図。
戻り値: なし
地図にオーバーレイを追加します。
継承: addListenerbindTogetnotifysetsetValuesunbindunbindAll

WebGLDrawOptions インターフェース

google.maps.WebGLDrawOptions インターフェース

描画オプション

gl
この WebGLOverlayView をレンダリングする WebGLRenderingContext。
transformer
カメラ空間から緯度/経度座標への行列変換。

WebGLStateOptions インターフェース

google.maps.WebGLStateOptions インターフェース

GL の状態オプション。

gl
この WebGLOverlayView をレンダリングする WebGLRenderingContext。

CoordinateTransformer インターフェース

google.maps.CoordinateTransformer インターフェース

このインターフェースは、Google 基本地図上に WebGL シーンをレンダリングするためのマトリックスを生成するための便利なメソッドを提供します。

注: このオブジェクトへの参照は、カプセル化された WebGLOverlayView.onDraw 呼び出しの範囲外に保持しないでください。

fromLatLngAltitude
fromLatLngAltitude(latLngAltitude[, rotations, scale])
パラメータ:
戻り値: Float64Array WebGL で使用する MVP マトリックス。
getCameraParams
getCameraParams()
パラメータ: なし
戻り値: CameraParams カメラ パラメータ

CameraParams インターフェース

google.maps.CameraParams インターフェース

カメラ パラメータを取得するために使用されます。たとえば、WebGLOverlayView に使用される GL カメラのパラメータなどです。

このインターフェースは CameraOptions を拡張します。

center
タイプ: LatLng
heading
タイプ: number
tilt
タイプ: number
zoom
タイプ: number