Global

Methods

(async) getImage(params) → {Image}

パラメータに指定した条件で、Imageインスタンスを容易に取得するためのメソッドです。
Parameters:
Name Type Description
params Object Imageインスタンスを取得するための条件です。
Properties
Name Type Attributes Default Description
collection string データセットのcollection.jsonのURLです。
band string <optional>
collection.jsonの中で定義されているデータセットが持つバンド名です。省略した場合はデータセット内で一つ目に定義されているバンドを自動で設定します。
date Date <optional>
new Date() Imageインスタンスはこの日時に応じて取得されます。指定した日時にデータが存在しない場合は、それよりも前のデータが存在する日時に自動的に置き換えられます。省略した場合は現在時刻が設定されることで、データセット内に存在する一番最後のデータが取得されます。
bbox BboxObject <optional>
[-180,-90,180,90] 緯度経度範囲を表すBboxObjectです。
width number <optional>
1000 幅を指定します。単位はピクセルです。
height number <optional>
500 高さを指定します。単位はピクセルです。
colorMap ColorMapObject <optional>
可視化に使用するカラーマップです。省略した場合は、最小値~最大値までを黒~白で可視化します。
bilinearResampling boolean <optional>
false trueの場合は高精度なバイリニアリサンプリングを使用します。取得した地形データから傾斜を求めるような微分の計算を行なう場合には必要です。falseの場合には高速なニアレストネイバーを使用します。
onloading getImage-onloading <optional>
function(){} データを取得している最中に実行されるコールバック関数です。COGファイルのタイル単位でデータが読み込まれるたびに実行されます。
See:
Returns:
Imageインスタンスを返します。
Type
Image
Example
import * as je from "./jaxa.earth.esm.js";
const image = await je.getImage({
	collection: "https://s3.ap-northeast-1.wasabisys.com/je-pds/cog/v1/JAXA.EORC_ALOS.PRISM_AW3D30.v3.2_global/collection.json",
	band: "DSM",
	bbox: [-180,-90,180,90],
	width: 1000,
	height: 500,
	colorMap: {
		min: 0,
		max: 6000,
		colors: "jet"
	}
});
document.body.appendChild(image.getCanvas());

(async) getTimeSeriesImage(params) → {Array.<Image>}

パラメータに指定した条件で、params.start <= date < params.endの範囲のdateを持つImageインスタンスを全て取得します。 プロミスの並行処理(Promise.all())を用いて複数のデータを高速に取得します。
Parameters:
Name Type Description
params Object Imageインスタンスを取得するための条件です。
Properties
Name Type Attributes Default Description
collection string データセットのcollection.jsonのURLです。
band string <optional>
collection.jsonの中で定義されているデータセットが持つバンド名です。省略した場合はデータセット内で一つ目に定義されているバンドを自動で設定します。
start Date この日時以降のImageインスタンスが取得されます。
end Date この日時未満(この日時は含まない)のImageインスタンスが取得されます。
bbox BboxObject <optional>
[-180,-90,180,90] 緯度経度範囲を表すBboxObjectです。
width number <optional>
200 幅を指定します。単位はピクセルです。
height number <optional>
200 高さを指定します。単位はピクセルです。
colorMap ColorMapObject <optional>
可視化に使用するカラーマップです。省略した場合は、画像ごとに最小値~最大値までを黒~白で可視化します(省略すると画像ごとにカラーマップが異なることになるためご注意ください)。
bilinearResampling boolean <optional>
false trueの場合は高精度なバイリニアリサンプリングを使用します。取得した地形データから傾斜を求めるような微分の計算を行なう場合には必要です。falseの場合には高速なニアレストネイバーを使用します。
onloading getTimeSeriesImage-onloading <optional>
function(){} データを取得している最中に実行されるコールバック関数です。時刻の単位でデータが読み込まれるたびに実行されます。
See:
Returns:
時系列のImageインスタンスを配列で返します。
Type
Array.<Image>

Type Definitions

BboxObject

Image#setBbox等で設定するための、緯度経度範囲を表す数値配列です。 数値配列は、等緯度経度(EPSG:4326)の場合にはWGS84における緯度[deg]と経度[deg]を用いて、[西の経度, 南の緯度, 東の経度, 北の緯度] のように反時計回りで指定します。

北極(EPSG:3995)の場合は、北極点を原点、経度180度の線に沿って+Y方向、経度0度の線に沿って-Y方向として、距離[m]を用いて[-X, -Y, X, Y]のように反時計回りで指定します。

