Version:

Last Modified: January 9, 2017

Interpolates points in a 1D array that represents a 2D non-descending graph. This node compares a threshold to the values in an array, starting at a specified index, until it finds a pair of consecutive elements such that the threshold is greater than the value of the first element and less than or equal to the value of the second element.

An array of numbers or an array of points where each point is a cluster of x- and y-coordinates.

If this input is an array of numbers, this node assumes the x-coordinates are the same as the indexes of the array itself.

If this input is an array of points, this node uses the second elements in the clusters, or the y-coordinates, to obtain a fractional index that it then uses to interpolate the corresponding x value.

The threshold value for the node. If **threshold y** is less than or equal to the array value at **start index**, the node returns **start index** for **fractional index or x**. If **threshold y** is greater than every value in the array, the node returns the index of the last value. If the array is empty, the node returns NaN.

The index to start interpolation.

**Default: **0—The node returns the result calculated from the entire array rather than a specified section of the array.

The interpolated result calculated for the **array of numbers or points** 1D input array.

If **array of numbers or points** is an array of points where each point is a cluster of x- and y-coordinates, **fractional index or x** is the interpolated x value corresponding to the interpolated position of **threshold y** among the y-coordinates, rather than the fractional index of the array. **fractional index or x** returns the interpolated x value associated with the given y value if you graphed the points.

array of numbers or points | start index | threshold y | fractional index or x | comments |
---|---|---|---|---|

[4, 5, 5, 6] | 0 | 5 | 1 | The output is 1, corresponding to the index of the first value of 5 the node finds. |

[2.3, 5.2, 7.8, 7.9, 10.0] | 0 | 6.5 | 1.5 | The output is 1.5 because 6.5 is halfway between 5.2 (index 1) and 7.8 (index 2). |

[0, 1, 2, 3, 4, 9.1, 10.3, 12.9, 15.5] | 5 | 14.2 | 7.5 | threshold y falls between elements 7 and 8 because 14.2 is midway between 12.9 and 15.5. Therefore, the output is7.5, halfway between 7 and 8. |

Array of points [(1,1), (2,2), (3,3), (4,4), (-2.5,5), (0,6) |
0 | 5.5 | -1.25 | The output is not an index value of 4.5 as it would be for a numeric array, but rather an x value of -1.25, which is the interpolated x value associated with the given y value if you graphed the points. |