资讯

展开

GIS开发:简单的数据差值

作者:快盘下载 人气:

>在GIS的网格化数据开发中,数据按照一定的间隔进行分布,在网格点上的数据,这是很容易获得的,如果要获取不在网格点的数据值,这就需要根据此点所在位置周围点的数据,进行差值计算。

>在使用气象数据中,根据某个点周边四个点,可以做一个简单的双线性差值。

>根据GIS数据中的横坐标和纵坐标,计算提供点的所在网格横向和纵向的顺序,即所在的格子中,从而获取到四个角点的具体数值。

>一个简单的示例图(来自于网络),通过每个网格中的差值,计算最大最小行列号:

GIS开发:简单的数据差值

>

>计算所求点和四个焦点之间的距离百分比,再通过简单的乘法和加法,计算出所求点的数据值。

>一段简单的JavaScript示例代码:

>x、y分别为在横轴和纵轴方向所占的百分比,gXX为周围四个点的具体数据值。

function bilinearInterpolate(x, y, g00, g10, g01, g11) {

var rx = (1 - x);

var ry = (1 - y);

return g00 * rx * ry + g10 * x * ry + g01 * rx * y + g11 * x * y;

}


>注:网格化的数据大多用于存储气象类型数据,常见的数据格式有netcdf,grib。

>

加载全部内容

相关教程
猜你喜欢
用户评论
快盘暂不提供评论功能!