S JavaFX som nerobil, ale tak vo všeobecnosti potrebuješ zistiť, či sa určená oblasť pretína s oblasťou daného prvku.
Zo zbežného googlenia, oblasť daného prvku získaš pomocou volania node.localToScene(node.getBoundsInLocal()) alebo node.localToScreen(node.getBoundsInLocal()). Či sa oblasti pretínajú zistíš volaním metódy bounds.intersects(otherBounds). Obidve oblasti musia byť samozrejme v rovnakom súradnicovom systéme.
Takže asi takto:
final BoundingBox boundingBox = new BoundingBox(100, 100, 200, 200);
final List<Node> list = root.getChildren().stream()
.filter(node -> boundingBox.intersects(node.localToScene(node.getBoundsInLocal())))
.collect(Collectors.toList());
Netestované, s JavaFX som nerobil, ale skúsil by som to takto.