@Override public void update() { // NB - this combinedinterval.update() call rebuilds the interval. We have // found cases where this is necessary to avoid situations where the we try // to access a no longer existing axis. As an example of this try running // legacy command Type > 8-bit Color on Clowns. Without this line, when you // run the command, an exception is thrown. // TODO - is this a performance issue? combinedInterval.update(); for (final DataView view : this) { for (int i = 0; i < numDimensions(); i++) { AxisType axis = axis(i).type(); if (axis.isXY()) continue; final int axisNum = view.getData().dimensionIndex(axis); if (axisNum < 0) continue; final long p = getLongPosition(axis); Data data = view.getData(); double size = data.realMax(axisNum) - data.realMin(axisNum) + 1; if (p < size) { view.setPosition(p, axis); } } view.update(); } super.update(); }