tiffData = {
let tiff = await GeoTIFF.fromUrl("https://cors-anywhere.herokuapp.com/https://gist.githubusercontent.com/rveciana/206956c3e142040432c477d75b038749/raw/9b0c929e93b294274513d1bce73374ffba251bb9/wrf.tiff");
let image = await tiff.getImage();
let tiepoint = image.getOrigin();
let pixelScale = image.getFileDirectory().ModelPixelScale;
let geoTransform = [tiepoint[0], pixelScale[0], 0, tiepoint[1], 0, -1*pixelScale[1]];
let invGeoTransform = [-geoTransform[0]/geoTransform[1], 1/geoTransform[1],0,-geoTransform[3]/geoTransform[5],0,1/geoTransform[5]];
let rasters = await image.readRasters();
let uData = new Array(image.getHeight());
let vData = new Array(image.getHeight());
let spdData = new Array(image.getHeight());
for (var j = 0; j<image.getHeight(); j++){
uData[j] = new Array(image.getWidth());
vData[j] = new Array(image.getWidth());
spdData[j] = new Array(image.getWidth());
for (var i = 0; i<image.getWidth(); i++){
uData[j][i] = rasters[0][i + j*image.getWidth()];
vData[j][i] = rasters[1][i + j*image.getWidth()];
spdData[j][i] = 1.943844492 * Math.sqrt(uData[j][i]*uData[j][i] + vData[j][i]*vData[j][i]);
}
}
return {"dataU": uData, "dataV": vData, "dataSPD": spdData, "geoTransform": geoTransform, "invGeoTransform": invGeoTransform, "xSize": image.getWidth(), "ySize": image.getHeight()};
}