(int slot, int start, int end, List<Node> target)
| 1291 | int dim; |
| 1292 | if (a == null) dim = b.length; |
| 1293 | else if (b == null) dim = a.length; |
| 1294 | else dim = Math.min(b.length, a.length); |
| 1295 | |
| 1296 | for (int i = start; i < end + 1; i++) { |
| 1297 | float alpha = (i - start) / ((float) end - start); |
| 1298 | if (Float.isNaN(alpha)) alpha = 0; |
| 1299 | float[] val = interpolate(alpha, a, b, dim); |
| 1300 | target.get(i).flatAuxData[slot] = val; |
| 1301 | } |
| 1302 | } |
| 1303 | |
| 1304 | private float[] interpolate(float alpha, float[] a, float[] b, int dim) { |
| 1305 | if (a == null) return b; |
| 1306 | if (b == null) return a; |
| 1307 | float[] r = new float[dim]; |
| 1308 | for (int i = 0; i < r.length; i++) |
| 1309 | r[i] = a[i] * (1 - alpha) + b[i] * alpha; |
| 1310 | return r; |
| 1311 | } |
| 1312 |
no test coverage detected