Abstract
要求 ID の型
この型パラメータは、requestTile の戻り値と cancelRequest の パラメータの型が一致した定義になるようにするための便宜的なものである。
ID
がどのような型であっても DemProvider<ID>
のインスタンスは、
DemProvider = DemProvider<unknown>
型の変数
(Viewer.Option.dem_provider) を通してフレームワークに渡される。
一般的にこのような場合、cancelRequest の id
パラメータ は
unknown
型または unknown
のスーパークラス (存在しない) でなけれ
ば置換可能性が満たさず危険性を伴うが、フレームワークは必ず this
の requestTile が返したオブジェクトを this
の cancelRequest
に与えることを保証しているので問題は起きない。
なお、TypeScript では --strictFunctionTypes
を指定していても、
DemProvider<unknown>
型の変数に DemProvider<ID>
型のインスタンスを
代入することが許されるのでコンパイルエラーは起きない。
詳細は TypeScript 2.6 の Strict function types を参照のこと。
Abstract
cancelAbstract
requestDEM タイルデータを要求
座標が (z, x, y) の DEM タイルデータを要求する。
指定したタイルデータの取得が成功または失敗したときに callback
が非同期に呼び出されなければならない。
だたし cancelRequest により要求が取り消されたとき、callback
は呼び出しても呼び出さなくてもよい。
また非同期呼び出しである必要もない。callback
によって得たデータに値を上書きしてはならない。
要求 ID (DemProvider.cancelRequest cancelRequest() に与えるオブジェクト)
ズームレベル
X タイル座標
Y タイル座標
要求コールバック関数
DEM データプロバイダ
レンダラーに DEM データを与えるための抽象クラスである。
以下の抽象メソッドは既定の動作がないので、利用者はこれらのメソッド をオーバライドした具象クラスを使用しなければならない。
DemProvider.getResolutionPower getResolutionPower() の既定の実 装は 8 を返す。DEM タイルの解像度が 256 以外のときはこのメソッドを オーバーロードする必要がある。
See
StandardDemProvider, Viewer.constructor