9

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.

Paul
  • 766
  • 9
  • 28

2 Answers2

1

A possibility is Shepard's method:

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

The resulting function interpolates the input values defined at the vertices and is non-linear but continuous everywhere else.

The choice p=2 usually gives decent results.

datahaki
  • 600
  • 7
  • 23
  • This method does not extrapolate a piecewise linear function, but instead produces a function of its own that is not limited to the convex hull. The second fig in the linked Wikipedia article shows how the interpolation is very different from what we expect from a piecewise linear function. However, because this answer does provide a pointer to existing material, and in absence of any other answer, I am going to award it the bounty. It did indeed help me discover more information on this topic. – Paul Aug 30 '16 at 09:23
  • @Paul: you are right. I only noticed the weakness/shortcoming of my answer after posting it. You were looking for a method that preserves the linear interpolation function within the triangulation and that is continuous/smooth beyond, i.e. outside the triangulation. After posting my answer, I continued to look for an existing method at Kai Hormann 's website at USI, or Scott Schaefer Texas AM, and Joe Warren at Rice. But found nothing available. I think you need to 'invent' it by yourself by blending the piecewise linear function that are 'closest'. Thanks for the generous rating. – datahaki Sep 01 '16 at 14:07
0

Another technique to look for are "Barycentric coordinates for non-convex polygons".

The following publication shows (page 8 etc.) how the weight functions behave outside the polygons

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

However, even this solution does not behave piecewise-linear on your given triangulation.

datahaki
  • 600
  • 7
  • 23