for (int i = 0, k = w * y; i < pixelCount; i += colCount, k += w) { for (int j = 0, l = x; j < colCount; j++, l++) { env.setElemIndex(i + j); productData.setElemUIntAt(k + l, term.evalB(env) ? TRUE : FALSE); for (int i = 0, k = w * y; i < pixelCount; i += colCount, k += w) { for (int j = 0, l = x; j < colCount; j++, l++) { env.setElemIndex(i + j); final double v = term.evalD(env); if (Double.isNaN(v) || Double.isInfinite(v)) { for (int i = 0, k = w * y; i < pixelCount; i += colCount, k += w) { for (int j = 0, l = x; j < colCount; j++, l++) { env.setElemIndex(i + j); productData.setElemDoubleAt(k + l, term.evalD(env));
env.setElemIndex(x); body.eval(env, pixelIndex); pixelIndex++;
env.setElemIndex(pixelIndex); final double v = term.evalD(env); if (Double.isNaN(v) || Double.isInfinite(v)) {
public void testXY() { final RasterDataEvalEnv env = new RasterDataEvalEnv(50, 20, 200, 100); assertEquals(0, env.getElemIndex()); assertEquals(50, env.getPixelX()); assertEquals(20, env.getPixelY()); env.setElemIndex(1); assertEquals(1, env.getElemIndex()); assertEquals(50 + 1, env.getPixelX()); assertEquals(20, env.getPixelY()); env.setElemIndex(200 + 2); assertEquals(200 + 2, env.getElemIndex()); assertEquals(50 + 2, env.getPixelX()); assertEquals(20 + 1, env.getPixelY()); env.setElemIndex(70 * 200 + 110); assertEquals(70 * 200 + 110, env.getElemIndex()); assertEquals(50 + 110, env.getPixelX()); assertEquals(20 + 70, env.getPixelY()); } }