您的位置:首页 > 其它

矩形内线性插值

2016-07-19 10:34 246 查看
我们已经知道, 线段上的线性插值:

v = a*(1.0-w) + b*w;

即: 点的权重等于对边线的长度.

对矩形的两个边的方向分别应用线段的线性插值, 就得到矩形内点的线性插值.

v = a*(1.0-w)*(1.0-h) + b*w*(1.0-h) + c*(1.0-w)*h + d*w*h

   = a*s4 + b*s3 + c*s2 + d*s1

即:  点的权重等于对面小矩形的面积.

javascript代码:

var a = 1, b=2, c=3, d=4;
var w = 0.25, h=0.75;

function rectangle_interpolation(a,b,c,d,w,h){
var s1 = w*h, s2=(1.0-w)*h, s3=w*(1.0-h), s4=(1.0-w)*(1.0-h);
return a*s4 + b*s3 + c*s2 + d*s1;
}

var v = rectangle_interpolation(a,b,c,d,w,h);
console.log("val=", v);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  矩形 内点 线性插值