Tuple2D dataPt = tupleItr.next();
renderState.setFocused(focusSeries == datasetIndex && focusDomainX == dataPt.getDomain());
if (calcRangeAsPercent) {
LocalTuple tmpTuple = new LocalTuple();
Interval rangeExtrema = dds.currMipMap.getRangeExtrema(pass);
double pctY = rangeExtrema.getPercentChange(refY, dataPt.getRange0());
tmpTuple.setXY(dataPt.getDomain(), pctY);
dataPt = tmpTuple;
}
// FIXME: refactor to remove cast
renderer.drawCurvePart(datasetIndex, i, layer, (T) dataPt, methodCallCount++, renderState);
} else {
break;
}
}
renderer.endCurve(layer, renderState);
if (!overviewMode) {
// Render the focus points on the curve
renderer.beginPoints(layer, renderState);
//startIdx = Math.max(0, domainStartIdx - 2);
tupleItr = currMipMap.getTupleIterator(domainStartIdx);
for (int i = domainStartIdx; i <= domainEndIdx; i++) {
Tuple2D dataPt = tupleItr.next();
renderState.setFocused(focusSeries == datasetIndex && focusPoint == i && focusDomainX == dataPt.getDomain() && renderState.getPassNumber() == pass);
if (calcRangeAsPercent) {
LocalTuple tmpTuple = new LocalTuple();
Interval rangeExtrema = dds.currMipMap.getRangeExtrema(pass);
double pctY = rangeExtrema.getPercentChange(refY, dataPt.getRange0());
tmpTuple.setXY(dataPt.getDomain(), pctY);
dataPt = tmpTuple;
}
// FIXME: refactor to remove cast
renderer.drawPoint(datasetIndex, i, layer, (T) dataPt, renderState);