if ((f != null) && f.getBounds2D().intersects(aoi)) {
srcs.add(f);
}
}
GraphicsNodeRableFactory gnrf;
gnrf = rc.getGraphicsNodeRableFactory();
if (child != null) {
CompositeGraphicsNode cgn = (CompositeGraphicsNode)gn;
List children = cgn.getChildren();
Iterator i = children.iterator();
while (i.hasNext()) {
GraphicsNode childGN = (GraphicsNode)i.next();
// System.out.println("Parent: " + cgn +
// "\n Child: " + child +
// "\n ChildGN: " + childGN);
if (childGN == child)
break;
Rectangle2D cbounds = childGN.getBounds(rc);
// System.out.println("Child : " + childGN);
// System.out.println("Bounds: " + cbounds);
// System.out.println(" : " + aoi);
AffineTransform at = childGN.getTransform();
if (at != null)
cbounds = at.createTransformedShape(cbounds).getBounds2D();
if (aoi.intersects(cbounds)) {
GraphicsNodeRable gnr;
gnr = gnrf.createGraphicsNodeRable(childGN, rc);
gnr.setUsePrimitivePaint(false);
srcs.add(gnr);
}
}
}