南極(EPSG:3031)の場合には、南極点を原点、経度0度の線に沿って+Y方向、経度180度の線に沿って-Y方向として、距離[m]を用いて[-X, -Y, X, Y]のように反時計回りで指定します。
Type:
  • Array.<number>
Example
//全球を指定する場合
const bbox = [-180, -90, 180, 90];

//日本周辺を指定する場合
const bbox = [120, 15, 160, 55];

//特定の緯度経度の点から半径dl[deg]の範囲を指定する場合
const lng = 138.73;
const lat = 35.36;
const dl = 0.2;
const bbox = [lng - dl, lat - dl, lng + dl, lat + dl];

//北極(EPSG:3995)または南極(EPSG:3031)の場合
const bbox = [-8388608, -8388608, 8388608, 8388608];

ColorMapObject

Image#setColorMapgetImage等で設定するための、データを可視化する際に使用するカラーマップの設定条件です。
Type:
  • Object
Properties:
Name Type Attributes Default Description
min number 色を塗る範囲の最小値です。
max number 色を塗る範囲の最大値です。
colors string | Array.<string> <optional>
"gray" 予め定義されているカラーマップの名称です。"gray"(黒~白)、"jet"(青~水色~緑~黄色~赤)、"ndvi"(茶~緑)、"smc"(赤~白~青)、"ic"(紺~白)を利用できます。またはカラーマップの色を示す色コードの配列でも指定できます(例:["ff0000","00ff00","0000ff"])。
deleteMin boolean <optional>
false trueの場合は最小値以下を透明にします。未指定またはfalseの場合は、最小値以下も最小値の色で塗ります。
deleteMax boolean <optional>
false trueの場合は最大値以上を透明にします。未指定またはfalseの場合は、最大値以上も最大値の色で塗ります。
log10 boolean <optional>
false trueの場合は対数目盛にします。対数目盛にする場合はmin=0としないように注意する必要があります。未指定またはfalseの場合は等間隔目盛にします。
nanColor string <optional>
"00000000" NaNに塗る色の色コードを指定します。"RRGGBB"または"RRGGBBAA"の形式で入力します。未指定時はNaNのピクセルは透明"00000000"になります。
See:
Example
//0~6000を青~水色~緑~黄色~赤の虹色、データが無い部分(NaN)を半透明の赤で塗る
const colorMap = {
	min: 0,
	max: 6000,
	colors: "jet",
	nanColor: "ff0000cc"
};

//0.1~100を対数目盛にして黒~白で塗る。ただし、0.1以下は透明にする。
const colorMap = {
	min: 0.1,
	max: 100,
	colors: "gray",
	deleteMin: true,
	log10: false
};

DataObject

Image#getData等により取得できる、取得したデータを扱いやすいように格納したオブジェクトです。下記以外の内部処理用のプロパティも含みます。
Type:
  • Object
Properties:
Name Type Attributes Description
width number 画像の幅(ピクセル)です。
height number 画像の高さ(ピクセル)です。
data Float32Array 各ピクセルの値を画像の左上→右上、上→下へと順に格納した1次元配列(Float32Array)です。配列の要素数はwidth * height個です。ピクセル(i, j)のデータは、1次元配列の(i + j * width)番目に格納されています。観測の範囲外などで値が無いピクセルにはNaNが格納されています。
bbox BboxObject 緯度経度範囲を表すBboxObjectです。
unit string <optional>
Float32Arrayに格納されている値の単位です。
min number <optional>
取得した全ピクセルのうち、一番小さな値を持つピクセルの値です。
max number <optional>
取得した全ピクセルのうち、一番大きな値を持つピクセルの値です。
validPixels number <optional>
Float32Arrayに格納されているwidth * height個の値のうち、NaNではないピクセルの個数です。
See:

getImage-onloading(src, progress)

getImageにおいて、データを取得している最中に実行されるコールバック関数です。COG (Cloud Optimized GeoTIFF)におけるタイルの単位でデータが読み込まれるたびに実行されます。
Parameters:
Name Type Description
src src 読み込みが完了しているタイルのみを可視化した画像のDataURLです。
progress number 0~100%の数値で表した進捗率です。

getTimeSeriesImage-onloading(image, progress)

getTimeSeriesImageにおいて、データを取得している最中に実行されるコールバック関数です。Imageインスタンスの単位でデータが読み込まれるたびに実行されます。
Parameters:
Name Type Description
image Image 読み込みが完了したImageインスタンスです。
progress number 0~100%の数値で表した進捗率です。