8

Suppose we have five vertices:

X = [0 1;
     2 1;
     4 1;
     1 0;
     3 0];

a triangulation:

T = [1 4 2;
     4 5 2;
     5 3 2];

and function values defined on the vertices:

Fx = [1;
      2;
      3;
      4;
     -5];

then we can easily compute the function value for any point inside the triangle by using the barycentric coordinates. For point P = [1 .5], which lies in the first triangle, the barycentric coordinates are B = [.25 .5 .25], so the function evaluates to Fxi = 1/4 + 4/2 + 2/4 = 2.75.

However, I have difficulty to see how one would extrapolate this surface. We could find the closest triangle and extrapolate from that. The problem is that this results in a discontinuous function. Consider e.g. point P = [2 2]. According to triangle 1, its value would be -0.5, whereas according to triangle 3 its value would be 9.5.

Is there a "standard" or generally accepted approach to extrapolate from piecewise linear functions? Any pointers to existing material also greatly appreciated.

4

2 回答 2

1

一种可能性是 Shepard 的方法:

https://en.wikipedia.org/wiki/Inverse_distance_weighting

结果函数对在顶点定义的输入值进行插值,并且是非线性的,但在其他任何地方都是连续的。

选择 p=2 通常会给出不错的结果。

于 2016-08-23T00:27:51.857 回答
0

另一种要寻找的技术是“非凸多边形的重心坐标”。

以下出版物显示(第 8 页等)权重函数在多边形外的行为

https://www.in.tu-clausthal.de/fileadmin/homes/techreports/ifi0505hormann.pdf

但是,即使这个解决方案在您给定的三角剖分上也不是分段线性的。

于 2016-09-02T07:16:16.577 回答