// perform second walk to compute polygon layout
Table t = (Table)m_vis.getGroup(m_group);
Iterator iter = t.tuplesReversed();
while ( iter.hasNext() ) {
VisualItem item = (VisualItem)iter.next();
if ( !item.isVisible() ) continue;
float height = 0;
for ( int i=len; --i >= 0; ) {
poly[2*(len-1-i)+xbias] = min + i*inc;
poly[2*(len-1-i)+ybias] = (float)baseline[i];
}
for ( int i=0; i<columns.length; ++i ) {
int base = 2*(len+i);
double value = item.getDouble(columns[i]);
baseline[i] += mult * hgt *
MathLib.linearInterp(value,0,peaks[i]);
poly[base+xbias] = min + i*inc;
poly[base+ybias] = (float)baseline[i];
height = Math.max(height,
Math.abs(poly[2*(len-1-i)+ybias]-poly[base+ybias]));
}
if ( height < m_threshold ) {
item.setVisible(false);
}
setX(item, null, 0);
setY(item, null, 0);
setPolygon(item, poly);