@Override public void computeTile(Band band, Tile targetTile, ProgressMonitor pm) throws OperatorException { recordCall(getOpName(this), "Operator.computeBand"); Tile sourceTile1 = getSourceTile(sourceProduct1.getBandAt(0), targetTile.getRectangle()); Tile sourceTile2 = getSourceTile(sourceProduct2.getBandAt(0), targetTile.getRectangle()); float[] source1Elems = (float[]) sourceTile1.getRawSamples().getElems(); float[] source2Elems = (float[]) sourceTile2.getRawSamples().getElems(); ProductData rawSampleData = targetTile.getRawSamples(); float[] targetElems = (float[]) rawSampleData.getElems(); for (int i = 0; i < targetElems.length; i++) { targetElems[i] = 0.1f * (source1Elems[i] + source2Elems[i]); } rawSampleData.setElems(targetElems); targetTile.setRawSamples(rawSampleData); } }