private void handleChildren(TreeObject parent, Point2D desiredLocationParent, double radius) {
TreeObject[] children = parent.getChildren();
double omtrek = radius * 2 * Math.PI;
double degrees = 0;
for (int t = 0; t < children.length; t++) {
final TreeObject current = children[t];
double diagonaal = (getRadiusNeededForNode(current) * 2);
double angle = (omtrek / (diagonaal * Math.PI));
degrees = degrees + Math.toDegrees(angle);
final Point2D desired = new Point2D.Double(desiredLocationParent.getX() + (radius * Math.sin(Math.toRadians(degrees))), desiredLocationParent.getY() + (radius * Math.cos(Math.toRadians(degrees))));
move(children[t], desired);