@Override protected void paintClipped (Surface surf) { // save our current transform and restore it before painting each child paintTx.set(surf.tx()); // iterate manually to avoid creating an Iterator as garbage, this is inner-loop territory List<Layer> children = this.children; Layer.paintNestLevel += 1; for (int ii = 0, ll = children.size(); ii < ll; ii++) { surf.tx().set(paintTx); children.get(ii).paint(surf); } Layer.paintNestLevel -= 1; }